I am searching for a UDID replacement for both iOS 7 and iOS 8, I took a look at MobileGestalt.h and I found the "DieID". This is readable without a jailbreak and on both iOS versions. The number is the same after I reinstalled the app. So I think its quite unique?
My question is is the "DieID" unique for all devices? And what exactly is the "DieID", I was not able to find anything about it.
Thanks, David
The DieID is the baseband chip identifier and used in both the UDID process and the SHSH signing process (ECID / UniqueChipID).
It's likely only unique per chip manufacturer and obviously has a smaller namespace. The "UDID" is actually the SHA1 hexdigest of the serial number, ECID (DieID), wifi, and bluetooth mac addresses concatenated.
ecid = 17592186044415 #=> 0xFFFFFFFFFFF [DieID/UniqueChipID]
serial = "ZZZZZZZZZZZZ"
bluetooth = "ff:ff:ff:ff:ff:ff"
wifi = "ff:ff:ff:ff:ff:ff"
udid = Digest::SHA1.hexdigest(serial + ecid.to_s + wifi + bluetooth)
#=> 26063df5d4741b7fe668d79e0263a1bc01af3e0a
Because of this, it's not as useful for device identification as it doesn't have as large of a namespace and requires use of private APIs; but it can be useful in certain enterprise contexts—eg, a client held secret in an MDM enrollment process.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.