使用数字加密文本

2024-05-18 13:56:59 发布

您现在位置:Python中文网/ 问答频道 /正文

Euler项目

我最近开始解开一些谜语。我发现站点中的讨论论坛有点令人沮丧(大多数讨论都是封闭的,线程很差),所以我决定publish my Python solutions on launchpad进行讨论。在

问题是,发布这些解决方案似乎是非常不道德的,因为这样做会让其他人在不做编程工作的情况下获得声誉,这是该网站极力劝阻的。在

我的加密问题

我想加密我的答案,这样只有那些已经解开谜题的人才能看到我的密码。逻辑键是谜语的答案,它总是数字的。在

为了防止对我的答案进行暴力攻击,我想找到一个运行时间非常长(几秒钟)的加密算法。在

你知道这样的算法吗?我想要一个Python包,它可以附加到代码中,而不是一个可能存在可移植性问题的外部程序。在

谢谢

亚当


Tags: 项目答案launchpad站点onmy编程情况
3条回答

听起来人们不得不编写自己的解密工具,或者使用现成的东西,或者使用现成的组件来解密你的帖子。在

PBKDF2是PKCS#5中定义的基于密码的密钥导出的标准化算法。基本上,您可以调整“iterations”参数,以便从密码(Euler问题的答案)派生密钥需要几秒钟的时间。然后,该密钥可用于任何常见的对称加密算法,如AES-128。在

这样做的好处是大多数加密库已经支持PBKDF2。实际上,您可能会找到支持基于密码的S/MIME消息加密的邮件客户端。然后你就可以发布一个S/MIME,人们就可以用邮件客户端阅读它了。不幸的是,我的邮件客户端(Thunderbird)只支持公钥加密。在

是的,您几乎可以使用任何对称加密算法来实现这一点:例如,DSA或AES;只需使用整数作为密钥,并将密钥填充到加密算法密钥的所需长度,然后使用该密钥对答案进行解密。在

请记住,如果您扩展一个短密钥,加密效果不会很好。加密的强度与密钥长度和算法本身有关,而不是运行所需的时间。在

这个question似乎有一些库的例子可以与python一起使用。在

我认为尹朱把它的社会方面和旋风技术。使用您首选的方法:

python decrypt.py --problem=123 --key=1234567

Google可以很容易地获得密钥编号,即使没有这个,也可以快速地通过一百万个密钥(假设密钥长度的中间值为5个十进制数字,生成的密钥少于20位)。如果我想变得更聪明,我可以使用纯文本假设(例如importfor),并大大减少我的搜索空间。在

对于所有的麻烦,你最好使用一些非常复杂的东西,比如:

^{pr2}$

如果你想解决欧拉123计划的问题,你必须打败我。。。在

相关问题 更多 >

    热门问题