首页 > 学院 > 开发设计 > 正文

智能密码钥匙查看器UkeyViewer

2019-11-14 08:59:00
字体:
来源:转载
供稿:网友
        最近经常用到不同厂商生产的智能密码钥匙(在本文中将智能密码钥匙称为Ukey),厂商一般会提供 UKey 及其相应的在 Windows 平台上的驱动程序。驱动程序常见形式为 32 位的 dll 格式文件,或者是一个 exe 文件,运行后将 dll 等文件拷贝到用户计算机上。对于现在大部分国内厂商生产的 Ukey,其驱动都符合我国密码行业标准 GM/T 0016-2012《智能密码钥匙密码应用接口规范》。该规范以 C 语言接口函数的形式,定义了访问 Ukey 内部数据结构、调用 Ukey 进行对称加解密、杂凑、公钥加密及签名运算等功能的方法。

        根据 GM/T 0016-2012,每一个 Ukey 都被视为一个设备(device),在该设备内部可以包含多个应用(application),在每个应用中,又可以包含多个容器(container)(注意:这里的容器是一个智能密码钥匙硬件中的特有概念,与 Docker 容器是两码事)。在每个容器中,可以存放两对公钥,一对用于加解密,另一对用于签名和验签。容器中还可以存放加密密钥对对应的加密数字证书、签名密钥对对应的签名数字证书。

        每当拿到一个 Ukey 后,总是希望知道这个 Ukey 内部信息,比如设备名是什么、包含哪些应用、每个应用中又包含哪些容器、容器的类型是什么。为此我用 C 语言写了一个命令行工具——智能密码钥匙查看器 UkeyViewer,使用它可以看到这个 Ukey 的内部信息。下载地址是:http://download.csdn.net/detail/henter/9747127 。由于下载的 zip 压缩文件中包含 exe 文件,作者也不能保证文件在上传后不会在服务器端遭到篡改,所以建议用户下载后先将 zip 文件上传到 http://www.virscan.org/ 上扫描一下,确认没有问题再运行。

        在运行 UkeyViewer 之前,用户需要先手动配置 ukey_type_info.xml 文件,在其中填入当前计算机能支持的 Ukey 类型个数、每种类型 Ukey 的生产厂商名、驱动程序 dll 文件名。如果不知道驱动程序 dll 文件名,可以向 Ukey 生产厂商的技术人员咨询。目前程序中自带了一个 ukey_type_info.xml 示例文件。在该文件中,支持 3 种类型的 Ukey,并写明了每种 Ukey 的生产厂商名(当前以拼音表示)、驱动程序名。在一般情况下,用户不能直接使用这个示例文件,而是应先了解示例文件的内容极其含义,然后修改它,根据自己的实际情况填写 ukey_type_info.xml 文件中各项的值。

该程序运行后的结果示例如下:

1. 未插入 Ukey 时:

2. 插入一个 Ukey 时:

3. 插入两个 Ukey 时:


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表