2015-10-17 95 views
-3

我想散列一些utf-8字符串并将它们存储在数据库中,但有没有办法在散列时得到相同的值,所以可以说散列后的blabla将是#dqr%36c,我再次散布blabla我应该得到相同的价值。我不想用盐。出于某些原因在我的数据库中。 下面是代码字符串散列与php

$hashQuestion = md5($question); 
$hashAnswer = md5($answer); 
$sql = "UPDATE $table SET question='$question', answer='$answer', hQuestion='$hashQuestion', hAnswer='$hashAnswer' WHERE id='$id'"; 

其他页面

$q = md5($question); 
while($row = mysqli_fetch_assoc($fullQ)) { 
printf(nl2br("\n%s\n"), $row['hQuestion']); 
} 
+1

如果你不使用盐,常见的散列函数将返回相同的输入相同的结果(甚至与盐:相同的盐 - >相同的输入 - >相同的结果)。 – VolkerK

+0

它没有用'hash'' md5'' crypt'检查过,并且所有的都给了我不同的值 –

+0

它看起来并不像你已经试过它,先试试它,然后如果出现错误回来问一下。 – Wobbles

回答

0

NO。

您不能通过散列某些数据来解决encoding problem然后“重新散列”它以获取该值。

+0

现在没有编码问题,唯一的问题我不能使用SELECT –