本发明属于公共安全视频监控联网安全领域,特别涉及一种公共安全视频监控联网摄像头接入认证方法。
背景技术:
随着经济的快速发展,视频图像信息大规模的联网共享应用,带来便利的同时也使得其信息安全和网络安全面临着严峻考验。摄像头的入侵、劫持、非法控制、恶意访问、数据泄露等安全问题已不止停留在纸面阶段,视频监控领域安全事件报道也日渐增多,视频监控系统的安全状况令人担忧。
由于公共安全视频监控系统全面覆盖了治安保卫重点单位和重点目标,其采集和传输的视频监控图像信息涉及到公共安全的敏感信息。一直以来,视频监控系统的接入,调用等安全措施基于简单口令模式,在前端设备接入、视频传输、用户访问等环节没有采取视频内容可信度鉴别以及敏感内容保护等有效安全措施,急需制定相应的安全标准来防范和减小系统性安全风险,保护视频监控信息的安全使用。
摄像头按照安全能力由低至高分为a级,b级,c级三个等级,对应分别解决弱口令,视频源认证,视频流窃听问题。然而现阶段所使用的摄像头与服务器之间的身份认证方案中仍存在部分安全问题。
技术实现要素:
本发明的目的在于解决现有身份认证技术的缺点与不足,本发明所要解决的技术问题是提供摄像头终端设备及认证服务器身份认证方案中存在的安全问题,该方法可有效降低摄像头终端设备和认证服务器身份认证方案中存在的风险。
实现本发明目的的具体技术方案是:
一种公共安全视频监控联网摄像头接入认证方法,该方法包括如下步骤:
步骤s1,摄像头终端设备向认证服务器发送register请求,携带自身安全能力、摄像头终端设备数字证书和deviceid;
步骤s2,认证服务器检查摄像头终端设备数字证书是否有效,如果有效则生成随机数r1,向摄像头终端设备返回401unauthorized,并携带认证服务器数字证书、随机数r1、认证服务器设备号serverid和认证服务器选择的密码学算法algorithm1;
步骤s3,摄像头终端设备检查认证服务器数字证书有效性,如果有效则生成随机数r2,并对{r2||r1||serverid}使用认证服务器选择的数字签名算法计算数字签名sign1;再次发送register请求,携带随机数r2、r1、认证服务器设备号serverid及数字签名sign1;
步骤s4,认证服务器端验证随机数r1时效性,验证数字签名sign1有效性,如果均有效,则使用摄像头终端设备公钥对视频密钥加密密钥vkek加密得到cryptkey,并对{r1||r2||deviceid||cryptkey}使用认证服务器选择的数字签名算法计算数字签名sign2,认证服务器向摄像头终端设备返回信息200ok、随机数r1、随机数r2、摄像头终端设备deviceid、数字签名sign2和cryptkey;
步骤s5,摄像头终端设备验证随机数r2时效性,摄像头终端设备使用认证服务器公钥验证数字签名sign2有效性;如果均有效,则双向认证成功。
本发明的所述步骤s1具体包括:摄像头终端设备包括但不限于公共安防联网摄像头;所述自身安全能力是指摄像头终端设备支持使用的密码学算法列表,包括但不限于杂凑算法、对称加密算法、非对称加密算法、hash算法及数字签名算法;所述认证服务器包括但不限于能够对终端进行身份认证的信令服务器;所述摄像头终端设备向认证服务器发送使用协议包括但不限于sip、tcp、ip、ethernet协议;所述摄像头终端设备号deviceid是指唯一标示摄像头终端设备的出厂设定的数字标示;所叙摄像头终端设备数字证书包括数字签名和摄像头终端设备公钥。
本发明的所述步骤s1中register请求包括但不限于摄像头终端设备携带摄像头终端设备自身安全能力列表、摄像头终端设备数字证书和摄像头终端设备号deviceid。
本发明的所述步骤s2具体包括:认证服务器设备号serverid是指唯一标示认证服务器设备的出厂设定的数字标示;所述随机数r1生成方法包括但不限于硬件随机选择和软件随机选择;认证服务器选择的密码学算法algorithm1是从摄像头终端自身安全能力的列表中随机一种;所叙认证服务器数字证书包括数字签名和认证服务器公钥。
本发明的所述步骤s2中认证服务器向摄像头发送信息包括但不限于返回401unauthorized、认证服务器数字证书、随机数r1、认证服务器号serverid和数字签名算法algorithm1。
本发明的所述步骤s3具体包括:摄像头终端设备使用认证服务器选择的数字签名算法algorithm1对{r2||r1||serverid}计算数字签名得到sign1;
本发明的所述步骤s3中摄像头终端设备向认证服务器发送register请求信息包括但不限于随机数r2、随机数r1、摄像头终端设备号deviceid、数字签名sign1和数字签名算法algorithm1。
本发明的所述步骤s4具体包括:视频密钥加密密钥vkek是认证服务器跟摄像头终端设备进行视频流传输使用的密钥;认证服务器使用摄像头终端设备的数字证书公钥加密vkek得到cryptkey。
本发明的所述步骤s4中认证服务器使用数字签名算法algorithm1对{r1||r2||deviceid||cryptkey}计算数字签名sign2;认证服务器向摄像头终端设备返回信息包括但不限于200ok、随机数r1、随机数r2、摄像头终端设备deviceid、数字签名sign2和cryptkey。
本发明的所述步骤s5具体包括:摄像头终端设备使用认证服务器公钥验证数字签名sign2有效性。
本发明的有效益效果:
提高了摄像头终端设备及认证服务器身份认证方案的安全性,保证摄像头终端的可用性和安全性,能够有效降低摄像头终端设备和认证服务器身份认证方案中存在的风险。
附图说明
图1是本发明流程图。
具体实施方式
下面结合附图和具体的实施例对本发明技术方案作进一步的详细描述,以使本领域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
实施例
本发明中有关的技术术语代表的含义如下:
device表示摄像头终端设备;
deviceid表示摄像头终端设备号;
devicepub表示摄像头终端设备公钥;
devicedigitalcertificate表示摄像头终端设备数字证书;
server表示认证服务器设备;
serverid表示认证服务器设备号;
serverpub表示认证服务器设备公钥;
serverdigitalcertificate表示认证服务器设备数字证书;
register表示认证请求;
response表示认证服务器返回;
{algorithm1-n}表示摄像头终端设置支持使用的密码学算法列表;
algorithm1表示认证服务器随机选择的算法;
rand表示随机生成随机数;
randn表示随机数;
rn表示随机数;
timestampn表示时间戳;
vkek表示视频密钥加密密钥;
hash表示hash函数;
signn表示签名后得到的数字签名;
如图1,本发明包括以下步骤:
下面详细描述步骤s1,摄像头终端device向认证服务器server发送包含摄像头终端设置支持使用的密码学算法列表{algorithm1-n},摄像头终端设备数字证书devicedigitalcertificate和摄像头终端设备号deviceid;步骤s1中的register请求如下:register{device||{algorithm1-n}||devicedigitalcertificate||deviceid||server}。
下面详细描述步骤s2,认证服务器检查摄像头终端设置数字证书devicedigitalcertificate是否有效。如果有效,认证服务器server使用rand随机函数生成随机数rand1,同时取当时设备时间戳为timestamp1,timestamp1和rand1组成随机数r1;认证服务器server从摄像头终端设置支持使用的密码学算法列表{algorithm1-n}中随机选择一项算法algorithm1;认证服务器server向摄像头终端设备device返回response包括401unauthorized,认证服务器数字证书serverdigitalcertificate,随机数r1,认证服务器设备号serverid和认证服务器选择的密码学算法algorithm1;步骤s2中的response返回如下:response{server||401unauthorized||serverdigitalcertificate||r1||serverid||algorithm1||device}。如果认证无效,则认证过程结束。
下面详细描述步骤s3,摄像头终端设备检查认证服务器数字证书serverdigitalcertificate是否有效。如果有效,摄像头终端devicer使用rand随机函数生成随机数rand2,同时取当时设备时间戳为timestamp2,timestamp2和rand2组成随机数r2;摄像头终端设备使用hash函数对{r2||r1||serverid}进行摘要计算,然后使用algorithm1对摘要进行加密得到数字签名sign1。摄像头终端设备发送包含;步骤s3中的register请求如下:register{device||r2||r1||serverid||sign1||server}。如果认证无效,则认证过程结束。
下面详细描述步骤s4,认证服务器验证随机数r1中时间戳timestamp1加上默认的超时时间是否小于当前时间的时间戳,如果小于,验证无效,则认证过程结束。认证服务器使用摄像头终端设备数字证书中的公钥devicepub对数字签名sign1进行解密,如果解密得到的数据和hash函数对{r2||r1||serverid}进行摘要计算一致,则验证有效,如果无效,则认证过程结束。认证服务器使用摄像头终端设备数字证书中的公钥devicepub对视频密钥加密密钥vkek进行加密得到cryptkey。认证服务器使用hash函数对{r1||r2||deviceid||cryptkey}进行摘要计算,然后使用algorithm1对摘要进行加密得到数据签名sign2。认证服务器server向摄像头终端device返回response包含200ok、随机数r1、随机数r2、摄像头终端设备deviceid、数字签名sign2,cryptkey;步骤s4中的response返回如下:response{server||200ok||r1||r2||deviceid||sign2||cryptkey||device}。
下面详细描述步骤s5,摄像头终端设备验证随机数r2中时间戳timestamp1加上默认的超时时间是否小于当前时间的时间戳,如果小于,验证无效,则认证过程结束。摄像头终端设备使用认证服务器设备数字证书中的公钥serverpub对数字签名sign2进行解密,如果解密得到的数据和hash函数对{r1||r2||deviceid||cryptkey}进行摘要计算一致,则验证有效,认证过程成功;如果无效,则认证过程结束。