作者:手机用户2502857067 | 来源:互联网 | 2023-02-09 10:41
我是PhoneGap开发人员,我的应用程序适用于Android Windows和iOS。我在应用程序中使用UUID作为用户名。
是否可以使两个设备具有相同的UUID?
UUID在全世界是否唯一?
1> Sandro Macha..:
在UUID中几乎不可能发生冲突。
从维基百科:
随机生成的UUID具有122个随机位。在总共128位中,有4位用于版本(“随机生成的UUID”),而有2位用于版本(“ Leach-Salz”)。
对于随机UUID,可以使用概率论(生日悖论)计算两个具有相同值的机会。使用近似值
p(n)\approx 1-e^{-\tfrac{n^2}{{2x}}}
这些是在计算n个UUID(x = 2122)后发生意外冲突的概率:
n概率68,719,476,736 = 236 0.0000000000000004(4×10?16)2,199,023,255,552 = 241 0.0000000000004(4×10?13)70,368,744,177,664 = 246 0.0000000004(4×10?10)
为了更好地理解这些数字,估计某人被陨石击中的年风险是170亿的机会,这意味着该概率约为0.00000000006(6×10?11),等于产生几率的几率。一年中有数十万亿个> UUID,并且有一个重复项。换句话说,只有在接下来的100年中每秒生成10亿个UUID之后,才创建一个副本的可能性约为50%。如果地球上每个人都拥有6亿个UUID,则重复一次的可能性约为50%。