Kostenloser Nano ID Generator - Sichere URL-sichere Eindeutige IDs Online
Generieren Sie sofort sichere Nano IDs! Kostenloses Online-Tool erstellt kompakte, URL-sichere eindeutige Identifikatoren 42% kürzer als UUID. Perfekt für Datenbanken, APIs, Token & Systeme.
Die Länge der generierten Nano ID (1-100 Zeichen)
Wählen Sie den Zeichensatz für Ihre Nano ID
Generierte Nano ID
Visualisierung
Dokumentation
Ein Nano-ID-Generator erstellt eine kurze, zufällige Zeichenfolge, die als Nano ID bezeichnet wird. Nano IDs dienen als eindeutige Bezeichner für Dinge wie Datenbankeinträge, URLs und API-Tokens. Es ist äußerst unwahrscheinlich, dass zwei generierte IDs jemals übereinstimmen.
Was ist eine Nano ID?
Eine Nano ID ist eine zufällig generierte Zeichenfolge, mit der etwas gekennzeichnet wird, sodass es von allen anderen Dingen unterschieden werden kann. Der Softwareentwickler Andrey Sitnik entwickelte das Format im Jahr 2017 als kleinere Alternative zur UUID (Universally Unique Identifier), einem in der Informatik weit verbreiteten Bezeichner aus 36 Zeichen. Eine Nano ID hat standardmäßig 21 Zeichen, verglichen mit 36 bei einer UUID; das entspricht einer Verkürzung um etwa 42 %.
So generieren Sie mit diesem Tool eine Nano ID
Der Generator auf dieser Seite erstellt eine Nano ID anhand von zwei Einstellungen.
- Länge: eine ganze Zahl von 1 bis 100. Der Standardwert ist 21.
- Zeichensatz: die Gruppe von Zeichen, aus denen die ID erstellt wird. Standardmäßig wird der alphanumerische Zeichensatz verwendet.
Geben Sie eine Länge ein, wählen Sie einen Zeichensatz aus und drücken Sie anschließend auf „Generate“, um eine ID zu erstellen. Drücken Sie auf „Copy“, um sie zu kopieren, oder auf „Reset“, um zur Länge 21 und zum alphanumerischen Zeichensatz zurückzukehren. Bei jeder Änderung der Länge oder des Zeichensatzes wird automatisch eine neue ID angezeigt. Unter den Schaltflächen stellt das Tool jedes Zeichen der ID als farbigen Block dar: blau bei Großbuchstaben, grün bei Kleinbuchstaben, orange bei Ziffern und grau bei Satzzeichen.
Wenn die Länge keine ganze Zahl zwischen 1 und 100 ist, zeigt das Tool die Meldung „Length must be an integer between 1 and 100“ an und erstellt keine ID.
Verfügbare Zeichensätze
Das Tool bietet sieben festgelegte Zeichensätze an. Ein benutzerdefiniertes, vom Benutzer eingegebenes Alphabet wird nicht akzeptiert. Der Zeichensatz „With Symbols“ fügt den alphanumerischen Zeichen die folgenden 26 Satzzeichen hinzu: ! @ # $ % ^ & * ( ) _ + - = [ ] { } | ; : , . < > ? hinzu.
| Zeichensatz | Verwendete Zeichen | Alphabetgröße |
|---|---|---|
| Alphanumerisch (Standard) | A–Z, a–z, 0–9 | 62 |
| URL-sicher | A–Z, a–z, 0-9, -, _ | 64 |
| Numerisch | 0–9 | 10 |
| Alphabetisch | A–Z, a–z | 52 |
| Kleinbuchstaben | a–z | 26 |
| Großbuchstaben | A–Z | 26 |
| Mit Symbolen | A–Z, a–z, 0–9 und 26 Satzzeichen | 88 |
Der alphanumerische Zeichensatz ist standardmäßig ausgewählt. Er lässt den Bindestrich und den Unterstrich des URL-sicheren Zeichensatzes aus; Buchstaben und Ziffern allein können jedoch bereits direkt in einer URL verwendet werden.
Nano-ID-Formel
Eine Nano ID wird erstellt, indem mithilfe eines kryptografisch sicheren Zufallszahlengenerators eine festgelegte Anzahl von Zeichen zufällig und nacheinander aus einem Alphabet ausgewählt wird. Ein solcher Generator ist so konzipiert, dass seine Ausgabe nicht im Voraus vorhergesagt werden kann.
1id = random(alphabet, size)
2Mit den Standardeinstellungen hat alphabet 62 Zeichen und size ist 21.
Beispielrechnung
Bei Verwendung des standardmäßigen alphanumerischen Alphabets und einer Länge von 21 lautet eine mögliche generierte ID:
1K7pQ2mZxT9vY4nR8jH3wL
2Jedes Zeichen wird unabhängig aus den 62 Buchstaben und Ziffern ausgewählt. Daher erzeugt die zweimalige Ausführung des Generators fast nie dieselbe Zeichenfolge.
Kollisionswahrscheinlichkeit berechnen
Da eine Nano ID zufällig ausgewählt wird, ist es möglich, wenn auch äußerst unwahrscheinlich, dass zwei generierte IDs übereinstimmen. Dies wird als Kollision bezeichnet. Die Wahrscheinlichkeit für mindestens eine Kollision nach der Generierung von k IDs folgt derselben mathematischen Grundlage wie das „Geburtstagsproblem“:
1P(collision) ≈ 1 - e^(-k² / (2n))
2Dabei ist n die Anzahl der möglichen IDs: die Alphabetgröße hoch der Länge der ID, also n = alphabet_size^length.
Beispielrechnung
Bei der Standardeinstellung, einem Alphabet mit 62 Zeichen und einer ID-Länge von 21:
1n = 62^21 ≈ 4.4 × 10^37 possible IDs
2Die Auflösung der Formel nach einer Kollisionswahrscheinlichkeit von 1 % ergibt:
1k ≈ 9.4 × 10^17 IDs
2Das bedeutet, dass ungefähr 940 Billiarden IDs generiert werden müssen, bevor überhaupt eine Wahrscheinlichkeit von 1 % besteht, dass zwei davon übereinstimmen. Bei einer Generierung von einer Million IDs pro Sekunde würde das Erreichen dieser Anzahl etwa 29.700 Jahre dauern.
Der Wechsel zum URL-sicheren Alphabet mit 64 Zeichen erhöht die Anzahl für dasselbe 1 %-Risiko geringfügig auf etwa 1,3 × 10^18 IDs, da das größere Alphabet mehr mögliche IDs zur Auswahl bietet.
Nano ID im Vergleich zu anderen Bezeichnern
| Typ | Länge | Hinweise |
|---|---|---|
| Nano ID | 21 Zeichen, anpassbar | Zufällig, kompakt, nicht nach Erstellungszeit sortierbar |
| UUID | 36 Zeichen | Standardformat, weithin unterstützt, enthält Bindestriche |
| ULID | 26 Zeichen | Nach Erstellungszeit sortierbar |
| KSUID | 27 Zeichen | Nach Erstellungszeit sortierbar, enthält einen Zeitstempel |
| Ganzzahl mit automatischer Inkrementierung | Unterschiedlich | Einfach und sequenziell, aber vorhersehbar und schwer über separate Datenbanken hinweg zu koordinieren |
Häufig gestellte Fragen
Wie lang ist eine Nano ID standardmäßig, und welcher Zeichensatz wird verwendet?
Der Standardwert sind 21 Zeichen aus dem alphanumerischen Zeichensatz: A–Z, a–z, 0-9, also insgesamt 62 Zeichen.
Unterstützt dieses Tool ein benutzerdefiniertes Alphabet?
Nein. Es bietet sieben festgelegte Zeichensätze: alphanumerisch, URL-sicher, numerisch, alphabetisch, Kleinbuchstaben, Großbuchstaben und „With Symbols“.
Worin unterscheidet sich eine Nano ID von einer UUID?
Eine Nano ID ist kürzer. Sie hat standardmäßig 21 Zeichen gegenüber 36 Zeichen bei einer UUID und ist damit etwa 42 % kürzer. Beide werden zufällig generiert und sind nicht sequenziell.
Kann eine Nano ID nach ihrer Erstellungszeit sortiert werden?
Nein. Nano IDs sind vollständig zufällig und enthalten daher keine Information darüber, wann sie generiert wurden. Formate wie ULID oder KSUID sind dagegen so aufgebaut, dass sie nach der Zeit sortiert werden können.
Ist eine Nano ID als Primärschlüssel einer Datenbank geeignet?
Ja. Sie sollte als Text- oder Zeichenfolgenspalte und nicht als Zahl gespeichert werden, zusammen mit einem eindeutigen Index für schnelle Suchvorgänge.
Wie viele mögliche Nano IDs gibt es?
Das hängt von der gewählten Länge und dem Zeichensatz ab. Bei dem Standardalphabet mit 62 Zeichen und einer Länge von 21 gibt es 62^21, also etwa 4,4 × 10^37, mögliche IDs.
Referenzen
- Sitnik, Andrey. "Nano ID." GitHub, https://github.com/ai/nanoid.
- "Universally unique identifier." Wikipedia, Wikimedia Foundation, https://en.wikipedia.org/wiki/Universally_unique_identifier.
- "ULID Spec." GitHub, https://github.com/ulid/spec.