【发布时间】:2010-10-20 09:36:26
【问题描述】:
我之前已经制作了使用 XOR 加密数据的程序并完全理解它,但是我如何将其实现到程序中以便对字符串文字进行加密?例如,我不想使用:
string name = "My name is Matt";
这将导致“我的名字是马特”位于可执行文件中。我猜我必须用一个单独的程序加密文字,但我真正的问题是如何将加密的字符串存储在可执行文件中(最好不在单独的文件中)?
再次,我完全了解如何解密字符串以及它是如何工作的,我只需要知道如何在编译结果中传输加密字符串。
感谢您的宝贵时间,我真的很感激。
【问题讨论】:
-
“XOR 加密”的真正意思是“使使用 XOR 转换提取信息变得有点困难”,对吗?因为所谓的“XOR 加密”算法确实不提供安全性。
-
异或加密是 100% 可靠的一次性填充...
-
鉴于他对 XOR 加密的“完全理解”,我很惊讶信息存储在何处或如何存储很重要。 :P 只需将其保存在程序所在目录中的 ASCII 文本文件中,然后每隔一个字母插入一个字母
Z。 :P -
@Cameron :我想我们“相当合理”的想法会有很大不同。我不认为普通成年人可以在几个小时内用纸和笔破译的任何东西都是“合理的”。
-
@Martin:哎呀,最好把 tuxyz 和 45689 作为可能性。无论如何,在您的假设示例中,我很确定专业的密码分析员可以很容易地发现您的密文是两个英文文本的 XOR。如果密钥恰好在可用的语料库中,那么识别密钥很容易(因为你最喜欢的书无疑是我作为一个人为 GCHQ 工作),否则就更难了。但我个人不为 GCHQ 工作。如果 James 或 Andrew 这样做,我认为您的断言是不正确的 - 书中的一章不是坏钥匙,而是一把糟糕的钥匙。
标签: c++ encryption