uuid1()
:
从主机ID,序列号和当前时间生成UUID
uuid4()
:
生成随机UUID.
因此uuid1
使用机器/序列/时间信息来生成UUID.使用每个的利弊是什么?
我知道uuid1()
可以有隐私问题,因为它基于机器信息.我想知道在选择其中一个时是否更加微妙.我uuid4()
现在就用,因为它是一个完全随机的UUID.但我想知道我是否应该用它uuid1
来减少碰撞的风险.
基本上,我正在寻找人们关于使用一个与另一个的最佳实践的提示.谢谢!
我知道MD5有一些碰撞,但这更像是关于散列函数的高级问题.
如果MD5将任意字符串散列为32位十六进制值,那么根据Pigeonhole原则,这肯定不是唯一的,因为有更多唯一的任意字符串,而不是唯一的32位十六进制值.