【发布时间】:2015-06-20 11:34:50
【问题描述】:
我的问题如下。我有一个替换列表,包括对字母表中每个字母的替换,还有对多个字母组的替换。例如,在我的密码中,p 变为 b,l 变为 w,e 变为 i,但 le 变为 by,ple 变为 memi。
所以,虽然我可以想到一些简单/幼稚的方法来实现这个密码,但它不是很有效,我想知道最有效的方法是什么。答案不必是任何特定的语言,通用的结构化英语算法就可以了,但如果它必须是某种语言,我更喜欢 C++ 或 Java 或类似的语言。
编辑:我不需要这个密码是可破译的,一种将所有单个字母映射到字母“w”但将字符串“had”映射到字符串“jon”的算法也应该没问题(然后字符串“Mary had a little lamb.”将变为“Wwww jon w wwww wwww.”)。
我希望算法是完全通用的。
【问题讨论】:
-
我假设您已确保字母表是唯一且明确的?你在某个地方有整个字母表吗,即。所有的替换规则?
-
独特和明确是什么意思?我不需要这个密码是可破译的,将所有单个字母映射到字母 w 但将字符串“had”映射到字符串“jon”的算法也应该是可行的。我希望算法是完全通用的。
-
嗯,什么?为什么你不需要这个密码是可破译的?这对我来说毫无意义。 “密码”这个词几乎总是与加密结合使用,它以解密为对应物,因此是可破译的。你在构建一个类似哈希的算法吗?
-
不,我正在第二人生中构建一种角色扮演“语言”。翻译已经秘密发送到预定的目标,我只需要它在外人听来很酷。
-
啊,那我明白了。我想“kek”是这里的适当回应:)
标签: algorithm encryption substring substitution string-substitution