// generators

UUID Generator.

Generate UUIDs locally using crypto.getRandomValues and crypto.randomUUID. Bulk modes, hyphenation, and uppercase.

Client-sidecrypto.randomUUIDNo upload

UUIDs

자주 묻는 질문

UUID v7을 언제 사용해야 하나요?

데이터베이스 기본 키용(시간순 정렬, 더 나은 B-tree 성능).

고유하나요?

네, 충돌 확률은 사실상 제로입니다.

하이픈 없이 생성할 수 있나요?

네, 하이픈 없는 UUID를 복사할 수 있습니다.

UUID란

UUID(Universally Unique Identifier)는 128비트 크기의 고유 식별자입니다. 32개의 16진수 문자와 4개의 하이픈으로 구성되며, 전 세계적으로 중복될 가능성이 거의 없는 식별자를 생성합니다.

UUID는 분산 시스템에서 특히 유용합니다. 중앙 관리 없이도 각 노드가 고유한 식별자를 생성할 수 있어, 데이터베이스 레코드, API 리소스, 세션 등의 식별에 사용됩니다.

UUID는 5가지 버전으로 나뉘며, 각각 다른 생성 방식을 사용합니다. 가장 널리 사용되는 것은 v4(무작위)와 v5(이름 기반)입니다.

UUID v4 vs v7

UUID v4는 완전히 무작위로 생성됩니다. 128비트 중 122비트가 무작위 값으로 채워지며, 생성된 UUID를 정렬할 수 없는 것이 특징입니다.

UUID v7은 타임스탬프 기반으로 생성됩니다. 시간 순서대로 정렬 가능하며, 최신 데이터베이스 시스템에서 성능이 더 우수합니다. 2024년에 표준으로 제안되었습니다.

v7은 타임스탬프를 포함하므로 생성 시간을 추정할 수 있고, 인덱스 성능도 더 좋습니다. 새로운 프로젝트에서는 v7 사용이 권장됩니다.

사용 사례

데이터베이스 프라이머리 키: auto-increment 대신 UUID를 사용하면 분산 환경에서도 고유성을 보장할 수 있습니다.

API 리소스 식별: RESTful API에서 각 리소스를 고유하게 식별할 때 UUID를 사용합니다. 예: /users/550e8400-e29b-41d4-a716-446655440000

세션 및 토큰 식별: 사용자 세션, JWT 토큰, API 키 등에서 고유 식별자가 필요할 때 UUID를 활용합니다.