我需要一种算法(任何编程语言)来测试活力,用爬山算法来破解密码挑战的密码。该算法应该测试一个随机解密(没有空格)是一个英文文本的可能性(也给予尚未完成的单词的点数!)或只是一个随机的字符序列。蛮力语言检测
我试着用我开发的几种算法,但他们不太好。
我的研究:
一个谜M4加密项目(http://www.bytereef.org/m4_project.html)使用Sinkov统计,我想用也。
我发现的唯一的东西是一个«quebra -pedra»文档,它是一个Java框架,包括我正在寻找的Sinkov log-weight分析。
http://www.google.com/m?client=ms-android-samsung&source=android-home#q=Quebra-pedra+framework+java
但我还没有找到在哪里下载的框架。另外我还没有找到Sinkov测试的任何实现或描述。
我会很高兴任何提示。谢谢。
感谢您的评论。我不知道马尔可夫链,但我对计算bigrams得分有相同的想法。我用自己的公式得到的问题是,真实文本和垃圾之间的距离非常小。我会查看你的代码,以更多地了解马尔可夫链。 –
我的同事将rrenaud的项目翻译成Java,万一这对任何人都有用https://github.com/paypal/Gibberish-Detector-Java – Eyal