#generate #sentence #input #characters #confusable #domain-name #default

app homoglyphs

生成给定输入句子的所有同形异义字符

1 个不稳定版本

0.1.0 2022年9月14日

#40#sentence

MIT/Apache

55KB
922

同形异义字符

为给定的输入句子生成所有同形异义字符。

同形异义字符是指形状相同或非常相似的两种或两种以上的图形符号、字符或符号。这个名称也适用于具有这些属性的字符序列。

Unicode 字符集中包含许多强同形异义字符,称为“易混淆字符”。在多种情况下,它们都存在安全风险。有人可能会故意用其同形异义字符替换一个字符,从而创建第二个域名,该域名与第一个域名难以区分,可以用于钓鱼攻击。 - 维基百科

安装

cargo install homoglyphs

示例

生成所有可能的同形异义字符和所有易混淆字符

homoglyphs -a "rust"

使用默认设置生成同形异义字符(每个输入句子字符的100个同形异义字符,8个易混淆字符)

homoglyphs "rust is nice"

生成 'n' 个同形异义字符

homoglyphs -n 3000 "rust is awesome"

为给定的易混淆字符数量生成可能的同形异义字符

homoglyphs -n 3000 "rust is incredible"

尝试为每个输入句子字符生成最多 'n' 个同形异义字符,每个字符使用 'c' 个易混淆字符

homoglyphs -n 500 -c 6 "rust is the best"

以不同格式打印输出

以 ascii、空、markdown、现代和 psql 风格的数组中

homoglyphs -n 25 "rust is the best" -f markdown

json 或纯文本

homoglyphs -n 25 "rust is the best" -f json

依赖项

~24MB
~387K SLoC