我想知道我的条形码序列方法是否足够随机和安全。我目前使用条形码格式如下:
{base36 encoded sequential id}-{4 random numeric characters}
ex.:
2v05-9187
2v06-3607
2v07-1810
我想切换到所有数字,以便在不可读的票证时更容易输入键盘:
34508-4821
34509-9615
很明显,黑客在这里发生了什么,但它相当安全(?)
我已经查看了像crc32这样的单向哈希,但是它产生了可变长度,更长的数字
echo hexdec(crc32("1000-secret"));
echo '<br>';
echo hexdec(crc32("1001-secret"));
//output:
1076135781
225104646983
答案 0 :(得分:0)
如果你只想要4个随机数,你的方法就可以了,只需从输出中取出前四个:
echo substr(hexdec(crc32("1001-secret")), 0, 4);
只有四个数字,你将在0000-9999之间,这是10,000个不同的选项。如果这对你来说足够随机,那你就已经完成了。