기능 소개
UUID(universally unique identifier)는 3f2b8c1e-9a4d-4e7b-8c2f-1d5e6a7b8c9d처럼 16진수 32자리를 다섯 그룹으로 나누어 쓰는 128비트 값입니다. 중앙 서버에 묻지 않고도 어디서든, 어떤 프로그램이든 만들 수 있으며 그래도 고유합니다. 그래서 데이터베이스 키, 요청 ID, 파일 이름, 메시지 식별자로 쓰입니다.
이 생성기는 암호학적으로 안전한 crypto.getRandomValues API를 사용해 브라우저에서 UUID를 만듭니다. 현행 UUID 표준인 RFC 9562를 따릅니다.
사용 방법
- 무작위 ID는 v4, 생성 시간순으로 정렬되는 ID는 v7을 고릅니다.
- 필요한 개수를 1개에서 1000개 사이로 고릅니다.
- 32자의 압축된 형태가 필요하면 하이픈을 끄고, 대문자를 기대하는 시스템이라면 대문자를 켭니다.
- 생성을 클릭해 새 묶음을 만든 뒤 목록을 복사하거나 다운로드합니다.
예시
버전 4 UUID 다섯 개는 다음과 같습니다.
9b2c7f0e-5d1a-4c3e-a8f7-2e6b1d0c9a84
1f4e8a2b-7c3d-4b9e-8d1f-6a5c2e7b3f90
c0a7d3e9-2b6f-4e1a-b5c8-9d4f7a1e2c63
5e9b1c4d-8a2f-4d7e-9c3b-0f6a8e2d1b57
a3f6e2d8-1c9b-4a5e-87d4-3b2c0e9f6a18
세 번째 그룹 맨 앞의 4가 버전이고, 네 번째 그룹의 첫 자리(8, 9, a, b)는 RFC 변형(variant)을 나타냅니다.
어떤 버전을 써야 할까요?
- 새 데이터베이스 기본 키에는 v7을 쓰세요. 삽입이 빠르게 유지되고, 별도 열 없이 레코드를 생성 시간순으로 정렬할 수 있습니다.
- 공개 URL처럼 ID가 생성 시점을 드러내면 안 될 때는 v4를 쓰세요.
자주 묻는 질문
› UUID v4와 v7은 어떻게 다른가요?
버전 4는 122비트가 순수한 무작위 값입니다. 버전 7은 밀리초 단위의 생성 시간으로 시작하고 그 뒤에 무작위 비트가 이어지므로, v7 ID는 생성 시간순으로 정렬됩니다. 새 행이 인덱스 끝에 추가되기 때문에 데이터베이스 기본 키로 훨씬 적합합니다.
› 생성된 UUID 두 개가 겹칠 수 있나요?
실질적으로는 없습니다. 무작위 비트가 122개이므로, 중복이 단 하나라도 생길 확률이 50%에 이르려면 85년 동안 초당 약 10억 개의 UUID를 생성해야 합니다.
› UUID와 GUID는 같은 것인가요?
네. GUID는 같은 128비트 식별자를 Microsoft가 부르는 이름입니다. 일부 Microsoft 도구는 대문자로 출력하거나 중괄호로 감쌉니다.
› 이 UUID를 비밀 값으로 써도 안전한가요?
브라우저의 암호학적으로 안전한 난수 생성기로 만들어지며 기기 밖으로 나가지 않습니다. 그래도 API 키나 세션 비밀 값에는 전용 토큰 형식을 쓰는 편이 좋습니다.