密码体制介绍
经典密码体制
密码体制可以用数学表示为一个五元组(P,C,K,E,D)
:
- P表示所有可能明文(Plaintext)组成的优先集,即明文空间。
- C表示所有可能密文(Ciphertext)组成的有限集,即密文空间。
- K标识所有可能密钥(Secret Key)组成的有限集,即密钥空间。
- E为加密(Encrypt)法则,是P×K->C上的映射。
- D为解密(Decrypt)法则,是C×K->P上的映射。
那么
- 加密过程可以表示为:
C = E(P,K)
- 解密过程可以表示为:
P = D(C,K)
并且有P = D(E(P,k1), k2),其中:k1为加密密钥,k2为解密密钥。 如果有k1 = k2,则称为对称密码体制, 如果k1 ≠ k2,则称为非对称密码体制,也称双钥密码体制。
对称密码
对称密码体制中的加密密钥与解密密钥相同,或者说实质上等同(可相互推导)。
从加密模式上分,对称密码体制又可分为流密码(stream cipher)与分组密码 (block cipher)两类。
流密码模型:
分组密码模型: (略)
常见的对称密码算法有DES、AES、RC4等,其中前两个是属于分组密码,最后的RC4属于 流密码。
双钥密码
在双钥密码体制中,加密密钥与解密密钥是不相同的。其中,加密密钥又被称为公开密钥, 解密密钥被称为私密密钥。显然公开密钥是需要对外公开的,而私密密钥则要求严格保密。 常见的双钥密码有RSA、ECC等。
双钥密码体制既可以用来加/解密也可以用来认证。
- 加密/解密:
P = D(E(P, pub-key), priv-key)
- 认证:
P = E(D(P, priv-key), pub-key)
对于以上两种,可以分别假设如下情景(前提是Bob拥有自己的密钥对,并将其中的公钥 公开):
加密:Alice想给Bob发送一个秘密信息,当然是只想让Bob看到,不想让其他人知道了, 那么就可以这么做。
- Alice用Bob的公钥将信息加密,然后发送给Bob。
- Bob收到加密过的信息后,用自己的私钥解密,即可得知信息内容了。
认证:Alice在网上跟“Bob”聊天,但是他怎么可以确定对方就是Bob,而不是别人假冒的 呢?
- Alice让Bob加密一个指定的信息,然后发给自己。
- Bob于是很听话的用自己的私钥加密了指定信息,发给了Alice。
- Alice收到后,用Bob的公钥解密。如果发现解密后的内容与原内容一致,则可证明 发信认的确是Bob(因为理论上该私钥只有Bob一个人知道)。
量子密码
量子密码学是一门新兴的学科,它以密码学和量子力学特性为基础。其安全性由 海森堡测不准原理及单量子不可复制定理保证。
海森堡测不准原理
(暂略)
单量子不可复制定理
该定理是海森堡测不准原理的推论,它指在不知到量子状态的情况下复制单个量子是不可能 的,因为要复制单个量子就只能先作测量,而测量必然改变量子的状态。
Last update:
2022-12-14