人类可读,意味着字符串是一个真实的单词。这基本上是表单验证。理想情况下,我想测试表单响应的“纹理”,以确定实际用户是否已填写表单而不是寻找表单漏洞的人。可能在POSTed数据上使用字典查找,然后给出返回的“真实单词”的阈值。
我在PHP文档中看不到任何内容,Google机器也没有提供任何内容,至少这是具体的。我怀疑有人在那里编写了一个PHP类甚至是一个可以执行此操作的jQuery插件。像这样:
$string = "laiqbqi";
is_this_string_human_readable($string);
有什么想法吗?
答案 0 :(得分:5)
这可以使用名为Markov Chains的东西来完成。
基本上,他们通过给定语言(英语,法语,俄语等)读取大量文本,并确定一个字符在另一个字符之后的概率。
e.g。 “q”在“z”之后发生的概率比“a”之类的元音低得多。
在较低级别,这实际上是作为状态机实现的。
根据Mike的评论,可以找到PHP版本here。
对于味道来说,马尔可夫链上很有趣the Daily WTF article。