我必须误解Python的 uuid 模块或the RFC for generating UUIDs
如何使用 域名和对象名称生成UUID3字符串?
我see“版本3 UUID是从限定名称空间生成的,如URL或域名以及对象ID或名称。”
然而,在python.org上的用法是uuid.uuid3(namespace, name)。由于这里的“命名空间”应该指定“名称”的类型,我应该如何指定“域名”和“对象名称”?
答案 0 :(得分:1)
来自RFC的section 4.3:
版本3或5 UUID用于从“名称”生成UUID 在某些“名称空间”中绘制并且独特的。该 名称和名称空间的概念应该被广泛地解释,而不是 仅限于文字名称。例如,一些名称空间是 域名系统,URL,ISO对象ID(OID),X.500可分辨 名称(DN)和编程语言中的保留字。
因此UUID3采用名称空间标识符(UUID)和名称。不是域名和对象名称。如果您使用域名作为名称,请使用uuid.NAMESPACE_DNS
UUID。