对称密码体制分分组密码与流密码。它们都是把明文分为一定长度的组,再用密钥对分组依次进行加密。与分组密码相相较,流密码不一样的地方有以下几点:
1.流密码对应的分组长度通常比较小,它能是1字节更甚者是1位,而分组密码中的分组长度相对比较大。
2.对不一样的分组,流密码采用不一样的密钥进行加密,一样的明文分组会由于在明文序列中的位置不一样而对应不一样的密文分组,分组密码,用相同的密钥加密,同样的明文分组无论在明文序列中的地方在哪里,总是和一样的密文分组相对应。
要构造不可破译的密码体制,所需的随机密钥数不能比传送的明文消息数少,但要用计算机产生很长的随机比特序列是非常困难的,需要付出很高的代价,因此这种密码体制是不实用的。“一次一密”体制即为此种密码体制,它是肯定安全的。
流密码技术是效仿“一次一密”体制同时又兼顾到实用性的结果。流密码中,加密/解密用的密钥序列是通过密钥流生成器借助确定性算法得到的伪随机序列,这是其与“一次一密”体制的根本区别所在。密钥流生成器实际是伪随机序列生成器,其把短的随机比特序列延伸成长得多的好像随机的比特序列,即伪随机序列。流密码体制不拥有“一次一密”体制的无条件安全性,不过却提升了实用性,如果算法设计得当,它的安全性是能达到实际应用所需的要求。流密码体制的安全强度是由密钥流决定的。因此,分析伪随机序列的安全可靠性及其生成的方法成为研究流密码时非常重要的问题。