当前位置:文档之家› USBKey身份认证系统的设计与实现

USBKey身份认证系统的设计与实现

USBKey身份认证系统的设计与实现
USBKey身份认证系统的设计与实现

U SB Key 身份认证系统的设计与实现

汪国安1,杨立身2

(1.河南大学网络中心,河南开封 475001; 2.河南理工大学网络中心,河南焦作 454000)Ξ

摘要:系统地介绍了在研制开发利用计算机的标准USB 接口及实现一种低成本、高可靠、简便易用、基于硬件(USB K ey )的身份认证系统的过程中所攻克的关键技术及实现方法,包括用于实现实时监测用户是否在线的心跳机制、USB K ey ID 的惟一性方案、加密方案、用户的公钥、用户的私钥以及扰码的加密算法及记录方法、读码、写码、通信时的安全机制等.

关 键 词:互连网;身份认证;数字签名

中图分类号:TP 309 文献标识码:A 文章编号:1007Ο7332(2005)03Ο0311Ο03

0 引 言

随着互联网的快速发展,各种新的网络应用层出不穷,如电子商务、远程教育、网上购物、信息点播等,互联网已经由原来简单地提供公共信息服务转向全方位个性化服务.伴随着这些服务的出现,一个首先必须解决的问题就是:如何能够快速、准确、方便、可靠地识别用户的身份,并且尽可能地降低认证整体的成本.这是目前信息技术领域研究的一个热门课题.

目前在实际应用中,有3种常见的认证用户身份方法:用户账号+口令密码;银行卡或智能卡(IC 卡);虹膜或指纹.虽然这些方法都可以提供认证服务,但每种方法都有自己的局限性.第1种方法使用起来简单、方便,但可靠性最差,一旦盗用者通过某种方式获得了他人的账号、密码,则该用户的切身利益将无法得到保障;后2种方法可靠性较高,但需要配备专用设备,体系结构复杂,价格过于昂贵,影响推广使用.

针对上述问题,我们利用计算机的标准接口

—USB 接口,开发设计出了一种基于USB K ey

用户的身份认证系统(图1),它具有简便易用、

可靠性高、成本低廉等特点,易于推广应用.

1 系统结构

USB K ey 通过USB 接口与计算机相连,用

户的个人信息存放在存储芯片中,可由系统进行

读写.当需要对用户进行身份认证时,系统提请

用户插入USB K ey 并读取上面记录的信息,信息经加密处理送往认证服务器,在服务器端完成解密和认证工作,结果返回给用户所请求的应用服务.

2 关键技术

为确保身份认证系统可靠运行,需要重点解决一些关键性的技术问题.

第24卷第4期2005年8月 河南理工大学学报JOURNAL OF HENAN POL YTECHN IC UN IV ERSIT Y Vol.24 No.4Aug.2005

Ξ收稿日期:2005Ο07Ο11

基金项目:河南省教育厅自然科学基金资助项目(2003520257)

作者简介:汪国安(1957Ο

),男,河南新蔡人,副教授,主要从事计算机网络及应用方面的研究.

心跳机制:用于实时监测用户是否在线,一旦失去心跳连接,立即中断服务.它包括两种类型,一是认证服务器与计算机之间的连接,二是计算机与USB K ey 之间的连接.为保证监测结果的可靠性,需采用多种心跳监测机制.

惟一性:每个USB K ey 都具有一个惟一的ID 号,该号码存在于USB K ey 芯片中,不可更改,以防止不法者假冒.

用户信息:由用户的个人编码、用户的公钥、用户的私钥以及扰码按照一定的加密方式生成、记录在存储芯片中.除了用于表明用户的身份,还可以用于安全通信、数字签名等.

读码:对USB K ey 内用户信息的读取需要获得授权,无授权者不能读取信息.

写码:对USB K ey 内用户信息的改写需要获得授权,无授权者不能改写信息.

安全通信:认证服务器与计算机之间采用安全的通信机制,防止认证信息被黑客监听.

认证:用户信息被完整地发送到服务器端,由服务器端软件负责解密并对用户身份进行认证,确保认证结果安全、可信.

3 加密方案

即使有了USB K ey ,但如果没有对加密方案进行良好的设计,在解密高手面前它还是不堪一击的.所以,设计加密方案的时候,要充分考虑到可能出现的各种问题.此外,加密方案还应当满足灵活的配置要求.

USB K ey 的基本操作:所有的软件加密原理都是生成一些信息,然后设法使这些信息不被别人复制.USB K ey 信息包括内部存储器信息及算法信息.读写这些信息的操作,可抽象归纳为以下3个基本操作.

Ⅰ X =QU ER Y (Y ),以Y 为因子返回算法计算结果X

Ⅱ X =READ (Y ),读存储器Y 地址的数值

Ⅲ WRITE (X ,Y ),将X 保存在存储器Y 地址

限制软件运行:限制软件运行的含义是同一时刻只允许一个软件运行.设计这种加密方案的关键是在软件的全部运行周期不断地要去验证加密硬件的存在,而不是仅仅在软件启动时才去验证一次.可以使用QU ER Y 和READ 基本操作来达到这种验证.

黑客常用的解除软件运行限制的手法有两种:一是修改可执行文件的映象文件,二是通过软件对硬件进行仿真.修改可执行文件的映象文件的依据是反汇编文件,由于访问加密硬件子程序的痕迹是很明显的,所以能通过逆推法找到软件判断验证的决策点,通过修改决策点的汇编指令达到解密的目的.防范这种行为的加密方案要注意:要设置很多决策点,不能把决策点放在某个单独的子程序里;把基本操作和验证编程设计成时间和空间相隔很远的不同事件;用QU ER Y 或READ 的数据去初始化软件的重要变量.

对硬件进行仿真的依据是对软件和加密硬件数据往来接口的数据流的观察结果.防范这种行为的加密方案要注意:选择动态和随机数据作为QU ER Y 因子;使用大尺寸的加密数据包,如64bits 以上;使用输入输出关系非常不明显的变换算法.

USB K ey 运行许可:USB K ey 需要经管理部门发放许可之后才能投入使用.第1步,在管理部门,使用工具软件将模块许可信息用基本操作写到加密硬件里,与此同时,该信息被记录到认证服务器的数据库中;第2步,用户运行认证服务程序,相应模块读出数据,判断自己是否得到许可.

防止未经授权修改加密锁数据:假设有人知道基本操作的接口,就有可能手动修改加密硬件中存储的数据.所以,将要保存的数据做一个校验和(CRC ),再加密后保存.加密的效果使得原始数据即使改动1bit ,输出数据也会有很大的变化,很难看得出规律.解密后的数据如果检验CRC 不匹配,则认为加密硬件保存的数据经非法改动过,是无效数据.

4 结 论

身份认证是目前信息技术领域研究的一个热门问题,这个问题解决的成功与否,直接关系到各种

2

13 河南理工大学学报(自然科学版) 2005年第24卷

网上应用服务能否顺利开展,关系到计算机网络系统能否安全、可靠的运行.本文在对该问题的现状进行了介绍和分析后,提出了一种比较理想的解决方法,并对该方法进行了较为详尽的描述.参考文献:

[1] [美]Jan https://www.doczj.com/doc/37725825.html,B 大全[M ].陈逸,译.北京:中国电力出版社,2001.

[2] 李亚杰,吴秋峰,袁 萌.PKI :构建安全电子商务的基石[J ].计算机工程与应用,2001,37(10):45-47.

[3] [美]Bruce Schneier.应用密码学[M ].吴世忠,祝世雄,张文政,等译.北京:机械工业出版社,2000.

[4] 伍云霞,孙继平.安全认证系统中嵌入USB 接口技术[J ].电子技术应用,2002,28(3):13-15.

[5] 廖传书,韩 屏.基于USB 的无源身份认证的实现[J ].微机发展,2004,14(11):62-64.

[6] 孟丽荣,赵华伟,张海波.微型PKI 客户端设计方案[J ].计算机应用,2003,23(9):20-21.

The Design and Implementation of an Identity

Authentication System Based on an U SB Key

WAN G Guo Οan 1,YAN G Li Οshen 2

(https://www.doczj.com/doc/37725825.html, work Center ,Henan U niversity ,Kaif eng 475001,Chi na ;https://www.doczj.com/doc/37725825.html, work Center ,Henan Polytechnic U niversity ,Jiaoz uo 454000,Chi na )

Abstract :This paper will discuss the research and development of an identity authentication system ,which utilizes a standard USB interface to implement a based hardware system in a low cost ,reliable and convenient manner.Furthermore ,this paper will present an implementation method of this system.This technology includes :a Heart J umping system which can monitor whether customers are online in real Οtime ;a USB K ey ID uniqueness scheme ;an encryption scheme ;an encryption algorithm and recording method for the public key of a user ;private key and scrambling ;a security system for reading code ;writing code and communication.

K ey w ords :Internet ;Identity Authentication ;Digital Signature

(责任编校 杨玉东)

科技论文前言的写法

(1)突出重点.在回顾前人所作的研究工作时,不宜面面俱到,应找具有代表性的、与本研究关系最密切的资料来阐述,避免写成文献综述.

(2)注意深度.在论述本人所作研究时,一些普及的、为公众所熟知的原理和知识,不必一一赘述.如教科书中早已有的公式,众所周知的基础理论等等.

(3)审慎评价.在介绍自己的研究成果时,切忌拔高或降低.比如一些词汇:“国内首创”、“从未见报道”、“国际水平”、“国内领先”、“填补空白”等,都属拔高的评价;而诸如“不足之处敬请原谅”、“限于时间和水平”、“请读者批评指正”等语言,则属大可不必客气的俗语,均应避免使用.只要如实报道自己的成果就行了,质量高低读者自会评价.

(4)不列图表.因为前言只是简要地阐述论文的研究情况,故一些详细的研究数据和资料如图、表、公式、照片等不宜列入.313第4期 汪国安等:USB K ey 身份认证系统的设计与实现

相关主题
文本预览
相关文档 最新文档