话不多说,接着我们的密码学系列开讲,之前和大家讨论了信息安全的威胁,接下开始我们的密码学第一课—— 流密码 ,它是以最小单位 比特 作为一次加密、解密的操作元素,利用加密算法进行加密与解密。流密码的基本思想是利用密钥 k 产生一个密钥流 z ,并利用相应的规则对明文串 x进行加密,所得到的密文为: y 。
而流密码与所谓的分组密码最大的差距除了对于明文的处理方式不同以外,还有其加密器中是否含有记忆元件,流密码的加密器中存在记忆元件,而分组密码不存在,也正是由于这个记忆元件,我们可以进一步将流密码分为同步流密码和自同步流密码。
同步流密码:
是不是听起来有点复杂,但其实它取决于加密器中记忆元件的存储状态,独立于明文字符的叫做同步流密码,否则叫做自同步流密码, 但其实对于自同步流密码来说,它的密钥流的产生与输入的明文有关, 所以在理论上我们很难能够去分析清楚。而目前,我们在流密码方面的所有科研成果绝大多数都是关于同步流密码的。
同步流密码的加密过程都与明文无关,故我们得到的密文也与明文直接联系。所以,通常情况下我们将同步流密码的加密器分成 密钥流产生器 和 加密变换器 两个部分。在下图所表示的就是流密码的加密和解密流程。