本发明涉及设备身份认证领域,尤其是涉及一种基于动态图形密码图片的物联网设备身份认证方法和系统。
背景技术:
1、物联网是指通过具有感知和通信能力的物联网设备,按照约定的协议将物、人、系统和信息资源连接起来,实现对物理和虚拟世界的信息进行处理并做出反应的智能服务系统。现如今物联网与各个行业深度融合,催生了智能家居、智能城市等等新兴应用场景,随着物联网的快速发展,其面临的安全和隐私挑战也越来越大,大量的物联网设备托管在移动互联网的服务器上进行管理。而设备的身份认证是信息安全系统的第一步,身份认证机制是指在进行数据交互前对接入物联网系统的设备身份进行识别鉴定的一种安全机制,是安全领域的重要研究课题。
2、目前,物联网设备中常用的身份认证方式主要有以下5种。
3、(1)rfid智能卡认证:rfid智能卡是一种内置集成电路的芯片,芯片中存有与用户身份相关的数据。智能卡由专门的厂商通过专门的设备生产,是不可复制的硬件。智能卡由合法用户随身携带,用户登录时必须将智能卡插入专用的读卡器读取其中的信息,以验证用户的身份。智能卡认证基于“what you have”的手段,通过智能卡硬件的不可复制性来保证用户身份不会被仿冒。
4、(2)用户名/密码方式:用户名/密码是最简单也是最常用的身份认证方法,是基于“what you know”的验证手段。每个用户的密码均是由用户自己设定的,只有用户自己知道。只要用户能够正确输入密码,计算机就认为操作者是合法用户。
5、(3)动态口令:动态口令技术是一种让用户密码按照时间或使用次数不断变化、每个密码只能使用一次的技术。它采用一种叫作动态令牌的专用硬件,内置电源、密码生成芯片和显示屏,密码生成芯片运行专门的密码算法,可根据当前时间或使用次数生成当前密码并将其显示在显示屏上。认证服务器采用相同的算法认证当前的有效密码。用户使用时只需要将动态令牌上显示的当前密码输入客户端计算机,即可实现身份认证。由于每次使用的密码必须由动态令牌来产生,只有合法用户才持有该硬件,因此只要通过密码验证就可以认为该用户的身份是可靠的。而用户每次使用的密码都不相同,即使黑客截获了一次密码,也无法利用这个密码来仿冒合法用户的身份。
6、(4)usb key认证:它采用软硬件相结合、一次一密的强双因子认证模式,很好地解决了安全性与易用性之间的矛盾。usb key是一种usb接口的硬件设备,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书,利用usb key内置的密码算法即可实现对用户身份的认证。基于usb key的身份认证系统主要有两种应用模式:一种是基于冲击/响应的认证模式,另一种是基于pki体系的认证模式。
7、(5)生物识别:生物识别技术主要是指通过可测量的身体或行为等生物特征进行身份认证的一种技术。生物特征是指唯一的、可以测量或可自动识别和验证的生理特征或行为方式。生物特征分为身体特征和行为特征两类。身体特征包括指纹、掌型、视网膜、虹膜、人体气味、脸型、血管和dna等;行为特征包括签名、语音、行走步态等。目前部分学者将视网膜识别、虹膜识别和指纹识别等归为高级生物识别技术,将掌型识别、脸型识别、语音识别和签名识别等归为次级生物识别技术,将血管纹理识别、人体气味识别、dna识别等归为“深奥的”生物识别技术。
8、现有技术存在身份认证系统无法抵抗假冒服务器导致的安全性低的缺点和认证过程效率低的缺点。
技术实现思路
1、本发明提供一种基于动态图形密码图片的物联网设备身份认证方法和系统,以提高物联网设备身份认证过程的安全性。本发明通过服务器生成动态图形密码图片和第一加密明文,再将所述动态图形密码图片加密发送至设备,设备再将所述动态图形密码图片解析成相应的动态密码后加密返回至服务器,服务器再根据所述对所述第一加密明文对所述动态密码进行验证,提高了物联网设备身份认证过程的安全性。
2、为了解决上述技术问题,本发明实施例提供了一种基于动态图形密码图片的物联网设备身份认证方法,包括:
3、服务器对由设备发送的第一加密身份认证信息进行解密并验证通过后,生成动态图形密码图片和第一加密明文,并将所述动态图形密码图片发送至所述设备,以使所述设备根据预设的解密算法对所述动态图形密码图片进行解密得到第一动态密码,并按照预设的第一规则对所述第一动态密码加密后得到第二加密信息并发送至所述服务器;
4、所述服务器按照预设的第二规则对所述第二加密信息进行解密得到第二明文,并根据所述第一加密明文对所述第二明文进行验证,验证通过则返回身份认证成功信息至所述设备,验证不通过则返回身份认证失败信息至所述设备。
5、作为其中一种优选方案,所述设备根据预设的解密算法对所述第一动态图形密码图片进行解密得到第一动态密码后,识别所述第二动态图形密码图片的时间身份id,判断所述时间身份id是否在所述服务器中,若是,则进入下一流程,若否,则结束身份认证流程。
6、作为其中一种优选方案,所述生成动态图形密码图片包括以下步骤:
7、读取所述服务器随机生成或储存的第一动态图形密码图片,根据当前时间和动态更新码生成基于时间约定的第一加密明文;
8、初始化所述第一动态图形密码图片的图片参数,再生成基于当前时间的灰度化权值;
9、对所述第一动态图形密码图片依次进行灰度化处理和二值化处理,得到所述第一动态图形密码图片的完整二维表;
10、将所述完整二维表划分为若干个相同大小的区域,每个所述区域对应一个局部二维表,则得到若干个局部二维表;
11、将所述若干个局部二维表的数量关系依次和所述第一加密明文对应的数字进行比较,并调整所述数量关系与所述数字不一致的局部二维表的像素点,以使全部所述局部二维表的数量关系和所述第一加密明文对应的数字相等,输出当前的所述若干个局部二维表对应的第二动态图形密码图片。
12、作为其中一种优选方案,所述对所述第二明文进行验证,具体为:判断所述第二明文的数字串和所述第一加密明文的数字串是否一致,若一致则判断验证通过,若不一致则判断验证不通过。
13、作为其中一种优选方案,计算所述局部二维表中每一行的连续黑色像素点的数量并相加,得到所述局部二维表的数量关系。
14、作为其中一种优选方案,所述设备根据预设的解密算法对所述第一动态图形密码图片进行解密得到第一动态密码,包括以下步骤:
15、读取所述设备中的图片识别参数,根据所述图片识别参数中的图片区域划分参数对所述第二动态图形密码图片进行区域划分,得到若干个区域图片;
16、对所述若干个区域图片依次进行灰度处理和二值化处理,得到所述若干个区域图片对应的若干个黑白图片和若干个局部二维表;
17、依次计算所述若干个局部二维表的数量关系,并根据所述若干个局部二维表的顺序将各个局部二维表的所述数量关系对应的数字字符进行连接,得到第一动态密码。
18、作为其中一种优选方案,所述设备根据设备ip和当前时间根据预设的第三规则生成一串数字信息,并对所述数字信息加密后得到所述第一加密身份认证信息。
19、本发明另一实施例提供了一种基于动态图形密码图片的物联网设备身份认证系统,应用于物联网平台,包括服务器子系统和设备子系统;
20、所述服务器子系统包括动态图形密码图片生成模块、参数表生成模块、第一加密模块、第一验证模块、第一解密模块、第一存储模块、第一发送模块和第一接收模块;
21、所述动态图形密码图片密码生成模块用于身份认证过程中,生成服务器发送的动态图形密码图片;
22、所述参数表生成模块用于在设备注册过程中,生成图片参数表;
23、所述第一加密模块用于对服务器生成的敏感信息进行加密,包括对所述图片参数表进行加密;
24、所述第一验证模块用于读取第一储存模块中服务器生成的动态图形密码图片,将所述服务器生成的动态图形密码图片与设备返回的动态图形密码图片进行验证,验证通过后对设备或用户的账号和密码进行验证;
25、所述第一解密模块用于读取第一接收模块中加密过的信息;
26、所述第一存储模块用于存储服务器生成的所述动态图形密码图片和图片参数表;
27、所述第一发送模块用于发送服务器生成的动态图形密码图片、设备注册成功、设备认证成功和设备认证失败信息;
28、所述第一接收模块用于接收设备发起的身份认证请求、设备在验证过程中返回动态图形密码图片密码、加密后设备的账号信息和密码信息;
29、所述设备子系统包括动态图片识别模块、第二加密模块、第二接收模块、第二发送模块、第二储存模块和第二解密模块;
30、所述动态图形密码图片识别模块用于识别设备接收的动态图形密码图片的密码信息;
31、所述第二加密模块将识别的动态图形密码图片的密码信息进行加密;
32、所述第二接收模块用于接收服务器发送的动态图形密码图片信息、身份认证成功信息或身份认证失败信息;
33、所述第二解密模块用于对接收到的动态图形密码图片信息进行解密后与图形几何表进行数字字符匹配;
34、所述第二发送模块用于发送设备识别出的加密后的动态图形密码图片的密码信息和设备加密后的账号密码信息;
35、所述第二储存模块用于将接收物联网设备的参数表信息进行储存。
36、相比于现有技术,本发明实施例的有益效果在于以下所述中的至少一点:针对物联网设备只具备有限的计算能力和储存资源的缺点,通过服务器和设备约定加密和解密规则,可以使设备快速读取出动态图形密码图片的信息,不需要耗费大量的计算能力和储存能力,最终实现设备身份认证和保护物联网设备免受恶意攻击。
37、针对设备在身份认证系统无法抵抗假冒服务器的缺点,本发明采用基于当前时间的灰度化的权值,此灰度化权值作为动态图形密码图片的图片调整的基础。设备接收到动态图形密码图片密码信息,先对动态图形密码图片进行处理,按照基于时间灰度化权值的调整方式,修改服务器生成的动态图形密码图片的黑色像素的数量关系使得设备校正后的动态图形密码图片密码与之对应。后将设备校正过的动态图形密码图片与识别得到的动态图形密码图片密码进行验证,只要设备生成的动态图形密码图片密码通过,才对动态图形密码图片密码计算识别得到动态图形密码图片密码信息;验证不通过就会结束身份认证流程。
38、针对传统的密码身份认证过程效率不高的缺点。本发明在对动态图形密码图片进行识别的过程是:区域划分、灰度化处理、二值化处理、字符匹配,省去了去噪过程。先是在区域划分中,通过设定好的规则,对图片进行区域划分,划分出若干个区域图片。本发明对灰度化进行了创新,采用基于当前时间的灰度化权值。之后在二值化处理中,设定多个阈值ti。最后的几何字符匹配中,得到若干个经过区域划分、灰度化、二值化处理后的黑白图像,将黑白图像分别转化为二维表(二维表是表示蕴含黑白像素点数量和黑色像素点数量关系的表格),分别对这些二维表中的黑色像素点数量关系进行分析,将得到的数值与约定的规则(局部二维表的数量关系)进行匹配得出对应的字符。