Saltar al contenido principal

Generador de UUID/GUID

Herramienta online gratuita para generar UUID (Identificador Único Universal) v4.

⚙️ 생성 옵션

✨ 생성된 UUID

UUID (Universally Unique Identifier) v4를 생성합니다. 각 UUID는 통계적으로 고유하며, 데이터베이스 키, 세션 ID 등으로 사용됩니다.

💡 예시

기본 (소문자, 하이픈):
550e8400-e29b-41d4-a716-446655440000
대문자:
550E8400-E29B-41D4-A716-446655440000
하이픈 없음:
550e8400e29b41d4a716446655440000

¿Qué es UUID?

UUID (Identificador Único Universal) o GUID (Identificador Globalmente Único) es un número de 128 bits utilizado para identificar información de forma única. UUID v4 se genera aleatoriamente y la probabilidad de duplicación es casi cero.

Características Principales

  • Generación Masiva: Selecciona entre 1, 5, 10, 20 unidades
  • Mayúsculas/Minúsculas: Elige el formato deseado
  • Opción de Guiones: Incluye o elimina guiones
  • Copia Instantánea: Copia al portapapeles con un clic
  • Basado en Navegador: No requiere instalación, ejecuta completamente en el cliente

Modo de Uso

Uso Básico

  1. Selecciona el número de UUIDs a generar (1, 5, 10, 20)
  2. Selecciona las opciones:
    • Mayúsculas: Marca para generar en mayúsculas
    • Incluir Guiones: Marca para formato con guiones
  3. Haz clic en el botón "Generar"
  4. Copia y usa los UUIDs generados

Selección de Formato

Formato Predeterminado (minúsculas, con guiones)

550e8400-e29b-41d4-a716-446655440000

Mayúsculas

550E8400-E29B-41D4-A716-446655440000

Sin Guiones

550e8400e29b41d4a716446655440000

Estructura de UUID

UUID v4 tiene la siguiente estructura:

xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx
  • x: Hexadecimal aleatorio (0-9, a-f)
  • 4: Número de versión (indica v4)
  • y: Hexadecimal aleatorio (uno de 8, 9, a, b)

Total de 128 bits = representado por 32 dígitos hexadecimales.

Casos de Uso

1. Clave Primaria de Base de Datos

CREATE TABLE users (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
name VARCHAR(100),
email VARCHAR(100)
);

2. ID de Sistema Distribuido

IDs generados independientemente en múltiples servidores sin colisión:

const userId = '550e8400-e29b-41d4-a716-446655440000';
const sessionId = 'a3bb189e-8bf9-3888-9912-ace4e6543002';

3. Nombre de Archivo

const filename = `upload-${uuid}.jpg`;
// upload-550e8400-e29b-41d4-a716-446655440000.jpg

4. Token de API

Authorization: Bearer 550e8400-e29b-41d4-a716-446655440000

5. ID de Sesión

const sessionId = generateUUID();
sessionStorage.setItem('sessionId', sessionId);

Versiones de UUID

UUID v1

  • Basado en marca de tiempo + dirección MAC
  • Garantiza orden temporal
  • Preocupación por exposición de dirección MAC

UUID v4 (usado en esta herramienta) ⭐

  • Completamente aleatorio
  • Más ampliamente usado
  • Sin exposición de información personal

UUID v5

  • Basado en nombre (hash SHA-1)
  • Misma entrada → mismo UUID

Probabilidad de Colisión

La probabilidad de colisión de UUID v4 es extremadamente baja:

  • Total de UUIDs posibles: 2^122 ≈ 5.3 × 10^36
  • Probabilidad de colisión al generar mil millones: aproximadamente 10^-18 (casi 0)
  • Número de átomos en el universo: 10^80

¡Prácticamente no necesitas preocuparte por colisiones!

Uso por Lenguaje de Programación

JavaScript

// Navegador
const uuid = crypto.randomUUID();

// Node.js
const { v4: uuidv4 } = require('uuid');
const uuid = uuidv4();

Python

import uuid

# Generar UUID v4
my_uuid = uuid.uuid4()
print(my_uuid) # 550e8400-e29b-41d4-a716-446655440000

Java

import java.util.UUID;

UUID uuid = UUID.randomUUID();
String uuidString = uuid.toString();

PHP

<?php
$uuid = sprintf('%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
mt_rand(0, 0xffff), mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0x0fff) | 0x4000,
mt_rand(0, 0x3fff) | 0x8000,
mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff)
);
?>

C#

using System;

Guid uuid = Guid.NewGuid();
string uuidString = uuid.ToString();

Consejos Prácticos

1. Generación Masiva

Genera muchos UUIDs a la vez cuando los necesites:

  • Generación de datos de prueba
  • Scripts de migración
  • Preparación de datos semilla

2. Indexación de Base de Datos

Consideraciones al usar UUID como clave primaria:

  • Completamente aleatorio → posible degradación de rendimiento del índice B-Tree
  • Considera UUID v1 o ULID (características secuenciales)
  • Recomendado usar gen_random_uuid() de PostgreSQL

3. Uso en URLs

// Formato sin guiones es más limpio
const url = `https://example.com/items/${uuid.replace(/-/g, '')}`;

4. Registro y Seguimiento

const requestId = crypto.randomUUID();
console.log(`[${requestId}] Solicitud iniciada`);
// ... procesamiento ...
console.log(`[${requestId}] Solicitud completada`);

Consideraciones de Seguridad

✅ Uso Seguro

  • ID de sesión
  • Clave de API (con seguridad adicional)
  • Nombres de archivos temporales
  • ID de seguimiento

⚠️ Requiere Precaución

  • Impredecible pero no secreto: No uses solo UUID para autenticación
  • Se requiere validación adicional: Verificación de permisos, firma, etc.
  • Puede exponerse: Se registra en logs al incluirse en URLs

Preguntas Frecuentes

P: ¿Son realmente únicos los UUIDs?

Sí. Estadísticamente, la probabilidad de colisión es casi cero. La posibilidad de duplicación es prácticamente inexistente incluso generando mil millones por segundo durante la edad del universo.

P: ¿Cuál es la diferencia entre UUID v4 y v1?

  • v1: Basado en marca de tiempo + dirección MAC, garantiza orden temporal, preocupación por privacidad
  • v4: Completamente aleatorio, sin orden temporal, seguro para privacidad

P: ¿Debo usar mayúsculas o minúsculas?

Generalmente las minúsculas son estándar, pero ambas son válidas. Elige según los requisitos de tu sistema.

P: ¿Son necesarios los guiones?

Los guiones son para legibilidad. Algunos sistemas prefieren el formato sin guiones.

P: ¿Puedo usarlos como clave primaria de base de datos?

Sí, es posible. Sin embargo, para rendimiento considera IDs secuenciales (AUTO_INCREMENT) o ULID.

P: ¿Puedo usar UUID como contraseña?

No recomendado. Aunque impredecible, es más seguro usar funciones hash de contraseña (bcrypt, argon2).

Herramientas Relacionadas

Rendimiento

  • Velocidad de generación: Menos de milisegundos
  • Compatibilidad del navegador: Chrome 92+, Firefox 95+, Safari 15.4+
  • Uso de memoria: Mínimo
  • Funcionamiento offline: Totalmente compatible

Compatibilidad del Navegador

Esta herramienta utiliza Web Crypto API:

  • Chrome 92+ ✓
  • Firefox 95+ ✓
  • Safari 15.4+ ✓
  • Edge 92+ ✓

Puede no funcionar en navegadores antiguos.

💬 ¿Te ha sido útil esta herramienta?

Si esta herramienta te ha resultado útil, compártela con otros desarrolladores. También puedes contribuir con sugerencias de mejora o reportar problemas en nuestro repositorio.

Privacidad

Esta herramienta funciona completamente del lado del cliente. Los UUIDs generados no se envían a ningún servidor y se procesan únicamente en tu navegador. Todas las operaciones se realizan localmente para garantizar tu privacidad y seguridad.