2014-01-27 39 views
2

我可以乾淨地使用私人UUID變體/版本嗎?我可以擁有「私人」UUID

我使用隨機UUID,我基本上認爲它是大整數。現在我有這種情況,我想生成一個「私人」UUID,它不是基於任何一個衆所周知的5個變體/版本。

我應該「劫持」一個衆所周知的變種/版本,我永遠不會使用? 或者我應該使用未知的變體/版本?

RFC和維基百科都沒有涵蓋這個主題。

回答

3

沒有人回答,所以我會提供我的考慮。

我們使用隨機UUID來識別清晰系統邊界內的對象。雖然UUID由128位表示,但由於版本(4位)和變量(3位)是常量,因此只能有2^121個隨機UUID。 (其實變體4允許使用一個額外的位和迂腐這可能會被添加到121.)

我知道我們將永遠不會使用版本1,2,3和5.不幸的是,沒有提到的條款RFC中剩餘11(16-5)個版本號。

我決定要聲明版本1和變體0100的UUID爲私有(或本地)版本。我爲自己的子類型保留了4位,這爲我自己的使用留下了足夠的每個子類型117位。對於具有確定性ID的幾個子系統,我現在可以創建適合我使用的結構的UUID。

我完全知道這些ID理論上可能與外部生成的UUID衝突。但由於系統邊界清晰,並且外部身份證件被分開考慮,這種方法適合我們並且切實可行。

相關問題