了解XTS,为什么比生成IV的CBC更好?

时间:2015-03-14 21:52:26

标签: security encryption aes

我试图理解XTS模式,所以我做了一些研究。

我找到了以下文章(http://sockpuppet.org/blog/2014/04/30/you-dont-want-xts/)。

此页面提出了一些问题;请帮我回答一下:

  1. XTS在记录上执行两次XOR操作(一次在加密之前,一次在加密之后)。第二次异或会带来什么好处?

  2. 作为替代CBC的提法,当使用相同的方法生成IV时,CBC是否会像XTS一样安全? (IV = AES_ECB(IVKEY,块偏移)

    对于第一个部门的观点,唯一的区别是额外的XOR,是吗?

    First Sector XTS = TWEAK ^ ( AES_ECB(key, plaintext ^ TWEAK) )
    First Sector CBC = AES_ECB(key, plaintext ^ IV )
    
  3. XTS对每个32字节块应用唯一的调整,不像CBC那样链接。这意味着类似于" CTR",可以使更改变得有点粒度?


  4. CBC的链接性质与使用密钥生成的IV相结合,块偏移似乎比XTS更好?也许我错过了一些东西,很可能它与第二次异化有关。

1 个答案:

答案 0 :(得分:0)

我在Crypto.SE找到了一些答案。

回答2)

在CBC模式下,如果攻击者知道IV和(密钥?),则可以生成一个乱码块,然后可以控制整个块。 (Reference

回答3)

CTR模式与使用密码扩展的密钥进行异或,这使得翻转位成为可能。

直接应用AES可防止CBC和XTS中的位翻转。 (Reference

至于1),我已经就Crypto.SE here提出了问题。