Unique Device ID UWP

巧了我就是萌 提交于 2019-12-24 00:40:08

问题


Since few days I am trying to get MAC Adress from my Windows Phone device withouse success. I am trying to get UNIQUE ID for my Phone, Tablet etc. I`ve found HardwareToken class and the code below

HardwareToken token = HardwareIdentification.GetPackageSpecificToken(null);
                IBuffer hardwareId = token.Id;
                HashAlgorithmProvider hasher = HashAlgorithmProvider.OpenAlgorithm("MD5");
                IBuffer hashed = hasher.HashData(hardwareId);
                string hashedString = CryptographicBuffer.EncodeToHexString(hashed);

Using this code I am reciving ASHWID. Is that really unique?


回答1:


Using this code I am receiving ASHWID. Is that really unique?

It depends. On phone/tablet more likely than on desktop. The exact answer you can found at MSDN:

The ASHWID provides a strong binding between the app/package and the device by representing several individual hardware characteristics. In order to protect user privacy, the ASHWID varies from app to app. Unless the underlying hardware has changed, two calls from the same app will result in identical ASHWIDs. However, the ASHWID changes if the hardware profile of the device changes, such as when the user unplugs a USB Bluetooth adapter. The back-end cloud service can verify the ASHWID and compare it with previously reported values.

Following Peter's Torr answer you should also check first if that API is present on actual device. Though you may also think about his advice - to think if that really is a solution to your problem.




回答2:


the ASHWID is qualified as sufficiently unique. You can rely on it IMHO. Check this reference article to get deep knowledge on the ASHWID https://msdn.microsoft.com/en-us/jj553431



来源:https://stackoverflow.com/questions/34153786/unique-device-id-uwp

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!