什么是UUID?

40 uuid glossary acronym

那么,一个是什么?

Jas*_*ker 56

这是一个唯一标识某些内容的标识号.这个想法是,这个身份证号码将是普遍独特的.因此,没有两件事应该具有相同的uuid.事实上,如果你要产生10万亿美元的uuids,那么就会有两个uuids相同的概率.00000006.

  • “所以你是在告诉我还有机会!” (31认同)
  • 碰撞的概率永远不会是0 (4认同)

Bob*_*man 49

标准化标识

UUIDRFC 4122中定义.它们是通用唯一标识符,可以在不使用集中权限的情况下生成.有四种主要类型的UUID用于略有不同的场景.所有UUID的长度都是128位,但通常表示为由四个连字符分隔的32个十六进制字符.

版本1 UUID是最常见的,它结合了MAC地址和时间戳,以产生足够的唯一性.如果多个UUID生成得足够快以至于时间戳在下一代之前不会递增,则时间戳会手动递增1.如果没有可用的MAC地址,或者出于隐私原因而不希望其存在,则随机来自加密安全随机数发生器的字节可以用于代替节点ID.

版本3和版本5 UUID(最不常见)分别使用MD5和SHA1哈希函数,以及命名空间和已经唯一的数据值来生成唯一ID.例如,这可用于从URL生成UUID.

版本4 UUID,只是128位随机数据​​,有一些比特用于识别UUID版本和变体.

UUID冲突不可能发生,特别是在单个应用程序空间中.


bar*_*art 8

它是一个非常长的一串比特,现在和永远都应该是唯一的,即不会与您或世界上任何其他人生成的任何其他UUID发生冲突.

它的工作方式只是使用当前时间戳,以及生成它的计算机的互联网相关的唯一属性(如IP地址,在您连接到互联网时应该是唯一的;或MAC地址,更低级别,网卡的硬连线ID是位串的一部分.

最初,世界上每个网卡都有自己独特的MAC地址,但在后来的几代中,您可以通过软件更改MAC地址,因此它不再像唯一ID那样可靠.


Joh*_*nny 5

UUID代表通用唯一IDentifier。这是一个128位的值,用于软件开发中的唯一标识。UUID与GUID(Microsoft)相同,并且是由开放软件基金会(OSF)标准化的分布式计算环境(DCE)的一部分。

如前所述,它们在空间和时间上具有很高的唯一性可能性,并且计算上难以猜测。它的生成基于当前时间戳和生成UUID的工作站的唯一属性。

在此处输入图片说明 图片来自https://segment.com/blog/a-brief-history-of-the-uuid/