我有一个加密的想法,我可以很容易地编程来加密一些本地文本文件。
鉴于我的方法是新颖的,并且不使用任何行业标准的加密技术,我是否能够使用“破解”应用程序或类似的东西来测试我的加密强度?
还是所有这些工具都依赖于加密过程的高级知识(或截获的“密钥”),这意味着我必须构建自己的破解程序进行测试?
我有一个加密的想法,我可以很容易地编程来加密一些本地文本文件。
鉴于我的方法是新颖的,并且不使用任何行业标准的加密技术,我是否能够使用“破解”应用程序或类似的东西来测试我的加密强度?
还是所有这些工具都依赖于加密过程的高级知识(或截获的“密钥”),这意味着我必须构建自己的破解程序进行测试?
如果您编写了自己的“新颖”加密,没有任何“行业标准加密技术”,并且您不知道如何测试它(即:您不是密码专家),那么我已经可以告诉您结果.
你的方案有无可救药的缺陷,甚至可以被本科水平的密码学家破解。并不是说您的方案会加密任何有价值的东西,以至于值得花时间破解。
密码学不适合没有经验的人。与任何其他学科相比,它不断地建立在先前的知识之上。加密领域没有“革命”,从不推荐新的方案。
Bruce Schneier 在这个主题上写得很好。请阅读给业余密码设计者的备忘录。
您最好阅读他的书Applied Cryptography,阅读他的博客,其中他偶尔会指出有缺陷的方案,阅读密码分析论文以了解真正的攻击是什么样的。攻击通常依赖于算法的数学特性。
这只是施奈尔。您可以向许多其他密码学家学习。阅读 Schneier 书籍的参考书目以获取链接。
如果您正在编写一个有趣的程序或学习加密,那太好了,探索和学习。如果您使用一种主要语言,那么有很多可用的免费库可以为您正确加密。如果您将其作为一项专业工作,我强烈建议您利用其中一个库。
如果您想了解有关加密的更多信息,请从 Bruce Schneier 的旧书 Applied Cryptography 开始,但它会给您一个很好的基础理解,您可以从他或其他知名作者那里找到更新的文本,以建立在该知识的基础上。他在http://www.schneier.com/上有一个网站
加密破解工具总是特定于算法的。
我非常同意@abelenky 和@MegaCraig:如果您真的关心保护数据,那么创建自己的加密方案是一个可怕的想法。
如果你想学习,你可能想从维基百科关于密码分析的文章开始。
如果您继续阅读有关各种类型密码分析的文章,您通常可以找到执行特定类型密码分析的工具的链接,例如,这个用于频率分析的工具。