roo*_*ook 40 security encryption cryptography
我理解IV的目的.特别是在CBC模式下,这确保了使用相同密钥加密的2条消息中的第一条块将永远不会相同.但是,如果IV是连续的,为什么它是一个漏洞呢?根据CWE-329 NON-Random IV允许字典攻击的可能性.我知道在实践中像WEP这样的协议不会隐藏IV.如果攻击者拥有IV和密文短信,那么这就打开了对密钥进行字典攻击的大门.我不知道随机iv如何改变这一点.(我知道对wep的攻击比这更复杂.)
随机静脉注射有什么安全优势?这仍然是"理想分组密码"的问题吗?(一种完全安全的分组密码,没有可能的弱点.)
eri*_*son 94
可预测的IV可以通过选择的纯文本来利用.
假装Eve是一家保险公司的DBA.该公司收集受益人的病史,其中包括许多关于医疗状况的真/假复选框.该公司也适用于自己的健康保险提供商.如果她发现爱丽丝有一个特别令人尴尬的医疗条件,夏娃意识到爱丽丝可能会受到勒索.但是,每个字段中的值都是加密的,因此即使Eve是DBA,她也只能访问密文.
在CBC中,IV是异或(用"⊕"下面指出的)与纯文本,然后通过分块密码术运行:C 1 = E ķ(IV⊕P 1).
由于夏娃是保险公司的受益人,她可以选择纯文本作为自己的医疗记录,因为她是DBA,她可以检查任何人的密文.除了使用可预测的IV之外,草率的应用程序开发人员在验证应用程序输入方面做得很差.如果Eve可以预测,将被应用到她(IV室间隔前夕)和Alice的(IV 爱丽丝提前)的记录,她可以选择纯文本为她自己的记录是这样:P 前夕 = IV 前夕 ⊕IV 爱丽丝 ⊕"假"
应用程序加密此纯文本,如下所示:
Ç 前夕 = E ķ(IV 前夕 ⊕P 前夕)= E ķ(IV 前夕 ⊕(IV 前夕 ⊕IV 爱丽丝 ⊕ "假"))
所述IV 前夕 ⊕IV 前夕抵消,这意味着是c 前夕 = E ķ(IV 爱丽丝 ⊕"假")
现在夏娃可以比较C eve和C alice.如果他们不同,她知道爱丽丝必须为这种健康状况输入"真实".
使IV无法预测会阻止这种攻击,并且使它们变得不可预测的一种简单方法是在提供纯文本后随机选择它们.
我想通过使用易受攻击的WEP解释您的问题,现在使用其他协议,如WPA2.
简单的规则IEEE说:
基本规则永远不会使用键+ IV两次
WEP受损的原因之一是IV生成的原因.
![]()
如图所示,当WEP首次出现时,如果攻击者知道IV是如何生成的,那么IV的长度是24位(后来增加48位),在这种情况下,IV足够小,攻击者可以利用消息.
如果有人知道关于IV的产生或它重叠的报文是谁嗅探可以流量攻击者的传输期间(因为IV型是24位则表示2 ^ 24 IVS):如果所述IVS是顺序则意味着仍存在IVs在一段时间内会重叠的可能性.
让我们假设,
passphrase key Kp
initialization vector Ivi
plaintext data D1, D2 (for separateblocks)
Traffic Key:Kti=Kp||Ivi
Ciphertext: E(Kti,Di)=RC4(Kti) xor Di
Run Code Online (Sandbox Code Playgroud)
并假设
IV1=IV2 (created sequentially and from 0 to 2^24 again returns back)
Run Code Online (Sandbox Code Playgroud)
攻击者有,
(RC4(Kt1) xor D1) Xor (RC4(Kt1) xor D2) = D1 XOR D2
Run Code Online (Sandbox Code Playgroud)
这可以通过使用Aircrack-NG使用网络跟踪来打破.我展示的想法是基本的一个更复杂的假设,再次永远不会使用相同的IV重叠.
其他答案很好,虽然技术性很强.
为什么使用带有CBC模式的非随机IV是一个漏洞?
使用密钥加密数据时,如果数据和密钥相同(未更改),则加密数据将相同.如果加密数据相同,则可以分析多组加密数据的模式,然后可以使用这些模式获得有关加密数据的知识.
CBC(Cipher Block Chaining)通过将来自前一个bock的加密数据与要加密的数据进行异或运算来解决此问题.这意味着如果来自前一个块的加密数据不同,即使密钥相同,具有相同数据的块也将不同.
CBC的问题是如何处理第一个块,因为没有先前的块来从中获取加密数据.相反,数据与称为IV(初始化向量)的随机位块进行异或.
您可以将IV的安全性视为与加密数据块的安全性相同.换句话说,如果他们可以获得加密数据,那么他们也可以获得IV.