第 27 章 KRATool (Rewrapping Private Keys)
当在 密钥恢复授权(KRA)中存档时,一些私钥(在旧部署中)嵌套在 SHA-1 中,1024 位存储密钥。随着处理器速度改进和算法已被破坏,这些算法变得不太安全。作为安全措施,可以在新的更强大的存储密钥(SHA-256、2048 位密钥)中重新打包私钥。
注意
由于 KRATool 工具可以从一个 KRA 中导出私钥,使用新的存储密钥重新打包它们,然后将其导入到新的 KRA 中,因此此工具可用作将多个 KRA 实例合并到单个 KRA 的进程的一部分。
27.1. 语法
KRATool 工具可以运行来重新打包密钥、重新编号键或两者。
重新构建键的语法:
KRATool -kratool_config_file /path/to/tool_config_file
-source_ldif_file /path/to/original_ldif_file
-target_ldif_file /path/to/newinstance_ldif_file
-log_file /path/to/tool_log_file
[-source_pki_security_database_path /path/to/nss_databases
-source_storage_token_name /path/to/token
-source_storage_certificate_nickname storage_certificate_nickname
-target_storage_certificate_file /path/to/new_ASCII_storage_cert
[-source_pki_security_database_pwdfile /path/to/password_file]]
[-source_kra_naming_context name -target_kra_naming_context name]
[-process_requests_and_key_records_only]
重新数字键的语法:
KRATool -kratool_config_file /path/to/tool_config_file
-source_ldif_file /path/to/original_ldif_file
-target_ldif_file /path/to/newinstance_ldif_file
-log_file /path/to/tool_log_file
[-append_id_offset prefix_to_add | -remove_id_offset prefix_to_remove]
[-source_kra_naming_context name -target_kra_naming_context name]
[-process_requests_and_key_records_only]
选项 | 描述 |
---|---|
必要参数 | |
-kratool_config_file | 提供工具所使用的配置文件的完整路径和文件名。此配置过程告诉工具如何处理现有关键记录中的某些参数,无论是应用任何格式更改(如更改命名上下文还是添加偏移)还是是否更新修改日期。配置文件是必需的,且工具中包含了一个默认文件。文件格式在 第 27.2 节 “.cfg File” 中进行了描述。 |
-source_ldif_file | 提供 LDIF 文件的完整路径和文件名,该文件包含来自 旧 KRA 的所有密钥数据。 |
-target_ldif_file | 提供 LDIF 文件的完整路径和文件名,工具将从 新的 KRA 中写入所有密钥数据。此文件由工具在运行时创建。 |
-log_file | 提供日志文件的路径和文件名,用于记录工具进度和消息。此文件由工具在运行时创建。 |
可选参数 | |
-source_kra_naming_context | 提供原始 KRA 实例的命名上下文,即引用原始 KRA 的 DN 元素。密钥相关的 LDIF 条目具有带有 KRA 实例名称的 DN,如 cn=1,ou=kra,ou=requests,dc=alpha.example.com-pki-kra。该条目的命名上下文是 DN 值 alpha.example.com-pki-kra。这些条目可以从旧的 KRA 实例命名上下文重命名为新的 KRA 实例命名上下文自动重命名。
虽然此参数是可选的,但建议这样做,因为它表示在导入目标 KRA 之前不需要编辑 LDIF 文件。
如果使用此参数,则必须使用
-target_kra_naming_context 参数。
|
-target_kra_naming_context | 为新 KRA 实例指定命名上下文,原始密钥条目的名称应 更改为。密钥相关的 LDIF 条目具有带有 KRA 实例名称的 DN,如 cn=1,ou=kra,ou=requests,dc=omega.example.com-pki-kra。该条目的命名上下文是 DN 值 omega.example.com-pki-kra。这些条目可以从旧的 KRA 实例到新的 KRA 实例命名上下文自动重命名。
虽然此参数是可选的,但建议这样做,因为它表示在导入目标 KRA 之前不需要编辑 LDIF 文件。
如果使用此参数,则必须使用
-source_kra_naming_context 参数。
|
-process_requests_and_key_records_only | 从源 LDIF 文件中删除配置条目,仅保留密钥和请求条目。
虽然此参数是可选的,但建议这样做,因为它表示在导入目标 KRA 之前不需要编辑 LDIF 文件。
|
Rewrap 参数 | |
-source_pki_security_database_path | 提供 包含旧 KRA 实例使用的 NSS 安全数据库的目录的完整路径。
如果使用任何其他 rewrap 参数,则需要这个选项。
|
-source_storage_token_name | 提供存储 KRA 数据的令牌名称,如 内部令牌的内部密钥存储令牌,或为硬件令牌名称提供 NHSM6000-OCS 的名称。
如果使用任何其他 rewrap 参数,则需要这个选项。
|
-source_storage_certificate_nickname | 为 旧 KRA 实例提供 KRA 存储证书的别名。此证书将位于 旧 KRA 实例的安全数据库中,或者安全数据库将包含指向硬件令牌中的证书的指针。
如果使用任何其他 rewrap 参数,则需要这个选项。
|
-target_storage_certificate_file | 为新的 KRA 实例提供存储证书的 ASCII 格式文件的路径和文件名。在运行 KRATool 之前,应从新的 KRA 的数据库导出存储证书,并存储在可访问的位置。
如果使用任何其他 rewrap 参数,则需要这个选项。
|
-source_pki_security_database_pwdfile | 为密码文件提供路径和文件名,该文件仅包含 -source_storage_token_name 选项中给出的存储令牌的密码。
当使用其他 rewrap 参数时,此参数是可选的。如果没有使用此参数,则脚本会提示输入密码。
|
number offset 参数 | |
-append_id_offset | 提供一个 ID 号,该数字将预先指向每个导入的密钥,以防止可能的冲突。每个具有使用 KRATool 导出的密钥的 KRA 实例都应该使用唯一的 ID 偏移。
如果使用
-append_id_offset ,则不要使用 -remove_id_offset 选项。
|
-remove_id_offset | 提供一个从每个导入密钥开始删除的 ID 号。
如果使用
-remove_id_offset ,则不要使用 -append_id_offset 选项。
|