Generieren Sie 100 UUID v4-Werte auf einmal
Stellen Sie die Menge auf 100 ein und behalten Sie die kanonische Darstellung für das bekannte 8-4-4-4-12-Layout bei. Jede Zeile wird aus frischen Web-Crypto-Bytes generiert, wobei das Versionsnibble auf 4 und die Variantenbits auf das 10-Muster von RFC 9562 festgelegt sind.
Generierte UUIDs
| 1 | f2fea68c-c303-41e2-8682-b63742226182 |
| 2 | 4132319d-79a0-4db6-8a7f-6ee9b9021a5e |
| 3 | cc56ddd6-b043-4931-91b6-8481169feb12 |
| 4 | b4e5d8f3-6ece-4f34-898f-9488bac2bf4b |
| 5 | 80e7ae7f-1883-4e29-8228-1dca08b013c2 |
| 6 | c34ee0cc-daf0-48e0-b3ee-c7bd5b74bda8 |
| 7 | 8c448a8a-fb88-4c42-9580-bcacf9e6d5b3 |
| 8 | 516dd17a-291a-4875-9357-8966bdbb8cd2 |
| 9 | 768cbd5e-70b3-4139-a687-1fa2729f738c |
| 10 | 0a9b00fc-54ab-40fd-a69f-102d28249d0e |
| 11 | 8bcc4915-5c7d-4532-9cad-eca4af075cb3 |
| 12 | ed7797c3-75ff-4426-85ea-7578e5424f32 |
| 13 | 8ec8d5c7-b452-4546-a960-d89d415527ee |
| 14 | b8693923-990d-4f82-940d-d45d41866557 |
| 15 | 35468631-c422-48ac-bd32-0f69c709e07b |
| 16 | 0beb8517-04ef-4e45-b67b-eb57daed78c4 |
| 17 | ea25e67d-310c-4cc3-8b90-d3731def2248 |
| 18 | 236d033d-9d94-4c5f-9938-46d9451f3f3b |
| 19 | 1c25c4fa-2e0b-47a9-b068-26bf16cd9316 |
| 20 | 8031d048-4597-48cd-99eb-1b64e932107c |
Die Ergebnisse werden ohne Gewähr für ihre Richtigkeit bereitgestellt. Die Methode und ihre Quellen stehen unten, damit Sie den Rechenweg prüfen können.
Jede UUID hat 122 Zufallsbits, nachdem die Versions- und Variantenfelder festgelegt wurden.
Kanonische, kompakte und URN-Auswahlmöglichkeiten sind Textdarstellungen derselben UUID-Bytes.
Der komplette Stapel wird als Tabelle gerendert, die als CSV heruntergeladen werden kann.
So funktioniert es
So wird es gemacht
- Validieren Sie eine ganzzahlige Chargengröße von 1 bis 10.000. Ordnen Sie 16 Bytes pro UUID zu und füllen Sie sie aus Web Crypto in Aufrufen, die nicht größer als das 65.536-Byte-Kontingent sind.
- Behalten Sie in Oktett 6 die unteren vier Zufallsbits bei und ersetzen Sie die hohen vier durch 0100, das Feld der Version 4. Behalten Sie in Oktett 8 die unteren sechs Zufallsbits bei und ersetzen Sie die beiden hohen durch 10, die RFC-Variante.
- Rendern Sie die 16 Oktette als 32 Hexadezimalziffern. Kanonische Form fügt Bindestriche in der Gruppierung 8-4-4-4-12 ein; Compact entfernt sie; URN fügt das Präfix urn:uuid hinzu. Die Groß-/Kleinschreibung ändert sich kein bisschen.
- Vergleichen Sie kanonische Werte innerhalb der aktuellen Charge und melden Sie alle tatsächlich beobachteten Duplikate. Stellen Sie jeden Wert als statische Ergebniszeile dar, die kopiert oder als CSV heruntergeladen werden kann.
Wovon es ausgeht
- Jede UUID beginnt mit kryptografischen Zufallsbytes des Browsers, nicht mit Math.random und nicht mit einem für den Benutzer sichtbaren Startwert. Sechs Strukturbits hinterlassen 122 Zufallsbits pro Wert.
- Zufällige UUIDs machen Kollisionen außerordentlich unwahrscheinlich; Sie geben keine mathematische Eindeutigkeitsgarantie. Die Anzahl der Batch-Duplikate ist eine Beobachtung und kein Beweis für einen an anderer Stelle generierten Wert.
- UUIDs sind Identifikatoren, keine Authentifizierungsgeheimnisse. RFC 9562 besagt, dass man nicht davon ausgehen soll, dass sie schwer zu erraten sind, oder den bloßen Besitz als Zugriffsmöglichkeit nutzen soll.
- Die generierten Werte werden nicht in der URL platziert, in den Katalogeinstellungen gespeichert oder an einen Server gesendet. Eine Neuberechnung erzeugt absichtlich einen neuen Stapel.
Fragen
Sind 100 UUID v4-Werte garantiert eindeutig?
Das kann kein Zufallskennungssystem versprechen, aber eine Kollision in einem Stapel von 100, die einheitlich aus 122 Zufallsbits gezogen werden, ist außerordentlich unwahrscheinlich. Das Ergebnis prüft auch die Charge und meldet alle tatsächlich enthaltenen Duplikate.
Unterscheidet sich eine GUID von einer UUID?
GUID ist der gebräuchliche Name von Microsoft für dieselbe 128-Bit-Identifikatorfamilie. Das hier erstellte kanonische Textlayout wird in beiden Kontexten akzeptiert.
Quellen
Die vollständige Methode, das Rechenbeispiel und alle Annahmen hinter diesem Ergebnis stehen auf UUID-Batch-Generator.