【发布时间】:2010-12-30 23:54:19
【问题描述】:
假设您的银行职员给您一个任意密码,例如hel34/hjal0@#,如果不将其写在纸上,您将无法记住它。困境:你永远不会将密码写在纸上。因此,您尝试发明一种加密的一对一映射,在其中您只写文件的密钥,只写数字,而将其余的垃圾留给您的服务器。当然,密码可以包含任意内容。
mvds 有正确的想法,改变基地。 Eugene 注意到一个错误,所以一对一的映射应该是这样的:
prime1*prime2*...*primeN <----- encoding -------> String
【问题讨论】:
-
我认为你需要给我们一些例子。我不知道你想要什么。
-
该死,我以为我明白了,但 1a2 == 11412 对我来说没有意义......
-
哦,是的,
'a' == 0141... 这不是一个好主意,因为不同的输入字符串可能会导致相同的“从 alphs 到 oct”的字符串。 14a == "14141" == a41。所以你在编码中丢失了信息。 -
@HH 转换基数:从右开始,每个数字相加,乘以基数^N。
-
@HH:不同之处在于,在散列中你是单向的(对完整性检查很有用),而在加密中你需要能够反转它(前提是你有一个解密密钥)。区别很重要,因为散列使用多对一映射,而加密使用一对一映射。乍一看,您的方案似乎是多对一的地图,所以我想知道这是故意还是意外。 :-)
标签: string security encryption primes