【发布时间】:2014-05-05 21:22:34
【问题描述】:
使用用户电子邮件(默认情况下它是唯一标识符),如果我需要当前时间戳,我想生成一个代表唯一标识符的 11 个字符(或更少)的字母数字字符串。
首先创建一个 ad hoc(不可逆)算法来做到这一点,我想知道在 Java 中是否有什么。
【问题讨论】:
-
你试过散列函数吗?
-
你可以使用 MD5 或 SHA1 并且只保留前 11 个字符
-
一个 11 个字符(或更少)的字母数字字符串,用于唯一标识电子邮件地址 + 时间戳的所有组合?假设您的字母数字是 A-Za-z0-9,则只有 52,036,560,683,837,093,888 个可能的 11 个字符串,并且还有更多可能的电子邮件地址。
-
您希望它是对称的还是不对称的? support.microsoft.com/kb/246071
-
@Alexandre Santos 算法必须是不可逆的,无论是对称的还是非对称的,因为它是在服务器端加密的,并且无法解密。
标签: java algorithm cryptography uuid uniqueidentifier