Menu

UUID 생성기

복사할 수 있는 v1/v4 UUID를 한 번에 생성.

마지막 업데이트

버전
UUID 10개
결과V4
window.crypto를 사용해 브라우저에서 실행됩니다
  1. 136f4fc9c-f905-4ea9-b8f3-6a6442277bfb
  2. 2169e2eb9-8247-4793-9373-40ce12d281b8
  3. 322ad93b3-a6d5-4aff-8bba-0961d0a078c3
  4. 40157083a-0f15-426e-94f4-9331d21f4963
  5. 58f42d324-4924-4c05-8849-aaadad30c81f
  6. 6ccc98fa7-61a5-4a6c-abe6-a19c26fd2d9b
  7. 700b63bdb-9961-4605-93ed-fa35be7be006
  8. 81241dc02-984e-45a6-99e1-9c17838fce38
  9. 9b634351a-33b4-4ed8-af04-24efe0b6a04f
  10. 1054880a4b-986f-4369-8efb-bf323e7472b0

UUID 생성기란?

UUID 생성기는 Universally Unique Identifier(보편 고유 식별자), 즉 어디서 누가 만들어도 통계적으로 절대 겹치지 않는 128비트 값을 만들어 줍니다. 개발자들은 이걸 DB 행의 기본 키, API 리소스 ID, 테스트 픽스처 이름, 메시지 큐의 메시지 ID, 분산 시스템의 식별자 등으로 두루 사용합니다.

UUID가 편리한 이유는 어떤 머신이든 독립적으로 만들어도 다른 누구도 같은 값을 만들지 않는다고 믿을 수 있기 때문입니다. 중앙 카운터도, 시퀀스 동기화도, 서버 왕복도 필요 없습니다. 그래서 "누구한테 허락받지 않고" ID를 발급해야 하는 상황이라면 어디든 잘 어울립니다.

*GUID*(Globally Unique Identifier)는 Microsoft가 같은 128비트 식별자를 부르는 이름입니다. 실무 관점에서는 GUID와 UUID는 사실상 같은 것이고, 생태계마다 부르는 이름만 다를 뿐입니다.

UUID를 만들면서 알게 되는 것들

  • UUID v4가 가장 흔합니다. 완전 랜덤이라 범용 ID로 쓰기에 무난합니다.
  • UUID v7은 *시간순으로 정렬되는* 형태라, v4와 같은 고유성을 가지면서도 DB 인덱스와 잘 맞습니다(행이 거의 시간 순서대로 들어갑니다).
  • UUID는 *식별자*이지 *비밀값*이 아닙니다. 별도의 보안 설계 없이 액세스 토큰으로 쓰면 안 됩니다.

UUID 만들기, 단계별로

  1. 버전 고르기

    랜덤 ID가 필요하면 v4, 인덱스 친화적인 시간순 ID가 필요하면 v7, 타임스탬프 + 노드 ID가 필요한 레거시 시스템이라면 v1을 선택하세요.

  2. 개수 정하기

    ID 하나만 빠르게 뽑을 수도 있고, DB 시드 데이터나 API 응답 모킹을 위해 한 번에 최대 1,000개까지 생성할 수도 있습니다.

  3. 포맷 선택

    대문자 여부, 하이픈 유무, 중괄호({...}) 감싸기 등을 토글해서 사용 중인 DB·코드·플랫폼이 기대하는 표기에 맞추세요.

  4. Copy 또는 Copy All 클릭

    하나만 복사하거나 목록 전체를 복사할 수 있습니다. 모든 생성은 브라우저 안에서만 이루어집니다.

UUID 버전 한눈에 보기

실무에서 자주 쓰이는 다섯 가지 UUID 버전과 각각의 용도입니다.

버전고유성의 출처언제 쓰나
v1타임스탬프 + MAC 주소레거시 시스템. 호스트 MAC이 노출될 수 있음
v3이름 + 네임스페이스의 MD5 해시문자열에서 결정론적으로 ID를 만들고 싶을 때
v4암호학적 난수대부분의 앱에서 기본값. 고민되면 이걸 쓰세요
v5이름 + 네임스페이스의 SHA-1 해시v3와 비슷하지만 더 강한 해시를 쓰고 싶을 때
v7Unix 타임스탬프(ms) + 난수DB 기본 키. 시간순 정렬이 필요한 경우

직접 따라 해볼 만한 UUID 예시

전형적인 UUID v4

랜덤 ID

550e8400-e29b-41d4-a716-446655440000

16진수 다섯 그룹이 하이픈으로 구분되어 있죠. 13번째 자리의 4가 "이건 v4(랜덤) UUID"라는 표시입니다.

JSON 레코드 안에 UUID 넣기

레코드
{  "id": "550e8400-e29b-41d4-a716-446655440000",  "name": "Lesson 1",  "createdAt": "2026-04-25T10:00:00Z"}

API에서는 보통 UUID를 JSON 문자열로 노출합니다. 많은 DB는 네이티브 UUID 컬럼 타입도 지원하는데, 이 경우 36자 문자열 대신 16바이트로 저장됩니다.

포맷별 표기 비교

소문자

550e8400-e29b-41d4-a716-446655440000

대문자

550E8400-E29B-41D4-A716-446655440000

중괄호 (Microsoft 스타일)

{550E8400-E29B-41D4-A716-446655440000}

하이픈 없음

550e8400e29b41d4a716446655440000

내부 값은 똑같은 128비트인데 겉모양만 네 가지입니다. 한 프로젝트 안에서는 하나로 통일하세요. 섞어 쓰면 비교 결과가 안 맞는 황당한 버그가 생깁니다.

UUID에서 자주 하는 실수

  • UUID를 "이 사용자가 이 리소스의 주인이라는 증거"처럼 취급하는 것. UUID는 단순한 식별자일 뿐이고, 권한 검사는 별도로 해야 합니다.
  • UUID를 비밀번호나 세션 토큰으로 쓰는 것. 기본 UUID는 그 정도로 비밀스러운 값이 아닙니다.
  • 한 DB 안에서 대문자·소문자·중괄호·하이픈 없는 형식을 정규화 없이 섞어 쓰는 것.

UUID 생성기 FAQ

UUID는 어떻게 만드나요?
UUID 생성기를 열고 클릭만 하면 끝입니다. 코드에서도 대부분의 플랫폼에 내장되어 있어요. 브라우저와 Node.js의 crypto.randomUUID(), Python의 uuid.uuid4(), Java의 UUID.randomUUID() 같은 식이죠.
UUID는 어디에 쓰나요?
서버와 협의하지 않고도 전역적으로 유일한 식별자가 필요한 곳이라면 어디든 씁니다. DB 기본 키, REST 리소스 ID, 분산 환경의 이벤트 ID, 로그 상관관계(correlation) ID, 익명 사용자 ID 등이 대표적입니다.
UUID와 GUID는 같은 건가요?
실무 관점에서는 같다고 봐도 됩니다. 둘 다 같은 128비트 식별자 형식을 가리키거든요. *GUID*는 주로 Microsoft 생태계에서 쓰는 이름이고, *UUID*는 IETF 스펙(RFC 4122, 그리고 v6/v7/v8을 추가한 RFC 9562)과 그 외 대부분의 플랫폼에서 쓰는 이름입니다.
어떤 UUID 버전을 골라야 하나요?
범용 랜덤 ID라면 v4. 시간순으로 정렬되어 DB 기본 키로 잘 어울리는 ID가 필요하면 v7. 이름으로부터 결정론적으로 같은 ID를 만들어야 하는 특수한 상황에서만 v3 / v5를 쓰세요.
UUID도 충돌할 수 있나요?
이론적으로는 가능하지만, 제대로 만든 UUID라면 그 확률은 사실상 무시할 수 있습니다. 초당 10억 개의 v4 UUID를 85년 동안 계속 생성해도 한 번이라도 겹칠 확률이 10억분의 1보다 낮을 정도예요.
UUID는 문자열로 저장해야 하나요?
문자열로 저장해도 무방하고 호환성도 좋습니다. 다만 많은 DB는 네이티브 UUID 타입을 제공해서 16바이트로 저장할 수 있어요. 저장 공간이 절반이고 비교도 더 빠릅니다. 사용하는 DB와 도구 체인에 맞는 쪽을 고르세요.

자세히 알아보기

다른 개발자 도구

Coddy로 코딩 배우기

시작하기