usb key登录相关知识整理

     项目里面要集成usb key登录,但是相关的知识从公开渠道还不是很容易找到,对于不了解如何集成的人来讲容易让人一头雾水摸不着头脑。

     大体流程应该是:

1.客户端电脑先安装驱动程序,如果项目支持的浏览器是IE,一般这个驱动里面会带有基于activex技术的com组件供你在html页面里面去操作usb key,如果是新的现代浏览器,如chrome,edge等,一般都会有个在客户端电脑本机监听的websocket server,供浏览器通过websocket与监听程序通讯,然后由这个监听程序去访问usb key硬件。

2.使用厂商提供的sdk读取证书列表,毕竟一台计算机上面是有多个usb 端口的,有可能会插入多个硬件,读取到usb key证书列表以后显示出来供用户选择要使用哪一个,这一步都是在前端完成的,和后台没有关系。

3.让用户输入证书对应的密码,还是在前端js里面用密码和选中的证书调用sdk验证证书密码是否正确,这个也和后台没有关系,都是厂商sdk会支持的动作,密码对或不对厂商的sdk会给出返回值,如果不对的话还有几次尝试机会也要显示给用户防止usb key彻底锁死。

4.密码验证对了以后随便找个随机数据进行签名,如通过随机数算法生成一段字符串等,可以调用厂商的sdk获取这个随机数也可以自己计算生成这个随机数,然后调用sdk读取usb key里面嵌入存储的用户私钥证书对这个随机数进行签名,签名肯定要用私钥,这个时候usb key需要保持和电脑的连接状态,因为证书你弄不出来,是存储在usb key里面的(还有另外一种事件型证书是一次性的,那个不是嵌入硬件的,如ToC业务系统里面的消费者签名,C端用户不可能人手一个usb key吧)。这个过程取随机数最好是后台生成或者调用厂商接口获取的,对随机数据进行签名可以在前端js里面去签,也可以在服务器端去签署。

5.前端将证书信息、对随机数的签名结果信息发给服务器端后台程序,后台程序调用厂商接口进行验签,如果是合法证书的话服务器端的公钥应该是可以正常对数据进行验签的,注意这一步应该在session或者类似的地方记录一下前端发过来的数据,将来要做比对用。如果签名数据被CA厂商验证没有问题,包括证书没有过期、证书没有作废之类的验证都没有问题的话获取usb key里面的唯一标识性信息,一般可能都是有个身份证号码存储在usb key里面了,把这个可以唯一标识用户身份的信息通过sdk读取到并从数据库里面查找对应的用户信息,将用户信息存入session设置登录状态为登录成功。

以上是大致的usb key登录流程,需要对业务系统的员工信息管理功能之类的做改造,支持绑定usb key数字证书,支持设置修改usb key密码,支持usb key更换等操作。

阅读终点,创作起航,您可以撰写心得或摘录文章要点写篇博文。去创作
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: multiusb key是一种多功能的USB钥匙。它具有多个功能,可以通过电脑的USB接口连接和充电,同时可以用作数据存储设备。这款钥匙通常具有更高的存储容量,能够存储更多的文件和数据。 multiusb key的一个显著特点是它的便携性。由于其小巧的尺寸和轻便的重量,它可以方便地随身携带。这对于经常需要在不同电脑之间传输文件或存储重要数据的人来说非常方便。 此外,该设备通常还具有高速传输功能。通过使用最新的USB技术,multiusb key可以在较短的时间内完成大文件的传输。这对于需要将大量数据从一台电脑传输到另一台电脑的用户来说非常有用。 multiusb key还可以用作移动存储设备,可以用于备份和存储重要的文件和数据。它可以在任何需要的时候连接到电脑上,方便地访问保存在其中的文件。此外,一些multiusb key还有密码保护功能,可以保护用户的隐私和数据安全。 总的来说,multiusb key是一种实用的多功能设备,可通过USB接口连接到电脑进行充电、数据传输和存储。它的便携性和高速传输功能使其成为现代人的理想选择。无论是用于工作、学习还是娱乐,这款设备都能满足用户的各种需求。 ### 回答2: MultiUSB Key是一种多功能的USB钥匙,它集成了多个USB接口以满足多设备连接需求。这款产品设计小巧便携,可方便携带,使用户在外出或旅行时能够轻松连接各种设备。 MultiUSB Key拥有多个USB接口,包括USB 2.0和USB 3.0接口,可同时连接多个USB设备,如闪存盘、硬盘、键盘、鼠标、摄像头等。无需频繁更换插口,大幅提高使用效率。 除了USB接口,MultiUSB Key还配备了其他实用的功能。它可以作为传统钥匙使用,可以在钥匙串上悬挂,极大地方便了用户的携带。此外,该钥匙还集成了存储功能,其中包括文件管理和加密功能,保护用户的数据安全。 MultiUSB Key还具备数据传输速度快、兼容性强等特点。通过USB 3.0接口,可以实现高速数据传输,提高工作效率。同时,它兼容各种操作系统,如Windows、Mac OS和Linux,能够在不同的设备上使用。 综上所述,MultiUSB Key是一款非常便捷多功能的USB钥匙。它提供多个USB接口,支持多设备连接,并附带了实用的存储功能。这款产品在外出办公、旅行等场景下,为用户提供了便利和高效的解决方案。 ### 回答3: MultiUSB Key是一种多功能的USB键。它的设计是为了解决用户在使用USB设备时遇到的多重需求和接口不足的问题。这款产品经过精心设计,可以实现多种功能。 首先,MultiUSB Key具备多个USB接口,可以同时连接多个USB设备,无论是移动硬盘、U盘还是键盘、鼠标等设备,都可以一并连接,方便用户的使用。 其次,MultiUSB Key还具备数据传输和充电功能。不仅可以传输数据,还可以为各类设备提供电源充电,如智能手机、平板电脑等。 此外,MultiUSB Key还可以用作存储设备。它内置了一定容量的存储空间,用户可以将文件、照片、视频等存储到其中,方便随身携带和传输。 另外,MultiUSB Key还具备数据保护功能。它支持各种加密和安全防护措施,可以保护用户的数据安全,防止数据泄露和丢失。 总之,MultiUSB Key是一款实用的多功能USB键,可以满足用户在使用USB设备时的多种需求,包括连接多个设备、传输数据、充电、存储和数据保护等功能。它的出现必将给用户带来更加便利的使用体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

peihexian

你的鼓励是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值