UUID 생성기
데이터베이스, API, 테스트용 고유 ID를 클릭 한 번으로.
포맷
브라우저에서 실행됩니다. 입력한 내용은 어디로도 전송되지 않습니다.
- 버전 4와 7 지원
- 한 번에 최대 1,000개
- 안전한 난수 사용
UUID 생성 방법
- 무작위 ID는 버전 4, 시간순으로 정렬되는 ID는 버전 7을 선택하세요.
- 필요한 개수와 포맷을 설정하세요.
- 생성을 클릭한 뒤 목록을 복사하거나 다운로드하세요.
UUID 버전 비교
| 버전 | 구성 | 시간순 정렬 |
|---|---|---|
| v4 (이 도구) | 122비트 무작위 값 | 아니요 |
| v7 (이 도구) | 48비트 타임스탬프 + 무작위 값 | 예 |
| v1 (여기서는 미지원) | 타임스탬프 + 기기 MAC 주소 | 예, 다만 어떤 기기에서 만들어졌는지 드러날 수 있음 |
RFC 9562 기준 UUID 구조
| 부분 | 길이 | 의미 |
|---|---|---|
| 버전 니블 | 16진수 1자리 | 3번째 그룹에 위치, 버전 4는 4, 버전 7은 7 |
| 변이(variant) 비트 | 4번째 그룹의 상위 2비트 | 이 RFC의 UUID 변이 값인 10으로 설정 |
| 전체 길이 | 36자 | 16진수 32자리와 하이픈 4개 |
UUID 사용 팁
- 데이터베이스에 UUID 전용 타입이나 16바이트 이진(binary) 타입이 있다면 그것을 사용하세요. 36자 텍스트로 저장하면 필요한 용량이 거의 두 배로 늘어납니다.
- 버전 7은 앞부분의 타임스탬프 덕분에 생성 시각순으로 정렬되지만, ID를 가진 사람이라면 누구나 밀리초 단위로 대략적인 생성 시각을 알 수 있습니다.
- 중괄호나 하이픈 없는 형식은 일부 오래된 Windows API와 PowerShell 스크립트가 기대하는 GUID 모양에 맞춘 것입니다.
UUID 생성기 자주 묻는 질문
UUID v4와 v7의 차이는 무엇인가요?
버전 4는 122비트의 무작위 값입니다. 버전 7은 밀리초 단위의 48비트 타임스탬프로 시작한 뒤 무작위 비트가 이어지므로, 최신 ID가 이전 ID보다 뒤에 정렬됩니다.
두 UUID가 같아질 수도 있나요?
실제로는 거의 없습니다. 10억분의 1 확률로 단 한 번이라도 중복이 생기려면 버전 4 UUID를 약 103조 개 생성해야 합니다.
GUID는 UUID와 같은 것인가요?
네. GUID는 Microsoft가 같은 128비트 형식에 붙인 이름입니다. Windows와 .NET에서 쓰는 {XXXXXXXX-XXXX-...} 형식을 원하면 대문자와 중괄호를 체크하세요.
데이터베이스 기본 키에는 어떤 버전을 써야 하나요?
버전 7입니다. 값이 시간순으로 생성되어 새 행이 무작위 위치가 아닌 인덱스 끝에 추가되므로 삽입 속도가 빠르게 유지됩니다. ID로 생성 시점이 드러나면 안 되는 경우에는 버전 4를 사용하세요.
UUID를 비밀번호나 비밀 토큰으로 써도 되나요?
무작위 비트 자체는 브라우저의 암호학적으로 안전한 생성기에서 나오지만, UUID는 식별자로 쓰기 위한 것입니다. 버전 7 ID는 생성 시각도 드러나므로 비밀 값에는 비밀번호 생성기를 사용하세요.
UUID의 길이는 얼마인가요?
하이픈을 포함하면 36자입니다. 16진수 32자리와 하이픈 4개로 총 128비트의 데이터를 표현합니다.
암호학적으로 안전한 난수원을 사용하나요?
네. 두 버전 모두 브라우저의 암호학적으로 안전한 난수 생성기인 crypto.getRandomValues(버전 4는 crypto.randomUUID)로 만들어지며, Math.random은 사용하지 않습니다.