[英]How to generate unique string from users input?
例如,用户可以提交$a
, $b
和$c
。 我需要从这些输入中创建一个唯一的字符串。
如果我使用$uniq = $a$b$c
,则输入$a=AB, $b=CD, $c=EF
和$a=A, $b=BCD, $c=EF
都生成$uniq=ABCDEF
。
如果我使用$uniq = $a|$b|$c
,则$a=AB, $B=CD, $c=EF|
和$a=AB|CD, $b=EF, $c=""
都生成$uniq=AB|CD|EF|
我怎样才能做到这一点?
正确和安全的解决方案是为$a
, $b
和$c
生成单独的哈希值,然后通过级联或生成另一个哈希值将这些哈希值组合在一起。
这是一个算法:
$a_h = hash($a)
$b_h = hash($b)
$c_h = hash($c)
$uniq = hash($a_h$b_h$c_h)
根据您的要求,可能还需要添加“盐”以使其更加安全: https : //en.wikipedia.org/wiki/Salt_(cryptography)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.