Page 329 - 《软件学报》2026年第6期
P. 329
2648 软件学报 2026 年第 37 卷第 6 期
1 引 言
传统的公钥基础设施 (public key infrastructure, PKI) 框架使用证书来确保用户公钥的真实性. 用户注册时, 证
书颁发机构为其公钥和身份信息颁发证书. 用户的证书本质上是绑定用户实体及其公钥的数字签名, 第三方可以
通过验证证书的正确性来验证用户的身份. 尽管 PKI 框架提供了诸如机密性、完整性和不可否认性等重要的安全
[2]
属性, 但其部署和管理的主要挑战在于对支持证书的公钥基础设施的需求 [1] . 1984 年, Shamir 提出了一种基于身
份的密码体系 (identity-based cryptography, IBC) 来解决这一问题. 在基于身份的密码学方案中, 用户的公钥可以直
接从其身份信息 (如姓名、电子邮件地址等) 生成, 而无需传统的公钥基础设施框架中的证书, 简化了公钥管理
流程.
几乎所有的密码系统都依赖一个强有力的假设, 即用户能够始终安全地保护自己的私钥. 然而, 现实中私钥面
临着越来越多的暴露风险. 首先, 密码系统常常运行在物理安全性较低的设备上, 如手机和物联网边缘节点, 这些
设备防御攻击的能力有限, 攻击者可以通过攻击设备来获取其中存储的私钥. 其次, 包含侧信道攻击在内的攻击手
段 [3,4] 的不断丰富也增加了防御难度. 在许多情况下, 从被盗设备中获取私钥 (或通过欺骗毫无戒心的用户) 比破坏
系统安全所依赖的计算假设要容易得多.
为了减轻私钥暴露带来的危害, 在 PKI 框架下, 通常使用认证撤销列表 (certification revocation list, CRL) 来撤
销被暴露私钥对应的公钥. 然而, 在基于身份的密码方案中, 私钥暴露可能意味着暴露私钥的相应实体不能再将其
身份信息作为公钥.
在身份基密码系统中, 处理私钥暴露问题的方法主要有两种. 第 1 种通过秘密共享 [5] , 用户将私钥拆成多个分
片并分发给多个服务器. 阈值密码学 [6] 是这种方法的典型实例. 然而, 门限式共享的成本相对较高, 适用于大公司
或认证机构, 而普通用户通常无法采用. 前向安全 [7,8] 是解决私钥暴露问题的另一个解决方案. 在前向安全方案中,
用户会在每个时间段开始时更新自己的私钥并销毁旧私钥. 因此当前私钥的泄露不会使对手在之前的任何时间段
内破坏该方案. 但是, 这样一个完全暴露的私钥必然会损害未来所有系统的安全性, 即不满足后向安全性.
2002 年, Dodis 等人 [9] 提出了密钥隔离密码学的方法. 在密钥隔离方案中, 固定私钥被存储在物理安全设备中,
这保证了被存储的固定私钥的安全性. 协议的生命周期分为 N 个不同的周期. 在每个周期开始时, 物理不安全设
备通过与物理安全设备交互来更新存储在物理不安全设备中的临时私钥. 所有的签名/解密操作都是由物理不安
全设备使用临时私钥完成的.
密钥隔离方案需要符合密钥隔离性. k-N 密钥隔离性要求在暴露任意 k 个时间片的私钥的情况下, 未泄漏的时
间片的私钥仍然能保证安全并且签名具有不可伪造性. 完美密钥隔离性要求在最坏情况下, 即对手自适应地选择
N 个时间片中的 N−1 个时间片的临时密钥发生泄露时, 未泄漏的时间片的私钥仍然能保证安全. 当将密钥隔离方
法应用于基于身份的签名时, 可以有效地解决基于身份的方案的私钥暴露问题.
近年来, 我国为满足自主安全可控的战略需求, 发布了多项密码算法, 其中 SM9 标识密码 [10] 是我国自主设计
的商用标识密码. 然而, SM9 旨在满足信息系统通用的基本安全需求 (即数据机密性和完整性). 目前暂无针对 SM9
设计的密钥隔离签名方案.
本文贡献如下: 本文提出了密钥隔离的 SM9 身份基签名算法. 该方案引入了一个受用户控制的物理安全设
备. 私钥生成中心为用户生成固定私钥并存储在物理安全设备中. 每个时间段 i 开始时, 物理安全设备使用固定私
钥生成当前时段对应的临时私钥发送给用户的物理不安全设备 (如手机等), 物理不安全设备使用临时私钥对发送
消息进行签名. 即使敌手在某些时间段获得了用户泄露的临时私钥, 仍无法伪造其他时间段的签名, 保障了签名系
统的前向安全和后向安全.
本文第 2 节介绍密钥隔离密码系统和国密 SM9 标识签名的相关工作. 第 3 节介绍基础知识、密码隔离的身
份基签名的系统模型和密钥隔离的身份基签名的安全模型. 第 4 节给出密钥隔离的 SM9 身份基签名算法的详细
构造. 第 5 节给出完整的安全性证明, 证明了本方案符合基于身份的签名不可伪造性和密钥隔离性. 第 6 节给出性
能分析与实验结果.

