0

我有一个.xls文件记录特定页面上公共 Facebook 帖子的列表,包括时间戳和消息作者。
出于研究原因,我想在网上分享它,但是,因为我想保护评论者的隐私,我想把他们的名字变成字母数字字符串。

因此,我正在考虑在 Java 中为作者姓名提供一个可能的散列函数。你有什么建议?我希望它尽可能内射(两个不同的字符串不会得到相同的哈希值)。

4

3 回答 3

2

尝试 MessageDigest 和 Base64

MessageDigest md = MessageDigest.getInstance("SHA-1");
byte[] d = md.digest("John Smith".getBytes());
String str = javax.xml.bind.DatatypeConverter.printBase64Binary(d);
System.out.println(str);

输出

5ho1h7P3oUK4x7kmPIL4EZOY7Lc=
于 2013-11-06T09:43:05.243 回答
1

一个不错的选择是 SHA-1 或 RIPEMD-160。它们在密码学上很强大,即使是 MD5 在你的情况下也足够了。

于 2013-11-06T09:37:44.860 回答
0

MD5将为您完成这项工作。在这里您可以找到如何在 java 中完成

于 2013-11-06T09:39:21.853 回答