USB Key身份认证系统的应用分析

时间:2022-03-01 12:58:35

USB Key身份认证系统的应用分析

摘 要 现在信息安全越来越受到人们的重视。建立信息安全体系的目的就是要保证存储在计算机及网络系统中的数据只能够被有权操作的人访问,所有未被授权的人无法访问到这些数据。这里说的是对“人”的权限的控制,即对操作者物理身份的权限控制。不论安全性要求多高的数据,它存在就必然要有相对应的授权人可以访问它,否则,保存一个任何人都无权访问的数据有什么意义?然而,如果没有有效的身份认证手段,这个有权访问者的身份就很容易被伪造,那么,不论投入再大的资金,建立的再坚固安全防范体系都形同虚设。就好像我们建造了一座非常结实的保险库,安装了非常坚固的大门,却没有安装门锁一样。所以身份认证是整个信息安全体系的基础,是信息安全的第一道关隘。身份认证技术的诞生就是为了解决这个问题。如果把信息安全体系看作一个木桶,那么这些安全产品就是组成木桶的一块块木板,则整个系统的安全性取决于最短的一块木板。这些模块在不同的层次上阻止了未经授权的用户访问系统,这些授权的对象都是用户的数字身份。而身份认证模块就相当于木桶的桶底,由它来保证物理身份和数字身份的统一,如果桶底是漏的,那桶壁上的木板再长也没有用。因此,身份认证是整个信息安全体系最基础的环节,身份安全是信息安全的基础。基于usb key身份认证方式是近几年发展起来的一种方便、安全的身份认证技术。它采用软硬件相结合、一次一密的强双因子认证模式,很好地解决了安全性与易用性之间的矛盾。USB Key是一种USB接口的硬件设备,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书,利用USB Key内置的密码算法实现对用户身份的认证。基于USB Key身份认证系统主要有两种应用模式:一是基于冲击/响应的认证模式,二是基于PKI体系的认证模式。

关键词 USB Key PIN HMAC-MD5 双因子验证 PKI

如何通过技术手段保证用户的物理身份与数字身份相对应呢?在真实世界中,验证一个人的身份主要通过三种方式判定,一是根据你所知道的信息来证明你的身份(what you know),假设某些信息只有某个人知道,比如暗号等,通过询问这个信息就可以确认这个人的身份;二是根据你所拥有的东西来证明你的身份(what you have) ,假设某一个东西只有某个人有,比如印章等,通过出示这个东西也可以确认真个人的身份;三是直接根据你独一无二的身体特征来证明你的身份(who you are),比如指纹、面貌等。 信息系统中,对用户的身份认证手段也大体可以分为这三种,仅通过一个条件的符合来证明一个人的身份称之为单因子认证,由于仅使用一种条件判断用户的身份容易被仿冒,可以通过组合两种不同条件来证明一个人的身份,称之为双因子认证。身份认证技术从是否使用硬件可以分为软件认证和硬件认证,从认证需要验证的条件来看,可以分为单因子认证和双因子认证。从认证信息来看,可以分为静态认证和动态认证。身份认证技术的发展,经历了从软件认证到硬件认证,从单因子认证到双因子认证,从静态认证到动态认证的过程。

现在计算机及网络系统中常用的身份认证方式主要有以下几种:

用户名/密码方式

IC卡认证

动态口令

生物特征认证

USB Key认证

基于USB Key的身份认证方式是一种方便、安全、经济的身份认证技术,它采用软硬件相结合、一次一密的强双因子认证模式,很好地解决了安全性与易用性之间的矛盾。USB Key是一种USB接口的硬件设备,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书,利用USB Key内置的密码学算法实现对用户身份的认证。基于USB Key身份认证系统主要有两种应用模式:一是基于冲击/响应的认证模式;二是基于PKI体系的认证模式。由于USB Key具有安全可靠,便于携带、使用方便、成本低廉的优点,加上PKI体系完善的数据保护机制,使用USB Key存储数字证书的认证方式已经成为目前以及未来最具有前景的主要认证模式,如工商银行网上银行的U盾、电子商务交易系统,网上证券系统、网上报税等对对身份认证要求比较高的环境中。下面将以某一品牌的USB Key说明USB Key身份认证系统的两种应用模式。

一、USB Key冲击/响应的认证模式

USB Key密钥采用双因子验证的方式,一个合法的USB Key密钥使用者除了必须掌握USB Key的PIN码,还必须持有自己的USB Key硬件才能通过身份认证。其中USB Key硬件内部采用HMAC-MD5算法,这是一种高强度的冲击响应算法,冲击响应模式与传统的用户名加密码模式相比更加安全,因为冲击响应模式中的共享密钥绝对不会在认证过程中暴露。在USB Key使用之前首先要对USB Key进行初始化,以合理分配USB Key的公有存储区及私有存储区,同时要求对PIN码及key进行设定。

MD5和SHA-1是一种HASH函数,又称杂凑函数,类似于指纹的应用。在网络安全协议中,杂凑函数用来处理电子签名,将冗长的签名文件压缩为一段独特的数字信息,像指纹鉴别身份一样保证原来数字签名文件的合法性和安全性。经过这些算法的处理,原始信息即使只更动一个字母,对应的压缩信息也会变为截然不同的“指纹”,这就保证了经过处理信息的唯一性。为电子商务等提供了数字认证的可能性。冲击/响应认证模式的认证过程分为PIN码验证、冲击/响应验证两步,也代表了验证的两个层次。PIN码验证在本地进行验证,而冲击/响应验证是一种PKI加密体系,需要进行服务器端验证。PIN码验证:用户登录系统时,首先要提供给系统当前密钥的PIN码,系统会利用这个PIN码与密钥中的PIN码进行比对,如果一致,那么进行冲击/响应验证。冲击/响应验证使用PKI验证体系,本USB Key中内置单向散列算法(MD5),预先在USB Key和服务器中存储中一个证明用户身份的密钥(共享秘密)KEY,当需要在网络上验证用户身份时,先由客户端向服务器发出一个验证请求。服务器接到此请求后生成一个随机数并通过网络传输给客户端(此为冲击)。客户端将收到的随机数提供给插在客户端USB接口上的USB Key,由USB Key使用该随机数与存储在USB Key中的密钥进行带密钥的单向散列运算(HMAC-MD5)并得到一个结果作为认证证据传给服务器(此为响应)。与此同时,服务器也使用该随机数与存储在服务器数据库中的该客户密钥进行HMAC-MD5运算,如果服务器的运算结果与客户端传回的响应结果相同,则认为客户端是一个合法用户。如图1所示:

图1“R”代表服务器提供的随机数,“Key”代表密钥,“X”代表随机数和密钥经过HMAC-MD5运算后的结果。通过网络传输的只有随机数“R”和运算结果“X”,用户密钥“Key”既不在网络上传输也不在客户端电脑内存中出现,网络上的黑客和客户端电脑中的木马程序都无法得到用户的密钥。由于每次认证过程使用的随机数“R”和运算结果“X”都不一样,即使在网络传输的过程中认证数据黑客被截获,也无法逆推获得密钥。这就从根本上保证了用户身份无法被仿冒。

图2为USB Key冲击响应模式在固定资产管理系统身份认证系统中的详细认证流程。

二、基于PKI体系的认证模式

冲击响应模式可以保证用户身份不被仿冒,却无法保护用户数据在网络传输过程中的安全。而基于PKI(Public Key Infrastructure 公钥基础设施)构架的数字证书认证方式可以有效保证用户的身份安全和数据安全。数字证书是由可信任的第三方认证机构颁发的一组包含用户身份信息(密钥)的数据结构,PKI体系通过采用密码学算法构建了一套完善的流程和保证了只有数字证书的持有人的身份和数据安全。然而,数字证书本身也是一种数字身份,还是存在被复制的危险,于是,USB Key作为数字证书存储介质称为实现PKI体系安全的保障。使用USB Key可以保证用户数字证书无法被复制,所有密钥运算由USB Key实现,用户密钥不在计算机内存出现也不在网络中传播。只有USB Key的持有人才能够对数字证书进行操作。由于USB Key具有安全可靠,便于携带、使用方便、成本低廉的优点,加上PKI体系完善的数据保护机制,使用USB Key存储数字证书的认证方式已经成为目前以及未来最具有前景的主要认证模式。

三、USB Key身份认证系统在固定资产管理系统中的应用

由于固定资产管理中,采用了流程控制,资产责任要具体每个人,所以要求用户身份的认证方式要采用一种安全的验证方式,本系统开发人员经过认证分析各种身份认证系统的优缺点,最终采用安全性高,并且成本较为低廉的USB Key身份认证方式,通过此认证方式,切实保障了操作人员身份的唯一性、正确性。在固定资产管理系统中,系统登录采用USBKEY的冲击/响应模式,打开系统后,系统要求用户必须插入USB Key到计算机中,如果用户没有插入计算机中,点击登陆,那么将提示用户插入USB Key,并拒绝登录。

当用户插入USB Key后,输入PIN码,系统会将用户输入的PIN码与USB Key中的PIN码做对比,如果相同,那么系统认为有效,并与数据库中进行验证,如果两者不同,那么系统拒绝登陆,并提示用户PIN码错误。

当用户正确输入PIN码以后,系统提起当前USB Key的唯一序列号并与系统随机生成的随机数进行MD5运算,生成一个认证值,并且USB Key自身根据这个随机数进行运算,并生成一个请求值,如果请求值与认证值相同,那么登陆有效,允许进入系统进行操作,否则拒绝登陆,并提示该USBkey没有对应的用户身份。如果当前请求值与认证值相同,系统验证有效,那么系统将自动获取当前USB Key所属的用户,登陆后所有的操作都是当前用户的有效操作。

在固定资产管理系统中,一个有效的身份认证包括要求用户具备有效条件。USB Key硬件、USB Key的PIN码,系统的随机MD5验证。缺少任何一个环节,系统将不能通过验证。如果非法用户取得了合法用户的USB Key硬件体,那么如果没有正确的PIN码,也不能通过身份认证,如果非法用户取得了合法用户的PIN码,如果没有USB Key硬件,也不能通过身份认证。通过这种软硬结合的方式有效的避免了非法用户对合法用户的身份信息窃取。通过系统的随机MD5验证,避免了通过网络窃听的方式伪造登陆的情况。这种双因子验证的认证方式最大程度的避免了非法用户伪造合法用户的可能。

四、USB Key认证系统发展趋势

未来,身份认证技术将朝着更加安全、易用,多种技术手段相结合的方向发展。USB Key会成为身份认证硬件的主要发展方向,USB Key的运算能力及易用性也将不断提高。

上一篇:浅谈初中语文阅读的重要性 下一篇:新时期如何培养学生对思想品德课的兴趣