【问题标题】:Brute-Force language detection蛮力语言检测
【发布时间】:2011-10-17 23:37:39
【问题描述】:

我需要一种算法(任何编程语言)来测试爬山算法的活力,以破解密码挑战的密码。该算法应该测试随机解密(没有空格)是英文文本(也为尚未完成的单词打分!)或只是随机字符序列的可能性有多大。

我用我开发的几种算法进行了尝试,但它们并不是那么好。

我的研究:

一个谜 M4 加密项目 (http://www.bytereef.org/m4_project.html) 使用 Sinkov 统计数据,我也想使用它。

我唯一找到的是 «quebra -pedra» 的文档,这是一个包含我正在搜索的 Sinkov 对数权重分析的 Java 框架。

http://www.google.com/m?client=ms-android-samsung&source=android-home#q=Quebra-pedra+framework+java

但是我还没有找到在哪里下载框架。我也没有找到任何 Sinkov 测试的实现或描述。

我会很高兴任何提示。谢谢。

【问题讨论】:

    标签: java algorithm cryptography nlp


    【解决方案1】:

    我不了解 Sinkov 统计数据,但来自自然语言处理的语言模型可以完全满足您的需求,根据文本与英语的相似程度对文本进行评分。

    我在这里写了一个简单的字符二元组,应该很容易理解。

    https://github.com/rrenaud/Gibberish-Detector

    【讨论】:

    • 感谢您的评论。我不知道马尔可夫链,但我对计算二元组的分数有相同的想法。我自己的公式遇到的问题是真实文本和垃圾之间的距离非常小。我将查看您的代码以了解有关马尔可夫链的更多信息。
    • 我的同事将 rrenaud 的项目翻译成 Java,以防这对任何人都有用 github.com/paypal/Gibberish-Detector-Java
    猜你喜欢
    • 1970-01-01
    • 2021-02-22
    • 1970-01-01
    • 2015-03-31
    • 2014-03-28
    • 2018-10-17
    • 1970-01-01
    • 2021-01-10
    • 2011-12-30
    相关资源
    最近更新 更多