Generador de Nano ID
Genera en tu navegador, de forma masiva, identificadores únicos, cortos y seguros para URL. Elige libremente el conjunto de caracteres (predeterminado, alfanumérico, minúsculas, mayúsculas, dígitos o hexadecimal) y la longitud; ideal cuando necesitas algo más corto que un UUID.
Comparación de formatos de ID
| Formato | Longitud | Tamaño del alfabeto | Ordenable por fecha de creación | Descripción |
|---|---|---|---|---|
| Nano ID | 21 caracteres por defecto (configurable de 1 a 64) | 64 caracteres | No (totalmente aleatorio) | Un ID corto y aleatorio compuesto solo por caracteres seguros para URL. El alfabeto y la longitud se pueden configurar libremente. |
| UUID v4 | 36 caracteres (incluye 4 guiones) | 16 caracteres (hexadecimal) | No (totalmente aleatorio) | Un identificador de 128 bits estandarizado en la RFC 9562. La notación hexadecimal separada por guiones es el formato estándar. |
| ULID | 26 caracteres | 32 caracteres (Base32) | Sí (los primeros 10 caracteres son una marca de tiempo) | Comienza con una marca de tiempo de precisión de milisegundos, por lo que los ID pueden ordenarse como cadenas según el orden de creación. |
Consejos
- Nano ID se genera con aleatoriedad criptográficamente segura mediante la Web Crypto API y se procesa por completo en tu navegador: nada se envía a los servidores de toolbase.cc.
- El alfabeto predeterminado de 64 caracteres (
A-Za-z0-9_-) no contiene símbolos ni espacios, por lo que es seguro usarlo directamente en rutas de URL o nombres de archivo. - Limitar el alfabeto a solo dígitos o hexadecimal permite generar ID que coincidan con formatos de sistemas existentes (por ejemplo, números de pedido que son solo dígitos).
- Cuanto más corto es el ID, mayor es la probabilidad de colisión. Los sistemas que emiten muchos ID deberían mantenerse cerca de los 21 caracteres predeterminados, mientras que para pequeños conjuntos de prueba pueden bastar de 8 a 10.
- Aumenta la cantidad y usa "Copiar todo" para generar rápidamente datos de prueba o datos iniciales (seed) en masa.
Preguntas frecuentes
A propósito — Por qué Nano ID puede ser más corto que un UUID
Nano ID es una biblioteca de JavaScript para generar ID, publicada en 2017 por Andrey Sitnik, el desarrollador de PostCSS. A pesar de no tener dependencias y ser diminuta (apenas unos cientos de bytes de código), su uso de aleatoriedad criptográficamente segura le dio reconocimiento, y hoy acumula decenas de millones de descargas semanales en npm.
La brevedad de un ID depende de cuántos caracteres distintos tiene su alfabeto. Un UUID usa solo dígitos hexadecimales (16 símbolos) para codificar 128 bits, lo que requiere 36 caracteres. Nano ID usa 64 símbolos, por lo que puede comprimir una cantidad comparable de aleatoriedad (126 bits por defecto) en solo 21 caracteres. La razón es que cada carácter aporta más información (log₂64 = 6 bits frente a log₂16 = 4 bits del hexadecimal).
La configuración predeterminada (21 caracteres, alfabeto de 64 símbolos) ofrece unos 126 bits de aleatoriedad, casi equivalente a los 122 bits de UUID v4. Usando la aproximación del problema del cumpleaños, se necesitarían generar unos 1,09×10¹⁹ ID antes de que la probabilidad de colisión alcance el 50%, así que en la práctica hay poco de qué preocuparse.