密码学中,密码体制(英语:Cryptosystem)是一套密码学算法,用以提供某种安全性,如机密性(对应算法称为加密)。 [1]
典型的密码体制有三部分:密钥生成、加密、解密。而“密码”(cipher或cypher)一词,有时则仅指加密与解密这对算法。相比之下,密码体制则包含密钥生成算法,所以有时用作强调其重要性。故“密码体制”常用于讨论公钥技巧,而“密码”和“密码体制”皆会用于讨论对称密钥加密技巧。
密码学中,密码体制是满足以下条件的五元组 :
- 表示所有可能的明文的有限集,称为明文空间。
- 表示所有可能的密文的有限集,称为密文空间。
- 表示所有可能的密钥的有限集,即密钥空间。
- 对任意,均存在一个确定的加密规则,是的函数。是该些加密函数组成的集合。
- 同样对任意,均存在确定的解密规则,是的函数。为该些解密函数的集合。
- 最后,对每个公钥,存在私钥使得对全部成立。[2]
以上定义中,并未分辨加密法是对称密钥加密还是公开密钥加密。若仅考虑加密与解密钥相等的情况,则末三个条件可改写为:
- 对任意,均存在一个确定的加密法则,和对应解密法则;并对每一组和,都对任意明文有。[3]
末一项保证了使用加密方式对明文进行加密后,也可用相应的解密方式对密文进行解密,得到原本的明文。该条件推出,加密方式必须是一个单射函数,即不同明文加密后不可对应相同密文。如果密文空间和明文空间一样,那么这个加密方式就是一个置换。
古典例子有凯撒密码,其加密方式是字母表的一个置换。现代例子则有RSA密码体制。
- ^ Menezes, A.; Oorschot, P. van; Vanstone, S. Handbook of Applied Cryptography 5th. CRC Press. 1997. ISBN 0-8493-8523-7 (英语).
- ^ Buchmann, Johannes A. Introduction to Cryptography 2nd. Springer. 13 July 2004. ISBN 0-387-20756-2 (英语).
- ^ Douglas. R. Stinson; 冯登国(译). 密码学原理与实践 Cryptography: Theory and Practice 第二版. 电子工业出版社. 2003. ISBN 7505384651.