CPK是什么

信息安全领域,CPK是“CombinedPublicKey”的缩写,即中文名为组合公钥,是一种加密算法,以很小的资源,生成大规模密钥。

组合公钥CPK(CombinedPublicKey)基于标识的数字签名协议和密钥交换协议,满足证明的规模性和验证的直接性,真正实现了Shamir的设想,开辟了以组合化解决规模化的新路。

2007年在组合公钥的基础上,形成了双因子复合型组合公钥TF-CPK,保留了组合公钥的优点,增强了安全性,分别实现了复合化数字签名和密钥交换机制,解决了在集中式管理模式下由个人定义签名密钥的难点。

原理

CPK密钥管理体制是离散对数难题型的基于标识(身份)的密钥生成与管理的体制。

它依据离散对数难题的数学原理构建公开密钥与私有密钥矩阵,采用杂凑函数与密码变换将实体的标识映射为矩阵的行坐标与列坐标序列,用以对矩阵元素进行选取与组合,生成数量庞大的由公开密钥与私有密钥组成的公钥、私钥对,从而实现基于标识的超大规模的密钥生产与分发。

CPK密钥管理体制中密钥生产与管理是集中式的,它通过注册部(RA)、生产部(PA)和发行部(DA)接受实体的申请,对身份进行核查,生产基于标识的私钥,并向实体静态分发。

各实体的私钥是分散保存的,而公开密钥矩阵可以采用最容易访问的方式存放,供任意实体方便调用,使任意实体均能根据对方标识生产出其公开密钥。?

CPK密钥管理体制还采用定义作用域密钥参数的方法,实现不同系统的分割;采用一个实体多个标识的设置,满足一卡多用的需求,使得该体制更增强了应用中的安全性、灵活性和适应性。

CPK密钥管理体制既可以基于一般有限域离散对数问题构建,也可以基于椭圆曲线离散对数问题构建。鉴于椭圆曲线离散对数问题在密码应用中具有在相同安全度条件下所占用的资源小于一般有限域离散对数问题的优势。

以上内容参考:

百度百科-CPK