微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > usb key原理和使用?

usb key原理和使用?

时间:12-13 来源:互联网 点击:
基于USB Key的身份认证方式是近几年发展起来的一种方便、安全、可靠的身份认证技术。它采用一次一密的强双因子认证模式,很好地解决了身份认证的安全可靠,并提供USB接口与现今的电脑通用。USB Key是一种USB接口的小巧的硬件设备,形装与我们常见的U盘没有什么两样。但它的内部结构不简单,它内置了CPU、存储器、芯片操作系统(COS),可以存储用户的密钥或数字证书,利用USB Key内置的密码算法实现对用户身份的认证。

每一个USB Key都具有硬件PIN码保护,PIN码和硬件构成了用户使用USB Key的两个必要因素。用户只有同时取得了USB Key和用户PIN码,才可以登录系统。即使用户的PIN码被泄漏,只要用户持有的USB Key不被盗取,合法用户的身份就不会被仿冒;如果用户的USB Key遗失,拾到者由于不知道用户PIN码,也无法仿冒合法用户的身份。

USB Key具有安全数据存储空间,可以存储数字证书、密钥等秘密数据,对该存储空间的读写操作必须通过程序实现,用户无法直接读取,其中用户密钥是不可导出的,杜绝了复制用户数字证书或身份信息的可能性。

USB Key 内置CPU,可以实现加解密和签名的各种算法,加解密运算在USB Key内进行,保证了密钥不会出现在计算机内存中,从而杜绝了用户密钥被黑客截取的可能性。USB Key的两种应用模式

USB Key身份认证主要有如下两种应用模式:

一、基于冲击-响应认证模式

USB Key内置单向散列算法(MD5),预先在USB Key和服务器中存储一个证明用户身份的密钥,当需要在网络上验证用户身份时,先由客户端向服务器发出一个验证请求。服务器接到此请求后生成一个随机数回传给客户端PC上插着的USB Key,此为“冲击”。USB Key使用该随机数与存储在USB Key中的密钥进行MD5运算得到一个运算结果作为认证证据传送给服务器,此为“响应”。与此同时,服务器使用该随机数与存储在服务器数据库中的该客户密钥进行MD5运算,如果服务器的运算结果与客户端传回的响应结果相同,则认为客户端是一个合法用户。

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

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top