UUID 생성기

UUID 생성: v4·v7 온라인 생성기와 검증

무작위 버전 4 UUID나 시간순으로 정렬되는 버전 7 UUID를 하나에서 1,000개까지 만들 수 있습니다. 소문자·대문자, 하이픈 유무, 중괄호(GUID), URN 형식도 고를 수 있습니다. UUID 확인·검증을 고르면 UUID가 올바른지, 몇 버전인지, 시간 기반이면 언제 만들어졌는지 보여 줍니다. 모든 UUID 생성은 브라우저 안에서 이루어집니다.

1~1,000개
  • 생성된 UUID 목록

    b4d4e8e7-52e9-4103-a3d7-a5b0bad87eb4 dc31991c-e966-4deb-886d-17e5532484dd 2e5ef4bf-73af-4df4-9b61-1a0c4e56559a 0a70a235-102b-4379-ba8d-47389e302fea 3550a5ff-a6c2-4063-86ff-8c5b2412d1c6

버전버전 4(무작위)
개수5
UUID 하나의 무작위 비트122

UUID마다 브라우저의 암호학적 난수 생성기에서 얻은 무작위 비트 122개가 들어 있습니다. 약 27억×10억 개(2.7×1018)를 만들어야 중복이 생길 가능성이 반반이 됩니다. 브라우저에서 만들었으며 어디에도 전송되지 않습니다.

계산은 기기 안에서만 이루어집니다 · 공식은 알려진 값으로 검증했습니다 · 검증 방법 보기

UUID 생성기 사용법

  1. 무작위 UUID가 필요하면 버전 4 생성을, 만든 순서대로 정렬되는 UUID가 필요하면 버전 7 생성을 고릅니다.
  2. 개수(최대 1,000개)와 형식을 정합니다. 하이픈이 있는 소문자 표준형, 하이픈 없는 32자리, Windows와 .NET이 GUID를 쓰는 중괄호 형식, urn:uuid:… 형식 중에서 고를 수 있습니다. 시스템이 대문자를 요구하면 대문자로에 체크하세요.
  3. 복사를 누르면 한 줄에 하나씩 전체 목록이 복사되고, 생성을 다시 누르면 새 목록이 나옵니다.
  4. 이미 가진 UUID를 확인하려면 UUID 확인·검증을 고르고 붙여 넣으세요. 형식이 올바른지, 버전과 변형이 무엇인지, 버전 1·6·7이면 생성 날짜와 시각까지 보여 줍니다.

UUID란?

UUID(범용 고유 식별자)는 마이크로소프트 제품에서는 GUID라고 부르는 128비트 숫자로, 16진수 32자리를 8-4-4-4-12자리로 나누어 씁니다. 중앙에서 번호를 나눠 주지 않아도 누구나 만들 수 있고 두 개가 겹칠 확률이 극히 작아, 데이터베이스 기본 키, API의 리소스 ID, 파일 이름, 주문 번호 같은 곳에 널리 쓰입니다. 현재 표준은 RFC 4122를 대체한 RFC 9562(2024년 5월)입니다.

모든 UUID에서 두 자리는 정해져 있습니다. 13번째 자리는 나머지를 어떻게 만들었는지 알려 주는 버전이고, 17번째 자리는 변형을 나타내며 RFC 형식이면 8, 9, a, b 중 하나입니다. 그래서 버전 4 UUID는 언제나 xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx(y는 8, 9, a, b) 모양입니다.

버전구성시간순 정렬
11582년부터 100나노초 단위 시각, 클록 시퀀스, 노드 ID(흔히 MAC 주소)안 됨
3, 5네임스페이스와 이름의 MD5·SHA-1 해시. 같은 이름이면 늘 같은 UUID안 됨
4무작위 비트 122개안 됨
6버전 1의 필드를 시각이 앞에 오도록 재배열됨
748비트 Unix 밀리초 시각 + 무작위 비트 74개됨
8UUID를 만드는 프로그램이 정한 구조—

버전 4와 버전 7, 무엇을 쓸까?

버전 4는 완전히 무작위라 언제, 어디서 만들었는지 아무것도 드러나지 않는 전통적인 선택입니다. 약점은 데이터베이스 인덱스입니다. 무작위 키는 B-트리의 여기저기에 들어가므로 INSERT마다 다른 페이지를 건드리고, 큰 테이블일수록 느려지고 조각납니다. 특히 MySQL의 InnoDB는 기본 키 순서대로 행 자체를 저장(클러스터형 인덱스)하므로 무작위 UUID 기본 키의 영향이 큽니다. 버전 7은 현재 시각으로 시작하므로 새 행이 인덱스의 끝에 붙어 자동 증가 번호와 비슷하게 동작하면서도, 서로 통신하지 않는 서버끼리도 겹치지 않습니다. RFC 9562도 시간순 ID가 필요한 새 시스템에 버전 7을 권합니다.

대신 버전 7 UUID를 보면 누구나 생성 시각을 밀리초까지 알 수 있습니다. 대부분의 데이터에는 문제가 없지만, 가입 시점이 드러나면 안 되는 공개 링크처럼 생성 시각 자체가 민감하다면 버전 4를 쓰세요. 이 생성기는 같은 밀리초 안에서는 무작위 74비트를 무작위 폭만큼 늘어나는 카운터로 써서(RFC 9562 §6.2 방법 2) 1,000개를 한꺼번에 만들어도 생성 순서가 정확히 유지되고, 다음 값을 추측할 수도 없습니다.

MySQL의 UUID()는 버전 1입니다

국내 서비스에서 많이 쓰는 MySQL의 UUID() 함수는 버전 1 UUID를 만듭니다. 버전 1은 시각을 낮은 자리부터 세 조각으로 나누어 저장하므로 겉보기 순서가 시간순이 아니고, 서버의 MAC 주소가 들어갈 수 있습니다. MySQL 8.0은 UUID_TO_BIN(uuid, 1)로 시각 부분의 순서를 바꿔 BINARY(16)에 저장하는 방법을 제공하지만, 새로 설계한다면 애플리케이션에서 버전 7을 만들어 넣는 것이 간단합니다. 확인 모드에 MySQL이 만든 UUID를 붙여 넣으면 생성 시각과 노드 값을 읽을 수 있습니다. 웹 페이지는 MAC 주소를 읽을 수 없어서 이 생성기에는 버전 1 옵션이 없습니다.

예시: UUID에 담긴 날짜 읽기

RFC 9562의 버전 7 예시 UUID는 017F22E2-79B0-7CC3-98C4-DC0C0C07398F입니다. 13번째 자리 7이 버전이고, 17번째 자리 9는 RFC 변형이라는 뜻입니다. 앞 12자리 017F22E279B0은 16진수로 1970년 1월 1일부터 1,645,557,742,000밀리초, 곧 2022-02-22T19:22:22Z이며 한국 시간으로는 2022년 2월 23일 오전 4:22:22입니다. RFC의 버전 1·6 예시도 같은 순간을 그레고리력 첫날인 1582년 10월 15일부터 센 100나노초 단위 138,648,505,420,000,000로 담고 있습니다.

UUID버전생성 시각(UTC)
017f22e2-79b0-7cc3-98c4-dc0c0c07398f버전 72022-02-22T19:22:22Z
c232ab00-9414-11ec-b3c8-9f6bdeced846버전 12022-02-22T19:22:22Z
1ec9414c-232a-6b00-b3c8-9f6bdeced846버전 62022-02-22T19:22:22Z

중복될 확률은?

버전 4 UUID의 무작위 비트는 122개이므로 가능한 값은 2122, 약 5.3×1036개입니다. 생일 문제로 계산하면 중복이 하나라도 생길 확률이 50%가 되려면 약 2.7×1018개를 만들어야 하고, 1초에 10억 개씩 만들어도 약 86년이 걸립니다. 실제로 생기는 중복은 수학이 아니라 오래된 라이브러리나 같은 난수 상태로 복제한 가상 머신처럼 고장 난 난수 생성기에서 나옵니다. 이 페이지는 브라우저의 암호학적으로 안전한 생성기 crypto.getRandomValues를 씁니다.

형식과 코드 예

UUID는 브라우저에서 만들어지며 어디에도 전송되지 않고, 페이지는 만든 목록을 저장하지 않습니다.

자주 묻는 질문

UUID와 GUID는 무엇이 다른가요?

실질적으로 같습니다. GUID는 같은 128비트 식별자를 마이크로소프트가 부르는 이름입니다. 오늘날 Windows와 .NET이 만드는 GUID는 버전 4 UUID이며, {0F8FAD5B-D9CB-469F-A165-70867728950E}처럼 대문자와 중괄호로 쓰는 경우가 많습니다.

버전 4 UUID는 정말 겹치지 않나요?

보장되지는 않지만 현실의 어떤 시스템에서도 충분합니다. 무작위 비트가 122개라 중복 확률 50%에 이르려면 약 2.7×1018개가 필요합니다. 그래도 데이터베이스에는 UUID 키에 유니크 제약을 걸어 두세요. 비용이 거의 없고 난수 생성기의 드문 버그를 잡아 줍니다.

UUID를 비밀번호나 인증 토큰으로 써도 되나요?

권하지 않습니다. RFC 9562는 UUID가 추측하기 어렵다고 가정하지 말라고 하며, 버전 7은 무작위 비트가 74개뿐이고 시각이 그대로 보입니다. 비밀 값에는 32바이트 난수를 Base64로 만든 토큰처럼 그 용도로 만든 값을 쓰세요.

문자열이 올바른 UUID인지 어떻게 확인하나요?

UUID 확인·검증에 붙여 넣으세요. 코드에서는 정규식 ^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(대소문자 무시)가 표준 변형의 버전 1~8과 일치합니다. Nil·Max UUID는 따로 확인해야 합니다. 정규식은 정규식 테스트에서 바로 시험해 볼 수 있습니다.

UUID를 데이터베이스 기본 키로 써도 되나요?

여러 서버나 오프라인 앱처럼 ID를 여러 곳에서 만들어야 하거나, 레코드 수가 드러나면 안 될 때 잘 맞습니다. 기본 키에는 인덱스가 촘촘하게 유지되는 버전 7을 쓰고, 네이티브 UUID 타입이나 16바이트 바이너리 열에 저장하세요.

이 계산기를 내 사이트에 넣기

웹사이트나 블로그에 무료로 넣을 수 있습니다. 계산기를 표시할 위치에 아래 코드를 붙여 넣으세요.

최종 수정일: 2026년 10월 16일

메뉴

카테고리

금융·대출 계산기17가지 계산기비즈니스·쇼핑 계산기5가지 계산기건강·다이어트 계산기6가지 계산기수학·학습 계산기7가지 계산기날짜·시간 계산기5가지 계산기기념일·행사 디데이 카운트다운7가지 계산기생활에 유용한 계산기6가지 계산기개발자 도구7가지 계산기

CalcWorthy

사이트 소개문의하기개인정보처리방침이용약관

언어

언어
한국어KoreanEnglishEnglishالعربيةArabicবাংলাBanglaDeutschGermanEspañolSpanishفارسیPersianFrançaisFrenchעבריתHebrewहिन्दीHindiBahasa IndonesiaIndonesianItalianoItalian日本語JapaneseBahasa MelayuMalayNederlandsDutchPolskiPolishPortuguêsPortugueseРусскийRussianไทยThaiTürkçeTurkishУкраїнськаUkrainianاردوUrduTiếng ViệtVietnamese简体中文Simplified Chinese