Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security 异或加密攻击向量_Security_Encryption_Cryptography_Xor - Fatal编程技术网

Security 异或加密攻击向量

Security 异或加密攻击向量,security,encryption,cryptography,xor,Security,Encryption,Cryptography,Xor,假设密钥是长度为10的字符串,完全随机。 我们使用该键对大量长度为10的完全随机字符串进行异或运算。 如果加密字符串被泄露,密钥能否恢复?否 如果输入数据是完全随机的,那么通过异或应用完全随机的键不会产生任何有意义的模式。结果仍然是随机的,无法从随机性中收集任何信息 XOR没有用作加密机制的原因是众所周知的明文攻击,它不适用于随机语料库。这听起来像是一个一次性键盘,只是您说相同的密钥将用于大量字符串。现在字符串也是完全随机的,但是它们的内容是以未加密的形式已知的吗 是的 字符串可能是随机的,但它

假设密钥是长度为10的字符串,完全随机。
我们使用该键对大量长度为10的完全随机字符串进行异或运算。
如果加密字符串被泄露,密钥能否恢复?

如果输入数据是完全随机的,那么通过异或应用完全随机的键不会产生任何有意义的模式。结果仍然是随机的,无法从随机性中收集任何信息


XOR没有用作加密机制的原因是众所周知的明文攻击,它不适用于随机语料库。

这听起来像是一个一次性键盘,只是您说相同的密钥将用于大量字符串。现在字符串也是完全随机的,但是它们的内容是以未加密的形式已知的吗

是的

字符串可能是随机的,但它们仍将遵循某种形式的字符编码(ascii、utf、ebcdic等),因此只有某些字节是有效的

攻击者可以循环通过可能的密钥,而忽略那些导致无效ascii(或w/e)明文的密钥。这可以一次完成一个关键字符,因此它不是26^10,而是26*10(对于26个字符的字母表)


这是一种不安全的加密方案。

如果使用相同密钥的两个cyphertext异或在一起,则所有密钥信息都将被删除,并且可以恢复有关明文的信息。如果您的明文是随机的,那么这将不会太多,但有些可以恢复。如果明文是有意义的,那么更多的信息将是可恢复的

C1=P1或K

C2=P2或K

C1 XOR C2=(P1 XOR K)XOR(P2 XOR K)=P1 XOR P2


这就是为什么一次性记事本必须是一次性记事本的原因。使用同一个随机键两次会使其易碎。谷歌“Venona”是一个真实的例子。

你所说的“加密字符串被破坏”是什么意思?如果攻击者对该密文有一个密文和一个明文,那么获取密钥就是一个简单的异或。@Roman:请更清楚地理解“字符串”和“已泄露”这两个词的含义。伙计们,这不是一个编程问题,而且处理得更好,虽然字符串将是随机字节流(仅在以后的字符编码中进行编码)@Roman事实上,它们是可编码的,这就足以证明我的缺点。确切地说,键和大字符串集都是随机字节流,只有后来编码存储在数据库中,模式才会仍然存在?哪些数据是不可编码的?这只是表示ITI的另一种方式如果字节流表示字符,那么它就有一个模式,即使它们是随机字符。“如果单个比特是随机的,那么你就安全了。”询问者让·伯纳德·佩林说“完全随机”。这意味着“由十个字节的序列组成,每个字节独立于范围[0255]选择,不偏向特定值或一组值”。“字符串”不是指ASCII或文本;“字符串”可以表示“字节序列”。