我想向我的用户发送英文单词,用作我的应用程序的两因素身份验证代码。为了可用性,我想排除包含任何特殊字符的单词,例如 ï、å、ä 等,同时我想避免让用户输入诸如“jihad”或“vagina”之类的可能被视为奇怪或令人反感。在这种情况下,随机生成的字符串不是一个选项,即使我知道这种解决方案的安全优势。
我无法找到任何符合这些标准的精选词表,而且我无法手动检查 20 000 个或更多词来检测冒犯性词。我开始考虑使用诸如城市列表之类的东西,但即使在那里我也会很快遇到可用性问题。我应该如何最好地解决这个问题?
我通过下载纯文本的儿童读物并运行来解决问题
cat childrens_book.txt | grep -o -w '\w\{5,9\}[a-z]' > words.txt grep 5 到 9 个字母之间的单词。
然后我只是让每个词都独一无二,结果得到了一个 18 000 词的长列表,我可以肯定它不包含攻击性语言。
| 归档时间: |
|
| 查看次数: |
1046 次 |
| 最近记录: |