依据密码系统分类
密码系统是由算法以及明文、密文和密钥组成的。基于密钥的算法通常有两类:对称算法和公开密钥算法。
根据密码系统分类
1.对称密码算法
对称密码算法有时又叫传统密码算法,就是加密密钥可以从解密密钥中推算出来,反过去也成立。在对称算法中,加/解密密钥是相同的。这些算法也叫秘密密钥算法或单密钥算法,它要求发送者和承受者在通讯之前,商定一个密钥。对称算法的安全性依赖于密钥,泄露密钥就意味着任何人都能抵消息停止加/解密。
对称算法可分爲两类。一次只对明文中的单个比特(有时对字节)运算的算法称爲序列算法或序列密码。另一类算法是对明文的一组比特亚行运算,这些比特组称爲分组,相应的算法称爲分组算法或许分组密码。古代计算秘密码算法的典型分组长度爲64比特,这个长度大到足够避免破译,但又小到足以方便运用(在计算机呈现前,算法普遍地每次只对明文的一个字符运算,可以为是序列密码对字符序列的运算)。
2. 公开密码算法
公开密钥算法(也叫非对称算法)是这样设计的:用作加密的密钥不同于用作解密的密钥,而且解密密钥独立的,加密和解密运用两种不同的密钥,加密密钥(公开密钥)向大众公开,解密密钥(秘密密钥)只要解密人本人晓得,合法运用者依据公开的加密密钥无法推算出解密密钥。它比单钥安全性强,合适于公开的环境。它的次要缺陷是保密强度的人爲控制力度不如单钥密码体制的程度,且加密速度也不如单钥加密算法快,尤其是在加密数据量较大时。
依据加密算法对明文的处置方式分类
双钥密码体制(又称为非对称密码体制,或公钥密钥体制)
双钥密码体制加密和解密是相对独立的,加密和解密使用两种不同的密钥,加密密钥(公开密钥)向公众公开,解密密钥(秘密密钥)只有解密人自己知道,非法使用者根据公开的加密密钥无法推算出解密密钥。它比单钥安全性强,适合于公开的环境。它的主要缺点是保密强度的人为控制力度不如单钥密码体制的水平,且加密速度也不如单钥加密算法快,尤其是在加密数据量较大时。
1.分组密码(又叫块密码)
分组密码即对固定长度的一组明文停止加密的算法。它将明文按一定的位长分组,然后辨别对这些分组加密或密文块。
2.流密码(又称爲序列密码)
流密码的加密方式是将明文逐一二进制位转化爲密文。在流密码中,线性复杂度是权衡序列不可预测性的重要目标。