流密码

✍ dations ◷ 2025-08-02 14:03:19 #密码学,算法,流密码

在密码学中,流密码(英语:Stream cipher),又译为流加密、数据流加密,是一种对称加密算法,加密和解密双方使用相同伪随机加密数据流(pseudo-random stream)作为密钥,明文数据每次与密钥数据流顺次对应加密,得到密文数据流。实践中数据通常是一个位(bit)并用异或(xor)操作加密。

该算法解决了对称加密完善保密性(perfect secrecy)的实际操作困难。“完善保密性”由克劳德·香农于1949年提出。由于完善保密性要求密钥长度不短于明文长度,故而实际操作存在困难,改由较短数据流通过特定算法得到密钥流。

伪随机密钥流(keystream)由一个随机的种子(seed)通过算法(称为:PRG,pseudo-random generator)得到,k作为种子,则G(k)作为实际使用的密钥进行加密解密工作。

为了保证流加密的安全性,PRG必须是不可预测的。弱算法包括glibc random()函数,线性同余生成器(linear congruential generator)等。

线性同余生成器中,令rseedr =(a * r + b)mod p,其中a,b,p均为常数,则可轻易顺次推出整个密钥流,从而进行解密。

一种严重的错误即反复使用同一密码本对不同明文进行加密。攻击者可利用这种方式对密文进行解密。

用p表示明文,C表示密文,k表示种子,PRG表示密钥流生成算法,则:

攻击者监听到此段消息(包含两段相同密钥流加密的密文)后,即可利用:

足量的冗余(此处表示p1,p2)则可破解明文。

一个失败的例子即WEP网络传输协议。

WEP已被WPA和WPA2取代。

当硬盘使用流加密时,同样会使用同一密码本对不同文本进行加密,因而调换两个文本中少量信息,可以得到同样的冗余结果。避免这个问题的方案通常是避免使用流加密。

相关

  • 辅酶Q6-dimethoxy-3-methylcyclohexa-2,5-diene-1,4-dione辅酶Q10(Coenzyme Q10,CoQ10),又称泛醌(Ubiquinone,UQ)、辅酶Q(Coenzyme Q,CoQ),商品名悠卡诺(ubidecarenone),是一种存在于所有行有氧
  • 甘油磷脂甘油磷脂(Phosphoglyceride或Glycerophospholipid)是由甘油构成的磷脂,其分子结构中甘油的1号和2号位羟基均被脂酰基取代,3号位羟基则为含磷基团所取代。是一种两性分子。它们是
  • 贡贝黑猩猩战争贡贝黑猩猩战争(也被称作贡贝“四年战争”),从1974年持续到1978年,是发生在坦桑尼亚贡贝溪国家公园两个黑猩猩族群之间的一起暴力冲突。交战双方分别为卡萨克拉族群和卡哈马族群
  • 索科坐标:43°30′38″N 70°26′42″W / 43.51056°N 70.44500°W / 43.51056; -70.44500索科(英语:Saco),是美国缅因州约克县的一座城市,位于索科河畔。根据美国2000年人口普查,人口
  • 美国团结党美国团结党(英语:American Solidarity Party,缩写为ASP)是美国的一个基督教民主主义政党,格言为“共同善性,共同立场,共同常识”("Common Good, Common Ground, Common Sense")。党内
  • 钻石系列运载火箭钻石号系列运载火箭(法语:Diamant 意为钻石),为法国第一个完全自行研制的火箭,是一不可重复使用的卫星发射系统且不由美国或苏联协助建造,钻石号系列运载火箭为其后的欧罗巴运载火
  • 西经170度线所有坐标的地图 - OSM 所有坐标的地图 - Google 所有上至200个坐标的地图 - Bing西经170度线,是本初子午线向西170度的经线,是为西经170°。该经线穿过的大部分地区为海洋。此
  • 三泰三泰(满语:ᠰᠠᠨᡨᠠᡳ,穆麟德:,?-1758年),汉军正白旗人,石氏,清朝政治人物、清朝礼部尚书。侍卫出身,曾任左都御史。雍正九年(1731年)三月乙酉,接替常寿,担任清朝礼部尚书,后休。由来保接任
  • 台州有轨电车台州有轨电车又称台州现代有轨电车,是指位于中华人民共和国浙江省台州市计划建设的具有独立路权的中运量交通运输系统。台州有轨电车项目由台州市公交集团牵头实施,并负责项目
  • Absolute First Album《Absolute First Album》是韩国女子音乐组合T-ara的出道录音室专辑。专辑最初计划以迷你专辑形式先行发卖,但是最终改为完整专辑。专辑收录当年上半年的四首歌曲,以及《Good