如何获得已经散列的数据的真实价值?获得哈希码后,您仍然可以获得数据的真实价值吗? 或者是否有任何代码可以反转输出。
String ida = new String(txtID.getText().toString());
int idb = ida.hashCode();
codeD.setText("result: " + ida );
我已经获得了txtID(已输入的用户)的哈希码,但现在我想获得已经哈希的实际值而不调用ida。
答案 0 :(得分:2)
简答:不。
答案很长: 散列是一种快速的单向计算,可以粗略地识别某个项目。在Java中,哈希码通常用于将某些内容放入Map中。当哈希代码用作HashMap中的键时,哈希代码用于标识另一个Object。它并不意味着存储数据,只是足够不同以防止冲突。很可能有两个具有相同散列的对象。
答案 1 :(得分:0)
正如CodeChimp所解释的那样,你要做的不是哈希,而是加密/解密。 此示例将帮助您执行此操作:http://www.example-code.com/java/aes_dataStream.asp
如果你像我一样喜欢重新发明轮子,实施起来可能很有趣:http://en.wikipedia.org/wiki/Affine_cipher