如何获得已经散列的数据的真实价值?

时间:2013-05-31 02:30:38

标签: java javascript android

如何获得已经散列的数据的真实价值?获得哈希码后,您仍然可以获得数据的真实价值吗? 或者是否有任何代码可以反转输出。

String ida = new String(txtID.getText().toString());
    int idb = ida.hashCode();

    codeD.setText("result: " + ida );

我已经获得了txtID(已输入的用户)的哈希码,但现在我想获得已经哈希的实际值而不调用ida。

2 个答案:

答案 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