跳转到内容

密码学/对称密码

来自维基教科书,开放的书籍,开放的世界

对称密钥密码(也称为秘密密钥密码单密钥密码私钥密码共享密钥密码共享_secretis是一种使用相同的(必须保密的)密钥来加密和解密消息的密码。

在 1970 年代非对称密钥密码(通常称为“公钥/私钥”密码)发明之前,所有密码都是对称的。通信的每一方都需要一个密钥来加密消息;而接收方需要相同的密钥来解密消息。这带来了一个重大问题,因为它要求所有各方都拥有一个安全的通信系统(例如面对面会议或安全快递)才能分发所需的密钥。随着参与者数量的增加,所需安全传输的数量会以不可接受且完全不切实际的速度快速增加。

正式定义

[编辑 | 编辑源代码]

任何基于对称密钥密码的密码系统都符合以下定义

  • M : 要加密的消息
  • K : 秘密密钥
  • E : 加密函数
  • D : 解密函数
  • C : 加密后的消息。C := E(M, K)
  • 对于所有 M、C 和 K,M = D(C,K) = D(E(M,K),K)

互逆密码

[编辑 | 编辑源代码]

一些共享密钥密码也是“互逆密码”。互逆密码对解密消息应用与加密消息相同的变换。在上面的正式定义中,对于互逆密码,E = D。

互逆密码的一个例子是Rot 13,其中在两种情况下都使用相同的字母移位。

异或密码(通常与一次性密码本一起使用)是另一种互逆密码。[1]

互逆密码的优点是,解码机器可以完全按照编码机器设置——互逆密码不需要操作员记住在“解码”和“编码”之间切换。[2]

对称密码的优点

[编辑 | 编辑源代码]

对称密钥密码通常比非对称密码的计算开销Overhead_(computing)要低得多,有时这种每个字符的计算开销差异可以达到几个数量级。[3] 因此,它们仍然用于文件和数据流的批量加密,以用于在线应用程序。

要建立两方之间的安全通信会话Session_key,需要执行以下操作Transport_Layer_Security

  1. 爱丽丝告诉鲍勃(以明文形式)她想要一个安全的连接。
  2. 鲍勃生成一对一次性(会话)公钥/私钥(非对称)密钥(Kpb Kpr)。
  3. 爱丽丝生成一个一次性(会话)对称密钥。这将是共享的秘密(Ks)。
  4. 鲍勃将公钥(Kpb)发送给爱丽丝。
  5. 爱丽丝使用公钥 Kpb 加密她的共享会话密钥 Ks Ck := E(Ks, Kpb) 并将其发送给鲍勃
  6. 鲍勃使用他的私钥解密消息以获得共享会话密钥 Ks := D(Ck, Kpr)
  7. 现在爱丽丝和鲍勃拥有一个共享的秘密(对称密钥)来保护此连接上的此会话的通信。
  8. 任何一方都可以通过简单地 C := E(M, Ks) 来加密消息,并通过 M = D(C,K) = D(E(M,Ks),Ks) 来解密消息。

这是 Diffie-Hellman Diffie_Hellman_key_exchange 密钥交换及其更高级的后继者Transport_Layer_Security 的基础。


进一步阅读

[编辑 | 编辑源代码]

对称密钥算法


密码学书籍的这一页或部分是一个存根。您可以通过扩展它来帮助维基教科书。

  1. 维基百科:对称密钥算法#互逆密码
  2. Greg Goebel。 "密码的机械化"。 2018 年。
  3. http://s3.amazonaws.com/academia.edu.documents/33551175/IJETAE_1211_02.pdf?AWSAccessKeyId=AKIAIWOWYYGZ2Y53UL3A&Expires=1499689317&Signature=EavACFmNNlzcPXDa5kVZS9rh7Yw%3D&response-content-disposition=inline%3B%20filename%3DDES_AES_and_Blowfish_Symmetric_Key_Crypt.pdf
  4. https://www.schneier.com/blog/archives/2004/10/the_legacy_of_d.html
  5. https://www.schneier.com/academic/blowfish/
  6. https://books.google.com/books?hl=en&lr=&id=fNaoCAAAQBAJ&oi=fnd&pg=PA1&dq=speed+advantages+in+symmetric+ciphers+aes&ots=7hPPzLQjm5&sig=kaBEJW49jdonFWKin0-p6ZhROCA#v=onepage&q=speed%20advantages%20in%20symmetric%20ciphers%20aes&f=false
  7. http://s3.amazonaws.com/academia.edu.documents/33551175/IJETAE_1211_02.pdf?AWSAccessKeyId=AKIAIWOWYYGZ2Y53UL3A&Expires=1499689317&Signature=EavACFmNNlzcPXDa5kVZS9rh7Yw%3D&response-content-disposition=inline%3B%20filename%3DDES_AES_and_Blowfish_Symmetric_Key_Crypt.pdf
华夏公益教科书