流密码

✍ dations ◷ 2025-05-21 17:55:46 #密码学,算法,流密码

在密码学中,流密码(英语: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取代。

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

相关

  • 综合征 (电视剧)《症候群》(韩语:신드롬,英语:Syndrome,又名《综合症》),为韩国JTBC自2012年2月13日起至4月17日播出的月火连续剧,共20集。由韩惠轸、宋昶仪、朴建炯、曹在显、金成铃与金佑锡等人主
  • 弹道学弹道学(英语:ballistics)是一门研究抛射物飞行、受力及其它运动行为的应用物理学科。通过弹道学,子弹、炮弹、重力炸弹、火箭等非制导武器可以达到理想的状态。弹道学是兵器类专
  • 楔齿龙类楔齿龙类(学名:Spenacodontia)是个演化支,包括楔齿龙科与它们所有后代(包括哺乳类)。它们首次出现于晚宾夕法尼亚纪。共有衍征包括:上颌骨的内部变厚、大型的犬齿型牙齿、前上颌骨
  • 时装店服装店是售卖服饰的商店,由于现代服饰潮流转变快,一般时尚服装店约三个月至半年就会转换款式。但有些售卖特定类型服饰如民族服饰、特色服装等的服装店则不一定频繁转变款式。
  • 格布哈德·冯·布吕歇尔格布哈德·列博莱希特·冯·布吕歇尔,瓦尔施塔特公爵(Gebhard Leberecht von Blücher, Fürst von Wahlstatt,1742年12月16日-1819年9月12日),普鲁士元帅,在数次重大战役中名声远
  • 小白额雁小白额雁(学名:),又名弱雁,为鸭科雁属下的一个种。小白额雁常结群活动,可见于湖泊、沼泽、鱼塘、虾池以及河流平缓水面开阔处,栖息于近水的草地农田等处。小白额雁繁殖于欧洲、西伯
  • 费萨尔·本·阿卜杜勒-阿齐兹·阿勒沙特费萨尔·本·阿卜杜勒-阿齐兹·阿勒沙特(阿拉伯语:فيصل بن عبدالعزيز آل سعود‎,1906年4月14日-1975年3月25日),沙特阿拉伯第三位国王。生于利雅德。沙特首
  • 哥特兰矮种马哥特兰矮种马(瑞典语: Gotlandsruss)一种矮种马品种,起源瑞典哥特兰岛。 这种马的肩高约115公分至130公分之间。
  • 鲁本·丰塞卡何塞·鲁本·丰塞卡(葡萄牙语:José Rubem Fonseca,1925年5月11日-2020年4月15日),巴西作家。1925年丰塞卡出生在巴西米纳斯吉拉斯州茹伊斯迪福拉,但其一生大部分时间都在里约热内
  • 阿廖娜·科斯托娜娅阿廖娜·谢尔盖耶芙娜·科斯托娜娅(俄语:Алёна Сергеевна Косторная,2003年8月24日-),俄罗斯花式滑冰运动员,为2017-2018年度青年组大奖赛总决赛银牌得主、