专栏
天翼云开发者社区

PQ3后量子加密协议

2024-03-01 15:10:36 29阅读

背景

消息平台一直使用经典的公钥密码,如RSA、椭圆曲线签名和Diffie-Hellman密钥交换,来在设备之间建立安全的端到端加密连接。所有这些算法都是基于困难的数学问题,这些问题长期以来被认为计算量太大,计算机无法解决。然而,量子计算的兴起有可能改变这个等式。一台足够强大的量子计算机可以以根本不同的方式解决这些经典数学问题,因此,在理论上,其速度之快足以威胁端到端加密通信的安全性。尽管具有这种能力的量子计算机还不存在,但资源极其充足的攻击者已经可以收集大量今天的加密数据,并将其全部存档以供将来参考。尽管他们现在无法解密这些数据,但他们可以保留这些数据,直到未来他们获得一台可以解密的量子计算机,这种攻击场景被称为“Harvest Now, Decrypt Later”。

为了减轻未来量子计算机的风险,密码学界一直在研究后量子密码学(PQC):新的公钥算法,为量子安全协议提供构建块,但不需要量子计算机运行——也就是说,可以在我们今天使用的非量子计算机上运行的协议,但这仍然是安全的,不会受到未来量子计算机带来的已知威胁。

正是在这一背景下苹果公司于今年2月份发表了PQ3,PQ3是一种开创性的后量子加密协议,推动了端到端安全消息的发展,具有世界上任何大规模消息传递协议中最强的安全特性。

简介

苹果公司定义的消息应用加密安全等级

Level0:默认情况下没有端到端加密,也没有量子安全。

Level1:默认情况下有端到端加密,但没有量子安全。

Level2:默认情况下有端到端加密,且在初始密钥的建立过程中应用后量子密码学。只有在会话密钥材料从未被泄露的情况下才能保证量子安全。

Level3:默认情况下有端到端加密,使用后量子密码学来保护初始密钥建立和正在进行的消息交换,即使给定密钥被泄露,也能够快速自动恢复会话的密码安全性。

PQ3 是第一个达到苹果制定的 3 级安全性的消息传递协议。

协议设计

PQ3采用了一种混合设计,在初始密钥建立和Rekey期间,将椭圆曲线密码与后量子加密(Kyber)相结合,通过限制使用单个泄露的密钥可以解密多少过去和未来的消息,来减轻密钥泄露的影响。

后量子密钥建立

每个具有PQ3的设备都注册两个公共加密密钥到IDS服务器,并定期用新的密钥替换它们:

  1. 一种后量子Kyber-1024密钥封装公钥

  2. 一种经典的P-256椭圆曲线密钥(ECDH)协商公钥

例如当Alice的设备实例化与Bob的设备的新会话时,她的设备向IDS服务器查询与Bob设备相关联的密钥包。 然后,Alice的设备可以使用这两个公共加密密钥与Bob共享两个对称密钥

第一对称密钥是通过ECDH密钥交换来计算的,该ECDH密钥将来自Alice的短暂加密密钥与Bob的注册P-256公钥相结合。

第二个对称密钥是从具有Bob的后量子公钥的Kyber密钥封装中获得的。 然后通过HKDF-SHA384-extract组合这两个对称密钥为初始的消息密钥;这意味着攻击者需要破坏这两种算法才能恢复生成的机密,从而满足我们的混合安全要求。

周期性进行的后量子Rekey

PQ3的Rekey方法是在棘轮技术之后建模的,结合了三个棘轮来实现后量子加密。

  1. 第一个棘轮被称为对称棘轮,用于保护会话中的旧消息,以实现前向保密。

  2. 第二个棘轮被称为ECDH棘轮,通过使用椭圆曲线密钥协议中的新熵更新会话来保护未来的消息,确保后泄露安全(即使在已经泄露了过去的会话密钥的情况下对手也失去了解密新消息的能力)。

  3. 第三个棘轮是基于Kyber KEM(密钥封装机制)的棘轮。使用Kyber-768实例化了后量子KEM,与用于初始密钥建立的IDS注册公钥不同,棘轮公钥只使用一次来向接收方封装共享密钥,从而大大限制了单个密钥泄露的影响。

由于第二个棘轮使用经典密码学,因此PQ3添加了一个有条件执行的基于Kyber KEM的棘轮。第三个棘轮补充了基于ECDH的棘轮,以提供针对Harvest Now、Decrypt Later量子攻击的妥协后安全性。

与初始会话密钥建立类似,通过三个棘轮建立的密钥材料都通过HKDF-SHA384-extract与演进会话密钥相结合。在这个过程的最后,我们获得了一个最终的消息密钥,该密钥现在可以用于加密有效载荷。

此外苹果还实现了一个自适应的后量子Rekey标准,该标准考虑了传出消息的数量、自上次Rekey以来经过的时间以及当前的连接条件。这意味着大约每50条消息执行一次后量子棘轮,但该标准是有界的,因此总是保证每7天至少进行一次Rekey。

名词解释

Rekey:Rekey是指通信两端定期更换加密信道秘钥的机制。

Kyber:Kyber是一种IND-CCA2安全的密钥封装机制。Kyber的安全性基于在模格(MLWE问题)中解决LWE问题的难度。

ECDH:非对称加密算法椭圆曲线加密算法中的一种,可理解为一种密钥协商协议。

IDS:Identity Directory Service,苹果的身份目录服务

HKDF-SHA384-extract:基于HMAC的提取和扩展密钥派生函数。它是一种密钥派生函数,用于从较短的输入密钥中派生出更长的输出密钥。

棘轮算法:用于通信双方基于共享密钥交换加密消息。通信双方将为每一个双棘轮消息派生出新的密钥,使得旧的密钥不能从新的密钥计算得到。通信双方还将在消息中附上迪菲-赫尔曼公钥值。迪菲-赫尔曼计算的结果将被混入派生出的密钥中,使得新的密钥不能从旧的密钥计算得到。这些特性将在某一方的密钥泄漏后保护此前或此后的加密消息。

  • 0
  • 0
  • 0
0 评论
0/1000
评论(0) 发表评论
wbq

wbq

15 篇文章 0 粉丝
关注

PQ3后量子加密协议

2024-03-01 15:10:36 29阅读

背景

消息平台一直使用经典的公钥密码,如RSA、椭圆曲线签名和Diffie-Hellman密钥交换,来在设备之间建立安全的端到端加密连接。所有这些算法都是基于困难的数学问题,这些问题长期以来被认为计算量太大,计算机无法解决。然而,量子计算的兴起有可能改变这个等式。一台足够强大的量子计算机可以以根本不同的方式解决这些经典数学问题,因此,在理论上,其速度之快足以威胁端到端加密通信的安全性。尽管具有这种能力的量子计算机还不存在,但资源极其充足的攻击者已经可以收集大量今天的加密数据,并将其全部存档以供将来参考。尽管他们现在无法解密这些数据,但他们可以保留这些数据,直到未来他们获得一台可以解密的量子计算机,这种攻击场景被称为“Harvest Now, Decrypt Later”。

为了减轻未来量子计算机的风险,密码学界一直在研究后量子密码学(PQC):新的公钥算法,为量子安全协议提供构建块,但不需要量子计算机运行——也就是说,可以在我们今天使用的非量子计算机上运行的协议,但这仍然是安全的,不会受到未来量子计算机带来的已知威胁。

正是在这一背景下苹果公司于今年2月份发表了PQ3,PQ3是一种开创性的后量子加密协议,推动了端到端安全消息的发展,具有世界上任何大规模消息传递协议中最强的安全特性。

简介

苹果公司定义的消息应用加密安全等级

Level0:默认情况下没有端到端加密,也没有量子安全。

Level1:默认情况下有端到端加密,但没有量子安全。

Level2:默认情况下有端到端加密,且在初始密钥的建立过程中应用后量子密码学。只有在会话密钥材料从未被泄露的情况下才能保证量子安全。

Level3:默认情况下有端到端加密,使用后量子密码学来保护初始密钥建立和正在进行的消息交换,即使给定密钥被泄露,也能够快速自动恢复会话的密码安全性。

PQ3 是第一个达到苹果制定的 3 级安全性的消息传递协议。

协议设计

PQ3采用了一种混合设计,在初始密钥建立和Rekey期间,将椭圆曲线密码与后量子加密(Kyber)相结合,通过限制使用单个泄露的密钥可以解密多少过去和未来的消息,来减轻密钥泄露的影响。

后量子密钥建立

每个具有PQ3的设备都注册两个公共加密密钥到IDS服务器,并定期用新的密钥替换它们:

  1. 一种后量子Kyber-1024密钥封装公钥

  2. 一种经典的P-256椭圆曲线密钥(ECDH)协商公钥

例如当Alice的设备实例化与Bob的设备的新会话时,她的设备向IDS服务器查询与Bob设备相关联的密钥包。 然后,Alice的设备可以使用这两个公共加密密钥与Bob共享两个对称密钥

第一对称密钥是通过ECDH密钥交换来计算的,该ECDH密钥将来自Alice的短暂加密密钥与Bob的注册P-256公钥相结合。

第二个对称密钥是从具有Bob的后量子公钥的Kyber密钥封装中获得的。 然后通过HKDF-SHA384-extract组合这两个对称密钥为初始的消息密钥;这意味着攻击者需要破坏这两种算法才能恢复生成的机密,从而满足我们的混合安全要求。

周期性进行的后量子Rekey

PQ3的Rekey方法是在棘轮技术之后建模的,结合了三个棘轮来实现后量子加密。

  1. 第一个棘轮被称为对称棘轮,用于保护会话中的旧消息,以实现前向保密。

  2. 第二个棘轮被称为ECDH棘轮,通过使用椭圆曲线密钥协议中的新熵更新会话来保护未来的消息,确保后泄露安全(即使在已经泄露了过去的会话密钥的情况下对手也失去了解密新消息的能力)。

  3. 第三个棘轮是基于Kyber KEM(密钥封装机制)的棘轮。使用Kyber-768实例化了后量子KEM,与用于初始密钥建立的IDS注册公钥不同,棘轮公钥只使用一次来向接收方封装共享密钥,从而大大限制了单个密钥泄露的影响。

由于第二个棘轮使用经典密码学,因此PQ3添加了一个有条件执行的基于Kyber KEM的棘轮。第三个棘轮补充了基于ECDH的棘轮,以提供针对Harvest Now、Decrypt Later量子攻击的妥协后安全性。

与初始会话密钥建立类似,通过三个棘轮建立的密钥材料都通过HKDF-SHA384-extract与演进会话密钥相结合。在这个过程的最后,我们获得了一个最终的消息密钥,该密钥现在可以用于加密有效载荷。

此外苹果还实现了一个自适应的后量子Rekey标准,该标准考虑了传出消息的数量、自上次Rekey以来经过的时间以及当前的连接条件。这意味着大约每50条消息执行一次后量子棘轮,但该标准是有界的,因此总是保证每7天至少进行一次Rekey。

名词解释

Rekey:Rekey是指通信两端定期更换加密信道秘钥的机制。

Kyber:Kyber是一种IND-CCA2安全的密钥封装机制。Kyber的安全性基于在模格(MLWE问题)中解决LWE问题的难度。

ECDH:非对称加密算法椭圆曲线加密算法中的一种,可理解为一种密钥协商协议。

IDS:Identity Directory Service,苹果的身份目录服务

HKDF-SHA384-extract:基于HMAC的提取和扩展密钥派生函数。它是一种密钥派生函数,用于从较短的输入密钥中派生出更长的输出密钥。

棘轮算法:用于通信双方基于共享密钥交换加密消息。通信双方将为每一个双棘轮消息派生出新的密钥,使得旧的密钥不能从新的密钥计算得到。通信双方还将在消息中附上迪菲-赫尔曼公钥值。迪菲-赫尔曼计算的结果将被混入派生出的密钥中,使得新的密钥不能从旧的密钥计算得到。这些特性将在某一方的密钥泄漏后保护此前或此后的加密消息。

文章来自专栏

通信安全

1 篇文章 1 订阅
0 评论
0/1000
评论(0) 发表评论
  • 0
    点赞
  • 0
    收藏
  • 0
    评论