UUID 생성기|v4 대량 생성, 하이픈 없음/대문자 형식 지원

브라우저에서 원하는 만큼 UUID v4(무작위) 식별자를 대량으로 생성합니다. 클릭 한 번으로 표준・대문자・하이픈 없음・중괄호・URN 형식으로 변환해 바로 복사할 수 있습니다. 무료, 가입 불필요.

UUID 버전 한눈에 보기

버전 생성 방식 설명
UUID v1 타임스탬프 + MAC 주소 생성 시각과 네트워크 카드의 MAC 주소로부터 생성됩니다. 생성한 장치가 드러날 수 있어 개인정보 문제가 있으며, 현재는 신규 시스템에서 거의 채택되지 않습니다.
UUID v3 네임스페이스 + MD5 해시 네임스페이스와 이름 문자열을 MD5로 해시하여 생성합니다. 결정적(deterministic)이라 같은 입력에서는 항상 같은 UUID가 나옵니다. MD5의 충돌 취약점 때문에 신규 용도에는 v5가 권장됩니다.
UUID v4 완전 무작위 암호학적으로 안전한 난수로부터 생성됩니다. 출처 정보를 포함하지 않아 안전하고 구현도 간단해 가장 널리 사용되는 방식입니다. 이 도구가 생성하는 형식입니다.
UUID v5 네임스페이스 + SHA-1 해시 v3과 같은 네임스페이스 방식이지만 SHA-1을 사용합니다. 결정적 생성이 필요한 경우(같은 데이터에서 항상 같은 ID를 재현하고 싶은 경우)에 권장됩니다.
UUID v6 재배열 타임스탬프 + 무작위 2024년 RFC 9562로 표준화되었습니다. v1의 타임스탬프 필드 순서를 바꿔 바이트열의 사전순과 시간순이 일치하도록 하여 데이터베이스 인덱스 효율을 높였습니다.
UUID v7 Unix 타임스탬프 + 무작위 2024년 RFC 9562로 표준화되었습니다. 밀리초 단위의 Unix 타임스탬프로 시작해 생성 순서대로 정렬할 수 있습니다. 신규 개발에서 v4의 대안으로 채택이 확대되고 있습니다.

UUID 생성이란

UUID(Universally Unique Identifier)는 데이터베이스의 기본 키나 API의 요청 ID 등에 쓰는, 전 세계에서 중복되지 않는 것을 목적으로 한 128비트 식별자입니다. 중앙 서버에서 일련번호를 관리하지 않아도, 각 단말·서버가 독립적으로 발행하기만 하면 실용상 충돌하지 않는다는 점이 특징입니다.

이 도구는 Web Crypto API를 사용해 UUID v4(완전 무작위)를 브라우저 안에서 생성합니다. 생성 처리는 서버로 전송되지 않으며, 지정하신 건수를 한꺼번에 생성하여 표준 형식·하이픈 없음·대문자·중괄호 포함·URN 형식으로 한 번의 클릭으로 변환해 복사하실 수 있습니다.

UUID 생성 사용 방법

  1. 생성 건수를 지정합니다 필요한 개수를 입력합니다. 테스트 데이터나 시드 데이터용으로 한꺼번에 생성하고 싶으실 때는 넉넉히 지정하실 수 있습니다.
  2. 표시 형식을 고릅니다 표준(소문자·하이픈 구분) 외에 하이픈 없음·대문자·중괄호 포함·URN 형식 중에서 용도에 맞는 형식을 선택합니다.
  3. 생성하여 복사합니다 ‘생성하기’를 누르면 결과가 목록으로 표시됩니다. ‘전체 복사’ 또는 개별 ‘복사’ 버튼으로 클립보드에 붙여 넣으실 수 있습니다.

더 잘 활용하기 위한 팁

  • 생성된 UUID는 브라우저 내 Web Crypto API로 처리되며, toolbase.cc 서버로 전송되지 않습니다.
  • 데이터베이스 기본 키나 API 요청 ID처럼 고유성은 필요하지만 순차적이고 예측 가능한 ID는 원치 않을 때 UUID v4가 널리 사용됩니다.
  • UUID v4는 128비트 중 122비트가 무작위이므로 충돌 확률이 천문학적으로 낮습니다(10억 개를 생성해도 충돌 확률이 약 50%에 도달하려면 약 2.7×10¹⁸개가 필요합니다).
  • "하이픈 없음" 형식은 URL 경로 세그먼트나 파일명으로 쓰기 편리합니다. "중괄호 포함" 형식은 Windows COM/레지스트리에서 쓰이는 GUID 표기와 같습니다.
  • 생성 개수를 늘린 뒤 "전체 복사"를 사용하면 테스트 데이터나 시드 데이터를 한 번에 대량으로 만들 수 있습니다.

UUID 생성이 도움이 되는 상황

데이터베이스의 기본 키 설계

일련번호로 하고 싶지 않거나 생성원을 추측당하고 싶지 않은 테이블의 기본 키로서, 중복 걱정이 없는 UUID v4를 부여하실 수 있습니다.

API의 요청 ID·추적 ID

로그 조사나 디버그를 위해 각 요청에 고유한 ID를 부여할 때, 필요한 건수를 한꺼번에 생성하실 수 있습니다.

테스트용 데이터·시드 데이터의 작성

개발 환경의 초기 데이터를 넣을 때, 중복되지 않는 ID 열을 건수 지정으로 한꺼번에 생성해 그대로 복사해 쓰실 수 있습니다.

파일명·임시 토큰의 생성

업로드 파일의 임시 이름이나, 추측하기 어려운 임시 토큰으로 ‘하이픈 없음’ 형식의 UUID를 이용하실 수 있습니다.

용어집

UUID v4
암호학적 의사난수로부터 생성되는, 생성원의 정보를 포함하지 않는 UUID입니다. 구현이 간단하고 프라이버시 면에서 안전하여 가장 널리 쓰입니다.
GUID
마이크로소프트가 자사 구현에서 사용한 UUID의 다른 이름입니다. UUID와 호환되는 128비트 식별자를 가리키며, 중괄호를 붙인 형식으로 표기되는 경우가 많습니다.
Web Crypto API
브라우저가 표준으로 갖추고 있는 암호 관련 자바스크립트 API군입니다. 이 도구는 이 API를 사용해 UUID v4를 브라우저 안에서만 생성하며 서버로는 전송하지 않습니다.
URN 형식
urn:uuid:라는 접두사를 붙인 UUID의 표기 형식입니다. XML·RDF 등 URN(통일 자원 이름)을 요구하는 사양 안에서 UUID를 식별자로 삽입할 때 쓰입니다.
UUID v7
2024년에 RFC 9562로 표준화된, 앞부분에 유닉스 타임스탬프를 갖는 UUID입니다. 생성 순으로 정렬할 수 있어 데이터베이스 삽입 효율이 요구되는 신규 개발에서 v4의 대안으로 채택이 늘고 있습니다.

자주 묻는 질문

이론적으로 0은 아니지만, UUID v4는 122비트의 무작위성을 가지므로 실무적으로는 무시할 수 있는 수준입니다. 초당 10억 개의 UUID를 100년간 계속 생성해도 중복이 한 번 발생할 확률은 약 50%에 불과합니다.

네, 기본적으로 같은 개념입니다. GUID(Globally Unique Identifier)는 마이크로소프트가 자사 구현에 사용한 명칭으로, UUID와 호환되는 128비트 식별자를 가리킵니다. 중괄호 형식 {xxxxxxxx-xxxx-...}은 Windows COM/레지스트리에서 흔히 쓰이는 GUID 표기입니다.

UUID v4는 무작위이기 때문에 연속된 정수(AUTO_INCREMENT)에 비해 인덱스 크기가 커지고 삽입 성능이 떨어지는 경우가 있습니다. 삽입 순서대로 정렬이 필요하다면 시간 정보를 포함한 UUID v7이나 대안으로 ULID 도입을 검토할 가치가 있습니다.

고유성만 필요하다면 UUID v4가 가장 간단하고 안전합니다. 같은 입력에서 항상 같은 ID를 재현하고 싶다면 v5, 생성 순서 정렬이나 DB 삽입 효율을 중시하는 신규 개발이라면 v7이 유력한 선택입니다. v1・v3는 현재 신규 채택이 줄고 있습니다.
툴군

여담 ― 왜 128비트나 쓰는가

UUID(Universally Unique Identifier)는 1980년대 Apollo Computer가 분산 시스템을 위해 고안했고, 이후 OSF(Open Software Foundation)가 DCE(Distributed Computing Environment)의 일부로 표준화했습니다. 현재 규격은 IETF RFC 4122(2005년)에 있으며, 2024년에는 확장판인 RFC 9562가 공개되었습니다.

128비트는 과해 보일 수 있지만, 이 길이야말로 여러 서버나 기기가 서로 전혀 통신하지 않고도 각자 독립적으로 ID를 발급하면서도 실제로는 충돌하지 않도록 보장하기 위한 설계입니다. 중앙 ID 발급 서버를 두고 순번을 관리하는 방식은 그 서버가 단일 장애점이 되거나 발급마다 통신이 필요해지는 비용이 발생합니다. UUID는 이러한 조정 비용을 완전히 없애는 대신, 충돌 확률을 무시할 수 있는 수준까지 낮출 만큼 충분한 무작위성을 사용합니다.

반면 UUID v4는 무작위이기 때문에 데이터베이스의 B-Tree 계열 인덱스에 삽입할 때 삽입 위치가 흩어져 페이지 분할이 자주 발생해 성능이 떨어지는 약점이 있습니다. 이 문제를 해결하기 위해 고안된 것이 시간순 정렬이 가능한 UUID v7로, 맨 앞에 Unix 타임스탬프를 두어 무작위성을 유지하면서도 삽입 지역성을 확보했습니다.