UUID 생성기
브라우저의 암호학적 난수성을 사용해 버전 4 UUID를 — 한 번에 하나 또는 최대 100개까지 — 생성합니다. 개별적으로 복사하거나 한 번에 모두 복사할 수 있습니다.
UUID v4란 무엇인가요?
UUID(universally unique identifier, 범용 고유 식별자)는 550e8400-e29b-41d4-a716-446655440000처럼 하이픈으로 구분된 다섯 그룹의 32자리 16진수로 표기되는 128비트 숫자입니다. 버전 4 UUID는 무작위 데이터로 만들어집니다: 128비트 중 122비트가 무작위이고, 6비트는 버전(세 번째 그룹의 숫자 4)과 변형(네 번째 그룹 맨 앞의 8, 9, a, b 중 하나)을 표시하기 위해 고정됩니다.
충돌 가능성은 천문학적으로 낮습니다. 버전 4 UUID는 약 5.3 × 10^36가지가 존재하므로, 초당 10억 개씩 생성하더라도 중복이 하나라도 발생할 확률이 50%에 도달하기까지 약 85년이 걸립니다 — 이것이 UUID가 중앙의 조정 없이도 데이터베이스 키, 요청 ID, 파일 이름으로 사용되는 이유입니다.
이 도구는 Web Crypto API(crypto.randomUUID, 대체 수단으로 crypto.getRandomValues)를 사용하므로, 모든 UUID는 암호학적으로 안전한 난수 생성기에서 만들어지며 전적으로 브라우저에서 생성됩니다.
자주 묻는 질문
- UUID v4란 무엇인가요?
- UUID(범용 고유 식별자)는 550e8400-e29b-41d4-a716-446655440000처럼 하이픈으로 구분된 다섯 그룹의 32자리 16진수로 표기되는 128비트 식별자입니다. 버전 4 UUID는 무작위 데이터로 생성됩니다 — 128비트 중 122비트가 무작위이고, 6비트는 버전과 변형을 표시하기 위해 고정됩니다.
- 생성된 두 UUID가 충돌할 수 있나요?
- 이론적으로는 가능하지만 실제로는 그렇지 않습니다. 122개의 무작위 비트가 있으므로 버전 4 UUID에는 약 5.3 × 10^36가지의 경우의 수가 있습니다. 단 하나의 충돌이라도 발생할 확률이 50%에 도달하려면, 초당 약 10억 개의 UUID를 약 85년 동안 계속 생성해야 합니다.
- 그 난수는 암호학적으로 안전한가요?
- 네. UUID는 브라우저의 Web Crypto API(crypto.randomUUID, 대체 수단으로 crypto.getRandomValues)로 생성되며, 이는 예측 가능한 Math.random이 아니라 암호학적으로 안전한 난수 생성기를 사용합니다.
- UUID는 서버에서 생성되나요?
- 아니요. 모든 처리는 브라우저에서 로컬로 이루어지므로, UUID가 네트워크를 거치지 않으며 누구도 이를 기록할 수 없습니다. 페이지를 새로고침하면 완전히 새롭고 무관한 세트가 생성됩니다.
- 대문자와 하이픈 없음 옵션은 무엇을 위한 것인가요?
- 일부 시스템은 UUID를 대문자로 저장하거나 비교하며, 일부(특정 데이터베이스나 API 등)는 하이픈이 없는 32자 형태를 기대합니다. 이 옵션들은 동일한 값을 다시 서식화할 뿐입니다 — RFC 4122에서는 대소문자나 하이픈 유무가 UUID의 동일성을 바꾸지 않는 것으로 취급합니다.