2012-03-27 7 views
8

Wissen Sie, wie OpenUDID eindeutige Geräte-ID generiert wird?
Gibt es eine Chance, dass 2 Geräte den gleichen OpenUDID Wert haben?Funktionsweise von OpenUDID

EDIT 1:

Wird die OpenUDID ändern, wenn das Gerät zurückgesetzt wird?

EDIT 2:

Wenn Kollision möglich ist, gibt es eine Alternative für OpenUDID, die besser funktionieren könnte.

Antwort

4

Wenn nur einen Weg gab es einen Blick auf den Quellcode haben ...

// Next we try to use an alternative method which uses the host name, process ID, and a time stamp 
// We then hash it with md5 to get 32 bytes, and then add 4 extra random bytes 
// Collision is possible of course, but unlikely and suitable for most industry needs (e.g.. aggregate tracking) 
+0

Hallo Stephen, ich habe ein Update hinzugefügt, kennen Sie die Alternative für OpenUDID, da die Kollision möglich ist. –

2

Nach this OpenUDID funktioniert wie folgt:

Technisch nutzt OpenUDID eine Mischung aus lokalen App-Speicher für Cache und Sicherung sowie Inter-App-Speicher (benutzerdefinierte Pasteboards auf iOS). Dies bedeutet, dass das System dezentral ist, weder von Apple noch von jemand anderem kontrolliert wird. Je mehr OpenUDID verwendet wird, desto robuster und präventiver und fälschungssicherer wird es.

Ansonsten sieht und fühlt sich die OpenUDID genauso an wie die native UDID, eine 40 Zeichen lange hexadezimale Zeichenfolge. Zum Beispiel:

369416e16c373b617b2e4d151e01244c748c7b3e

Ich hoffe, das hilft

3

Es ist im Wesentlichen eine 160bit zufällige Zeichenfolge. Also gibt es 2^160 Kombinationen. Es ist also sehr unwahrscheinlich, je zwei gleiche zu bekommen

3

Dann ist dies wirklich nicht geeignet für Anwendungen, die die UDID als Login-Kennung verwenden. Wenn Sie Ihr Gerät wiederherstellen müssen, dann wird die UDID anders sein als die von Apple UDID ist Teil des eigentlichen Telefons und wird Wiederherstellungen beibehalten.

Dies ist wirklich mehr wie ein Cookie für Werbetreibende zu verwenden .. es muss nicht 100% genau dann, nur meistens genau.

0

diese Zurück The Developer’s Guide to Unique Identifiers

lesen, wenn iOS 5 veröffentlicht wurde und uniqueidentifier wurde veraltet es einen Ansturm war eine Alternative zur UDID zu finden, die nicht von Apple kontrolliert wurde. Offenbar ist OpenUDID die am weitesten verbreitete Open-Source-UDID-Alternative. OpenUDID ist in Ihr Projekt super einfach zu implementieren und wird von einer Vielzahl von Werbeanbietern unterstützt.

NSString *openUDID = [OpenUDID value];

OpenUDID verwendet eine sehr kluge Weise die Kennung über Anwendungen bestehen bleiben. Es verwendet speziell benannte Pasteboards, um die Kennung zu speichern. Auf diese Weise wissen andere Apps, die auch OpenUDID verwenden, wo sie nach schauen können und können den bereits generierten Identifier statt einen neuen erzeugen.

Verwandte Themen