李珊 梁策 肖禹 吴毓炜
北方工业大学
基于移动终端的二维码准入身份鉴别技术研究
李珊 梁策 肖禹 吴毓炜
北方工业大学
针对涉密区域、重点区域的身份鉴别安全问题,对基于移动终端的二维码准入身份鉴别技术进行研究,以解决传统身份卡易丢失、易复制、易被仿冒等问题,实现低成本高效率更安全的身份鉴别。根据柯克霍夫原则和香农的“一次一密”原则,设计了“一次一码”方案保证下发的以二维码为载体的准入凭证每次都是不同的且只使用一次的随机字符串,并采用了数字信封、数字签名等技术保证传输安全。
身份鉴别 密码学技术 二维码技术
涉密区域的安全保护工作向来是严谨严格的,涉密区域秘密泄露事件一般情况下与无资格人员进入窃取资料有着些许的联系。然而当前使用的身份鉴别系统极易产生冒认问题,造成了各种机密、秘密文件泄露事故的发生,因而增加了涉密区域的不安定因素。近年来,随着信息技术的发展,准入鉴别机制也越来越普遍。各大高校、公司、银行等涉密区域都会设置准入鉴别机制。其中准入身份鉴别系统是指能通过特定方式来检验用户身份,防止身份欺诈,保护合法用户安全的新兴身份鉴别方法。
放眼古今,“准入身份鉴别”都是控制进出特定区域的重要手段。从古代的官兵人眼鉴别,到现代的电子鉴别都标志着准入身份鉴别的重要性。在保护特定区域的内部人员具有重要意义。
目前市场上的准入身份鉴别系统多以身份卡识别准入为主,这种方式管理不便,并且易复制,安全性不高,且无法鉴别用户身份。
以最为贴近生活的小区准入机制来说,安置闸机,价格昂贵;而门禁卡是唯一的鉴别工具,可能会出现破损、遗忘、遗失等情况,而且遗失几率大,一旦丢失就失去了进入小区的权限;相对的,当其他人捡到门禁卡,就可以顶替卡主的身份,从而进入小区。因此可以反映出在重点区域使用刷卡等工具鉴别身份是不可靠的。
基于移动终端的二维码准入身份鉴别系统全面解决了传统身份鉴别系统的一些弊病,弥补了传统ID卡易被伪造、指纹验证方式的过高成本、“人脸识别”技术上些许不确定不稳定因素,二维码身份鉴别技术较之其他同类新兴身份鉴别技术更为实用、更为稳定。
二维码具有信息存储量大、保密性高、追踪性强、误码率低等特性,广泛应用于追根溯源,证照信息等领域,因此二维码也可以代替传统的身份钥匙作为电子钥匙传递保密信息。
随着移动互联网的快速发展,移动终端的二维码鉴别系统越来越受到大众青睐。但由于二维码可识别性高、没有信息审核机制,很容易被不法分子窃取,给用户带来安全隐患。因此,需要采取一系列安全技术措施(如:数字签名、数字信封等)对移动终端的二维码准入身份鉴别系统进行保护。
2.1 香农理论的“一次一密”原则
“一次一密”指在流密码当中使用与消息长度等长的随机密钥,密钥本身只使用一次。
具体而言,首先选择一个随机位串作为密钥,然后将明文转变成一个位串,比如使用明文的ASCII表示法。最后,逐位计算这两个串的异或值,结果得到的密文不可能被破解,因为即使有了足够数量的密文样本,每个字符的出现概率都是相等的,每任意个字母组合出现的概率也是相等的。
密钥K=(K0,K1,…,KN-1)是一个随机序列。
密钥只能使用一次。
密钥长度要等于明文长度,即|K|=|M|。
由于使用与消息等长的随机密钥,产生与原文没有任何统计关系的随机输出,因此“一次一密”方案不可破解。本系统根据香农的“一次一密”原则,设计了“一次一码”的方案。在本系统中,准入用户每次进入涉密区域后会自动更新准入密钥,所以每次准入用户进入涉密区的二维码都不相同,防止二维码被复制。即使二维码在中途被截获,也不可能继续使用截获的二维码通过身份鉴别端,确保了身份鉴别系统的安全性。
2.2 数字签名
数字签名由两部分组成,签名算法和验证算法。签名算法是产生数字签名的算法,而验证算法是检验一个数字签名是否有效的算法。它是非对称密钥加密技术与数字摘要技术的应用。只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。本作品用数字签名是作为三层加密的其中比较重要的一层。
数字签名主要经过以下几个过程:
1)信息发送者使用一单向散列函数对信息生成信息摘要;
2)信息发送者使用自己的私钥签名信息摘要;
3 )信息发送者把信息本身和已签名的信息摘要一起发送出去;
4 )信息接收者通过使用与信息发送者使用的同一个单向散列函数(HASH函数)对接收的信息本身生成新的信息摘要;
5)信息接收者再使用信息发送者的公钥对信息摘要进行验证,以确认信息发送者的身份和信息是否被修改过。
本系统主要通过数字签名技术验证注册准入用户身份的有效性,在密钥分发过程中用于确认管理服务端的身份,以保证密钥的真实性。
2.3 密钥管理
密钥管理是密码系统不可或缺的重要组成部分,是整个系统的密钥命脉。
本系统采用“一次一码”的方式产生准入密钥,实现准入密钥的安全保护。现代密码体制要求密码算法公开,整个系统的安全性并不取决于对准入密钥算法的保密或者密码设备的的保护,而取决于密钥的保密。
准入密钥采用的是一个常用的三级简化密钥管理的层次结构。其中,在新用户注册时,用户手机APP端自动生成公私钥并将公钥上传至密钥管理系统存储、管理。密钥的分级系统优点在于,它使密钥管理自动化成为可能。在分级系统中,各级密钥均可以由密钥管理系统按照协议来进行自动的分配、更换、撤销等。这既提高了准入密钥传输的工作效率,也提高了安全性,保障了私钥与传送过程的安全。
功能设计主要分为系统功能设计和功能流程设计两部分。系统功能设计通过系统的三个组成部分进行分别讲述;功能流程设计根据用户体验流程进行线性展开。下图1为应用拓补图。
图1 应用拓扑图
3.1 系统功能设计
图2 系统组成图
如图2所示,二维码准入身份鉴别系统由管理服务端、身份鉴别端和手机APP端组成。管理服务端负责对用户信息进行审核、管理,只有管理员才具备管理服务端的权限;手机APP端由用户下载使用,准入用户可以通过其实现注册、访客审核、修改信息等;身份鉴别端负责扫描二维码并识别二维码信息。
系统三部分进行交互,实现用户安全进出涉密区的目的。如下图3所示。
图3 系统交互图
3.1.1 管理服务端
通过安全定制的Linux系统、密码服务及管理等模块,实现对新用户的注册管理,准入用户二维码的校验,并控制门的开关。
在新用户注册完毕后,系统审核信息并分发密钥,接受访客申请并推送至准入用户(受访用户),接收受访用户的反馈信息,判断是否准入。
3.1.2 身份鉴别端
手机端APP生成的二维码交由身份鉴别端的摄像头进行扫描,对用户的二维码进行解析,并将解析出来的信息与识别库进行验证。
3.1.3 手机APP端
完成准入用户注册以及初始化工作,生成二维码,提交准入验证,处理访客申请。
3.2 功能流程设计
系统主要功能分为五个部分:新用户注册、密钥分发、手机APP端更新密钥、二维码生成、访客管理。
3.2.1 新用户注册
新用户到管理员办理注册时,首先下载APP,填写个人信息并提交,管理员经核实身份后,亲自将每个用户所私有的私钥,以及系统公钥注入到手机中。
管理员完成注密后会给用户下发准入密钥,用来生成二维码。下图4为新用户注册流程图。
图4 新用户注册流程
3.2.2 密钥分发
每次准入用户在进入涉密区域后管理服务端会利用随机数生成一组密钥作为新的准入密钥,同时更新本地存储的该准入用户的密钥信息,将此密钥利用随机生成的密钥保护密钥加密,并对准入密钥进行签名,最后利用手机端的公钥对密钥保护密钥进行加密,形成数字信封,下发至手机端。
密钥分发分为两部分:数字信封和数字签名。其中,数字信封包括准入密钥加密以及保护密钥加密。准入密钥加密部分作用是将系统随机生成的准入密钥用保护密钥进行DES加密。保护密钥加密是由将密钥加密中用到的保护密钥进行RSA加密。随后,对准入密钥进行数字签名。下图5为密钥分发流程图。
图5 密钥分发流程图
3.2.3 手机APP端准入密钥接收
手机APP端接收到管理服务端发来的信息后,首先对发来的信息用管理服务端的公钥进行验签,验证通过后使用准入用户的私钥将保护密钥进行解密,得到保护密钥,再使用得到的保护密钥将准入密钥加密部分进行解密,得到需要用到的准入密钥。如图6所示。
图6 身份鉴别系统APP密钥接收流程图
3.2.4 二维码生成
本系统采用二维码为载体进行信息传递。手机APP端生成的二位码包含验证用户身份的重要信息。手机将收到的系统用准入用户公钥加密的密钥进行解密,与手机IMEI码绑定,用系统的公钥再加密生成字节串,并将自身手机号附在字节串后,一起生成二维码。下图7、8分别为二维码组成图和解析图。
图7 二维码组成图
图8 二维码解析图
3.2.5 访客管理
访客申请功能由管理服务端管理实现运行,采用与受访用户(这里指准入用户)交互的方式,即由受访用户确认是否允许访客进入。访客向管理服务端提出申请后填写访客申请,主要包括访客姓名、手机号,及要访问的受访用户信息,如访问人姓名、手机号等。填写完毕后管理服务端向受访用户发送确认请求,受访用户确认之后,管理员根据受访用户反馈的结果,判断是否允许访客进入。在这一过程中访客与受访用户进行交互式交流,更方便快捷,而且能够确保访客身份真实性。
本次系统设计成功地将密码学原理应用到身份鉴别系统中,成功地实现了实践与理论结合、技术方面与实用方面互补。创新性地将二位码应用到身份鉴别系统中去,并且采用密码学中的很多核心理论,例如数字签名、数字信封以及哈希函数等保证准入二维码的安全性和可靠性。在对系统经过全方位的测试后,确认了本系统的实用性。
因此,有理由相信基于移动终端的二维码准入身份鉴别系统在经过更好的完善后,一定会有很好的前景,进而被社会广泛接受。
[1]孙永道、王勇、张岚.一种基于加密型二维码的手机身份验证系统的设计与实现.科技通报.2014,167
[2]Douglas R.Stinson著.冯登国译.密码学原理与实践(第3版).电子工业出版社,2009.7
[3]谷利泽、郑世慧、杨义先.现代密码学教程.北京邮电大学出版社.2009.7
[4]张焕国.王张宜.密码学引论(第2版).武汉大学出版社,2009.3
李珊(1995-),女,北方工业大学信息安全本科生。