我必须误解Python的uuid模块或生成UUID的RFC
如何使用UUID3域名和对象名称生成字符串?
我看见说:“版本3 UUID是从限定的名称空间生成的,比如URL、域名和对象id或名称。”
然而,在python.org说,使用的是Uuid.uuid3(命名空间,名称)。既然这里的“命名空间”应该指定“名称”的类型,那么我应该如何同时指定“域名”和“对象名称”呢?
发布于 2012-12-15 21:35:47
发布于 2022-06-03 21:14:54
应该在现有的答案中添加版本3或5 UUID,只需将一种转换的结果作为另一种转换中的命名空间,就可以使用UUID来形成标识符的层次结构。生成特定于任意域的标识符的正确方法是首先使用DNS名称空间为您的域获得" The“标识符,然后将其用作名称空间(可能是递归的)。
在伪代码中,您要寻找的是UUIDv3(UUIDv3(ns:DNS, "realdomain.com"), "your object name")。作为域名的所有者,您有权选择您想要的名称的任何格式。
另一种选择是为对象(如http://realdomain.com/objects/1 )形成一个URI,并使用ns:URL作为命名空间。没有必要设计你自己的层次结构,当已经有一个现成的使用。
https://stackoverflow.com/questions/13896381
复制相似问题