3DES算法
3DES是DES加密算法的一种模式,它使用3条64位的密钥对数据进行三次加密
3DES是DES向AES过渡的加密算法,是DES的一个更安全的变形。
Ek()代表加密,Dk()代表解密,k代表密钥、P代表明文、C代表密表
3DES加密过程:C = Ek3( Dk2( Ek1§ ) )
3DES解密过程:P = Dk1( Ek2( Dk3© ) )
k1和k3可以根据数据对安全性的要求来决定是否用同一个密钥。
k1、k2、k3互不相同,本质上相当于用一个168位的密钥进行加密
如果对安全性要求没那么高,k1可以等于k3,这种情况下,密钥的有效长度为112位
RC4算法
RC4加密算法是一种密钥长度可变的流加密算法簇。之所以称其为簇,是由于其核心部分的S-box唱的可为任意,但一般为256字节。
该算法的速度可以达到DES加密的10倍左右。
RC4算法的原理分为两大部分:
- 初始化算法
- 伪随机子密码生成算法
在初始化的过程中,密钥的主要功能是将S-box搅乱,不同的S-box在经过伪随机子密码生成算法的不同处理后可以得到不同的子密钥序列,并且该序列是随机的。
得到的子密钥用于和明文进行xor运算,得到密文。
由于RC4算法加密采用的是xor,所以,一旦子密钥序列出现了重复,密文就有可能被破解。(注意避免弱密钥)