密码卡使用手册
经过安装之后,密码卡可以初步运行加解密样例程序。此文档需要进一步介绍密码卡的用户管理、安全机制、功能、编程接口等内容。
适用范围
此手册适用于派科信安的如下PCIe密码卡:
- A系列:A1、A2、A3
- C系列:C1
适用于派科信安的如下Mini PCIe密码卡:
- M10、M10U
- M11、M11U
- M12、M12U
- M13
- M50
密钥
密码卡内,与使用直接相关的密钥,主要包括:
- SM2密钥(非对称密钥)
- KEK(密钥加密密钥)
- 会话密钥(对称密钥)
密码卡管理工具
在examples目录下有密码卡管理工具piicoTool和piicoToolWP,用户可以通过该管理工具对密码卡进行初始化、密钥管理、用户管理、权限登录等不同操作。其中,piicoTool适用于带UKEY认证的密码卡管理,piicoToolWP适用于PIN口令认证的密码卡管理。该手册中的密码卡管理操作,均以piicoTool为例,piicoToolWP管理工具操作与piicoTool类似,区别在于不用插入UKEY,仅做PIN码认证。
以带UKEY认证的密码卡管理工具piicoTool具体参数与功能如下:
参数 | 范例 | 说明 |
---|---|---|
-s | ./piicoTool -s | 显示密码当前登录权限与状态 |
-rs | ./piicoTool -rs | 注册超级管理员,需要在出厂状态下执行 |
-ra | ./piicoTool -ra | 注册管理员,需要在出厂状态、超级管理员权限下执行 |
-ro | ./piicoTool -ro | 注册操作员,需要在出厂状态、超级管理员权限下执行 |
-li | ./piicoTool -li | 身份登录 |
-ic | ./piicoTool -ic | 初始化文件系统和密钥容器空间,需要在出厂状态和超级管理员权限下执行 |
-gd | ./piicoTool -gd | 生成0号设备密钥,需要在初始状态和管理员权限下执行 |
-gu | ./piicoTool -gu | 生成1~KEYPAIR_MAX_INDEX号用户密钥,需要在就绪状态和管理员权限下执行 |
-gk | ./piicoTool -gk | 生成0~KEK_MAX_INDEX号密钥加密密钥(KEK),需要在就绪状态和管理员权限下执行 |
-bu | ./piicoTool -gk 目标目录/ | 备份设备内所有密钥,需要在就绪状态和管理员权限下执行。按程序提示依次插入三只不同的备份Ukey,分散保存备份设备内所有密钥的备份保护密钥。执行完成后会创建目标目录,并将密码卡内所有密钥以目录同名文件抬头的方式加密导出。 |
-rd | ./piicoTool -rd 目标目录/ | 恢复设备密钥,需要在管理员权限和初始化状态下执行。按提示依次插入任意两支不同的备份Ukey,在卡内恢复出分散的备份密钥,随后恢复目标目录下加密保护的0号设备密钥 |
-ru | ./piicoTool -ru 目标目录/ | 恢复用户密钥和KEK密钥,需要在管理员权限和就绪状态下执行。按提示依次插入任意两支不同的备份Ukey,在卡内恢复出分散的备份密钥,随后恢复目标目录下加密保护的所有用户密钥和KEK密钥 |
-ri | ./piicoTool -ri | 密码卡恢复出厂设置,需要在超级管理员权限下使用,不限制密码卡状态 |
-mp | ./piicoTool -mp index | 修改私钥使用权限,需要在管理员权限下使用,index为用户密钥索引值 |
-mk | ./piicoTool -mk | 修改Ukey的PIN口令(piicoToolWP工具对应修改管理员认证口令) |
密码卡管理员
管理员权限划分
密码卡具备管理员、操作员和超级管理员三种不同的权限,每种权限对应不同的Ukey,Ukey通过函数登陆密码卡即可获得对应的权限。
操作\角色 | 管理员 | 操作员 | 超级管理员 |
---|---|---|---|
用户管理 | - | - | √ |
查看产品基本信息 | √ | √ | √ |
查看设备运行信息 | √ | √ | √ |
设备重置操作 | - | - | √ |
初始化私钥访问控制码 | - | - | √ |
初始化文件系统 | - | - | √ |
修改私钥访问控制码 | √ | - | - |
产生密钥对 | √ | - | - |
导入密钥对 | √ | - | - |
密钥备份 | √ | - | - |
密钥恢复 | √ | - | - |
用户密钥使用 | √ | √ | - |
设备密钥使用 | √ | - | - |
符合GM/T 0018标准函数 | √ | √ | - |
初始化口令
密码卡的私钥使用权限和UsbKey的初始化为”wuxipiico”。
登录流程
密码卡交付时处于可供测试的就绪状态,已经设置有超级管理员、管理员和操作员,密码卡内生成有全部的设备密钥、用户密钥和KEK密钥。
使用者可以通过“piicoTool -li”命令选择不同的Ukey,获取不同的权限进行登录。登录后可操作内容见章节1.6。
登录成功后,Ukey拔下或者更换其它Ukey,不会改变密码卡登录权限,当再次执行”piicoTool -li”并成功后,新的权限将覆盖原有权限。
恢复出厂(重置)
1、选择超级管理员Ukey以”piicoTool -li”命令登录并获取密码卡权限
2、执行”piicoTool -ri”命令清空密码卡内所有信息,包括注册用户、密钥容器、文件系统、设备密钥、用户密钥和KEK信息。
3、此时执行”piicoTool -s”命令可以看到密码卡处于出厂、无用户状态。
密码卡初始化
说明:使用ukey注册用piicoTool命令;如果仅适用口令注册,则使用piicoToolWP命令。以使用ukey注册为例,密码卡初始化流程如下:
1、执行”piicoTool -rs”命令注册超级管理员身份。
2、执行”piicoTool -li”命令以超级管理员身份登录并取得其对应权限
3、执行”piicoTool -ra”命令注册管理员身份
4、执行”piicoTool -ro”命令注册操作员身份
5、执行”piicoTool -ic”命令执行初始化密钥系统和文件系统操作
6、此时密码卡进入初始化状态,只有管理员权限可以在初始化状态进行工作,因此执行”piicoTool -li”命令,更换管理员身份登录并取得其对应权限
7、执行”piicoTool -gd”命令生成设备密钥
8、此时密码卡进入就绪状态,执行”piicoTool -gu”命令生成密码卡的所有用户密钥。
9、执行”piicoTool -gk”命令生成密码卡所有KEK密钥。
此时密码卡初始化完成,可以进行加解密等操作测试。关机重起后密码卡状态及密钥状况不会改变,重新登录即可恢复使用。
备份与恢复
备份流程
密码卡初始化完成后,可以对卡内的密钥信息进行备份操作,备份需要管理员权限,其流程如下。
(1)执行”piicoTool -li”命令以管理员身份登录并取得对应权限,如已登录则略过此步骤。
(2)执行”piicoTool -bu /dir/”命令可以对密码卡内所有密钥加密成密文文件备份到指定的目录中。
恢复流程
当两块密码卡需要做信息同步时,或者因故障导致密钥丢失时,可以通过恢复流程将密钥恢复进密码卡。
(1)设备密钥的恢复,在2.2.4流程中以”piico -rd /dir/”指令代替第7步骤生成指令,可将已备份的设备密钥恢复进密码卡
(2)用户密钥的恢复,在2.2.4流程中以”piico -ru /dir/”指令代替第8、9步骤生成指令,可将已备份的用户密钥和KEK恢复进密码卡。