我们希望在Windows 8 Metro应用程序中使用唯一设备标识符,建议使用ASHWID,文档在此处记录:
如果使用的字节不是最不重要的数字(即人类阅读的最右边),则生产线上相邻的两台相同笔记本电脑可能具有相同的ASHWIDs。 MAC和驱动器序列号可能相邻。
所以,我想我的问题的关键是,在您生产具有相同CPU类型和内存配置的设备之前,需要生产多少设备才能避免重复。看起来像生日悖论的问题,因此我找到了一个计算器并输入了数字 :)
每个MAC地址和一个带有两个字节标识符的硬盘,您大约有40亿种排列方式。一旦您分配了其中的6,000个,就有大约50/50的机会您已经有两个相同的。
http://msdn.microsoft.com/en-us/library/windows/apps/jj553431.aspx
我很难想象这怎么可能保证唯一性。格式包括每个硬件组件的两个字节,其中最独特可识别的是MAC地址和硬盘序列号。但是,对于这些值,仅使用两个字节似乎不足够。如果使用的字节不是最不重要的数字(即人类阅读的最右边),则生产线上相邻的两台相同笔记本电脑可能具有相同的ASHWIDs。 MAC和驱动器序列号可能相邻。
所以,我想我的问题的关键是,在您生产具有相同CPU类型和内存配置的设备之前,需要生产多少设备才能避免重复。看起来像生日悖论的问题,因此我找到了一个计算器并输入了数字 :)
每个MAC地址和一个带有两个字节标识符的硬盘,您大约有40亿种排列方式。一旦您分配了其中的6,000个,就有大约50/50的机会您已经有两个相同的。
请前往http://jeff.aaron.ca/cgi-bin/birthday并输入"6563"和"4294967296"进行实际计算。
所以这个似乎并不是非常独特。我对这个标识符非常怀疑,我是否错过了一些重要的东西?