ylechelle / OpenUDID

[OpenUDID IS NOW DEPRECATED] Open source initiative for a universal and persistent UDID solution for iOS

Home Page:OpenUDID.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Does the pasteboard keep the same after system update?

fannheyward opened this issue · comments

The UDID is saved in a special pasteboard. Is the pasteboard keep the same after system update, via OTA or iTunes, or restore?

System pasteboards are persistent by default.
If the pasteboard is erased, then the app recreates it from the local cache which also is persistent across restores and reboots.
So yes, it's persistent.

On 28-Mar-2012, at 12:44 PM, Heyward Fann wrote:

The UDID is saved in a special pasteboard. Is the pasteboard keep the same after system update, via OTA or iTunes, or restore?


Reply to this email directly or view it on GitHub:
#13

Will this happen?

App A and B both have OpenUDID, run A at first and create the UDID base on A's [[NSProcessInfo processInfo] globallyUniqueString], and B get the UDID for use. Then, device is restored and the pastedboard and local cache is missing. this time run B at first and create the UDID base on B's [[NSProcessInfo processInfo] globallyUniqueString]. Now, the two UDID are different and we can't distinguish the device.

Theoretically no.
But there is no 100% guarantee.
You'd have to have a case where:

  • all apps that use OpenUDID are removed from device (i.e. deleted explicitly, along with their data)
  • all openudid.org pasteboards are erased or compromised
    Then yes, your case will occur.
    Conclusion: the more apps use OpenUDID, the more universal it gets.
    It starts to become super robust with just 2 or 3 apps!

On 28-Mar-2012, at 1:09 PM, Heyward Fann wrote:

Will this happen?

App A and B both have OpenUDID, run A at first and create the UDID base on A's [[NSProcessInfo processInfo] globallyUniqueString], and B get the UDID for use. Then, device is restored and the pastedboard and local cache is missing. this time run B at first and create the UDID base on B's [[NSProcessInfo processInfo] globallyUniqueString]. Now, the two UDID are different and we can't distinguish the device.


Reply to this email directly or view it on GitHub:
#13 (comment)