对称秘钥密码体系

发布时间 2023-04-24 14:52:09作者: kingwzun

密码学原理

加密解密公式

  • 明文用M(消息Message)或P(明文Plaintext)表示,密文用C(Ciphertext)表示。

  • 加密函数E作用于M得到密文C,用数学式子表示为:\(E(M)=C\)
    相反地,解密函数D作用于C产生M,表示为:\(D(C)=M\)

  • 先加密后再解密消息,原始的明文将恢复出来,下面的等式必须成立:

\[D(E(M))=M \]

注意:加密和解密离不开密钥的参与

安全密码准则

  • 所有算法的安全性都基于密钥的安全性,而不是基于算法细节的安全性。

  • 密钥空间,算法步数

  • 只有公开的算法才是安全的。
    因为公开的算法集结了各种思想,如果公开了还未破解,则能说明算法安全。

  • 时间和实践检验

对称密钥密码和非对称密钥密码

基于密钥的算法通常有两类:对称密钥算法(秘密密钥算法)和非对称算法(公开秘密密钥算法)。

对称算法有时又叫传统密码算法
就是加密密钥能够从解密密钥中容易地推算出来,反过来也成立。在大多数对称算法中,加/解密密钥是相同的。

对称算法可分为两类。

  • 一次只对明文中的单个比特(有时对字节)运算的算法称为序列密码或流密码算法
  • 另一类算法是对明文的一组比特进行运算,这些比特组称为分组,相应的算法称为分组算法

非对称算法也叫做公开密钥算法
是因为加密密钥能够公开,即他人能用加密密钥加密信息,但只有用相应的解密密钥才能解密信息。
非对称算法是这样设计的:用作加密的密钥不同于用作解密的密钥,而且解密密钥不能根据加密密钥计算出来(至少在合理假定的有限时间内)。