win7 智能卡登陆
番茄系统家园 · 2021-08-25 02:20:11

随着操作系统的发展操作系统开机登录程序也在不断改进。在和操作系统中微软取消了中交互式登录支持的GINA图形标识与身份验证模型使用了票据提供程序模型接口。相对于具有高安全性、高灵活性的特点。一些开发商在此技术上开发了一些如指纹提高了用户登录系统的安全性。这里介绍一种使用智能卡登录操作系统的实现方式。
1设计方案
实现WindowsCredentialProvider所使用的智能卡为自主研发的卡片其API包括检测卡片插拔、PIN码校验、文件存储、密码运算等功能。本文的智能卡已格式化具有存储设计方案所需的对称密钥、二进制文件等数据。
WindowsCredentialProvider默认使用的是用户名和密码进行身份认证。本文以智能卡文件作为载体加密保存计算机账户的用户名和密码。使用Windows登录必须先通过智能卡PIN码认证后才得到解密用户名和密码的权限。相对于原只用用户名密码登录方式智能卡登录具有双因素认证的特点大大提高了Windows操作系统登录过程的安全性。
win7 智能卡登陆 2程序开发
设计方案将程序按模块分为2部分一是用户名密码绑定程序二是WindowsCredentialProviderCOM库。
2.1绑定用户名密码程序
用户名密码绑定程序完成一些智能卡登录Windows的初始化工作即输入系统用户名密码并写入到智能卡实现系统密码和智能卡密码的绑定操作。
必须绑定用户名密码的智能卡才能使用智能卡登录Windows系统。完成绑定后用户名和密码都加密保存到智能卡中并长期有效。在系统不重装的前提下以下情况可能导致正常的绑定无效
必须绑定用户名密码的智能卡才能使用智能卡登录Windows系统。完成绑定后用户名和密码都加密保存到智能卡中并长期有效。在系统不重装的前提下以下情况可能导致正常的绑定无效 1通过用户名密码绑定程序删除绑定。
2用户在绑定后修改了原用户名密码导致绑定无效。
相对地针对用户修改密码的情况实现GINA程序相关接口可判断并自动修改绑定关系而WindowsCredentialProvider没有相关的接口因此安装一个用户名密码绑定程序的辅助服务该服务轮询检查绑定的用户名和密码是否有效当绑定关系发送变化时服务程序调用绑定程序重新更新绑定。
一般的用户名密码绑定程序作为初始化工具必须通过授权才可使用。因此在使用用户名密码绑定程序前需通过智能卡的PIN码校验。完成身份认证后用户名密码绑定程序将用户录入的用户名、密码、域名加以校验。
用户名密码绑定程序按功能分为两个部分第一当打开用户名密码绑定程序时弹出输入对话框输入PIN码进行PIN码校验完成用户身份认证过程第二校验用户身份后弹出用户登录凭据绑定输入框。为了简单说明设计方案用户名密码绑定程序有且只能绑定一条Windows登录凭据。Windows登录凭据信息包括用户名、密码和域名如果已经加入域的话。用户确定绑定信息时用户名密码绑定程序将登录凭据信息通过智能卡API加密保存到智能卡文件系统中其中加密密钥是智能卡初始化时写入的对称密钥。至此用户名密码绑定程序对智能卡的初始化工作就完成了。
2.2WindowsCredentialCOM库
WindowsCredentialProvider部分是设计方案的核心部分。它包括了自定义用户登录界面的接口以及处理和提交用户登录凭据的接口。设计方案的WindowsCredentialProvider通过新COM库的方式增量注册到Windows操作系统中并不卸载Windows操作系统自带的CredentialProvider。就是说用户在登录Windows时可以选择原Windows登录方式或选择智能卡登录。
免责声明: 凡标注转载/编译字样内容并非本站原创,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如果你觉得本文好,欢迎推荐给朋友阅读;本文链接: https://m.nndssk.com/post/46945.html。

