주요 콘텐츠로 건너뛰기
FreeOnlineTools Go
한국어
설명

UUID란? 범용 고유 식별자의 완전한 설명

작성자: FreeOnlineTools Team · 2026-09-02에 업데이트됨

빠른 답변

UUID는 36자 (16진수 32개 + 하이픈 4개) 로 표시되는 128비트 식별자입니다. UUID는 조정 없이 사실상 고유합니다. 충돌 확률은 무시할 수 있습니다. UUID v4 (무작위) 가 가장 일반적인 버전입니다. 무료 UUID 생성기를 사용하여 브라우저에 UUID를 만듭니다.

소개

Microsoft 용어로 GUID(Globally Unique Identifier)라고도 불리는 UUID(Universally Unique Identifier)는 실제로 중앙 조정 없이 고유함이 보장되는 128비트 식별자입니다. UUID는 RFC 4122에 의해 정의되며 데이터베이스 기본 키, 요청 ID, 세션 토큰 및 분산 시스템 식별자로 널리 사용됩니다. 가장 일반적인 버전은 임의의 비트를 사용하는 UUID v4입니다. UUID은 하이픈으로 구분된 5개 그룹의 32자리 16진수로 표시됩니다(8-4-4-4-12(예: 550e8400-e29b-41d4-a716-446655440000)).

단계별

  1. UUID 구조 이해

    UUID는 128비트이며, 하이픈으로 구분된 8-4-4-4-12 5개 그룹 (예: 550e8400-e29b-41d4-a716-446655440000) 에서 32개의 16진수로 표시됩니다. 13번째 숫자는 버전 (v4의 경우 4) 을 나타내고, 17번째 숫자는 변형을 나타냅니다.

  2. UUID 버전 알아보기

    v1: 시간 기반 (타임스탬프 + MAC 주소) — 시간 순서가 지정되었지만 ID가 유출됩니다. v3: MD5 해싱이 포함된 이름 기반. v4: 무작위 — 가장 흔하며 개인 정보 보호 문제가 없습니다. v5: SHA-1 해싱이 포함된 이름 기반. v6 및 v7: v1보다 향상된 개인 정보 보호로 시간 순서가 지정됩니다.

  3. 충돌 확률 이해

    UUID v4에는 2 ^ 122 가능한 값이 있습니다. 103조 UUID 중 충돌 확률은 50% 입니다. 실제 사용 (수백만 개의 ID) 을 위해 충돌 확률은 사실상 0입니다. 조정 없이 독립적으로 UUID를 생성할 수 있습니다.

  4. UUID를 적절히 사용하세요.

    거의 모든 사용 사례 (데이터베이스 ID, 요청 ID, 세션 토큰) 에 v4를 사용합니다. 데이터베이스 로컬리티에 대해 시간 순서가 지정된 ID가 필요한 경우 v7을 사용하십시오. 보안에 민감한 상황에서는 v1을 피하십시오. 타임스탬프와 MAC 주소를 포함합니다.

예

UUID v4(임의)

입력: Crypto.getRandomValues로 생성됨

산출: 550e8400-e29b-41d4-a716-446655440000

UUID v1(시간 기반)

입력: 타임스탬프 + MAC 주소

산출: a3bbf0ee-d6e4-11ed-a5b3-3c9703e8b4a1

NIL UUID

입력: All zeros

산출: 00000000-0000-0000-0000-000000000000

일반적인 문제

  • UUID에 Math.random () 을 사용하는 것은 암호학적으로 안전하지 않습니다. 브라우저에서 crypto.getRandomValues () 또는 crypto.randomUUID () 를 사용하십시오.
  • UUID를 문자열로 저장 - UUID 문자열은 36바이트이며 UUID 유형 (16바이트) 으로 저장하는 것이 더 효율적입니다. 사용 가능한 경우 데이터베이스에서 기본 UUID 유형을 사용하십시오.
  • 보안에 민감한 상황에서 v1을 사용하면 -v1 타임스탬프와 MAC 주소를 포함하므로 언제 어디서 생성되었는지에 대한 정보가 유출될 수 있습니다. 익명성을 위해 v4를 사용하십시오.
  • UUID가 실제로 고유하다고 가정하면 실제로 고유하지만 (충돌 확률은 무시할 수 있음) 수학적으로 고유하지는 않습니다.

팁

  • 거의 모든 사용 사례에 UUID v4를 사용하세요. 무작위이고 개인 정보 보호 문제가 없으며 모든 최신 데이터베이스에서 지원됩니다.
  • 라이브러리가 없는 내장 v4 생성기를 위해 최신 브라우저에서 crypto.randomUUID()를 사용하세요.
  • 더 나은 저장 및 인덱스 성능을 위해 UUID를 문자열(36바이트) 대신 데이터베이스(16바이트)에 UUID/GUID 유형으로 저장합니다.
  • UUID 생성기를 사용하여 브라우저에서 즉시 UUID를 생성하세요. 가입하지 않고 완전히 비공개로 설정할 수 있습니다.

관련 도구

관련 가이드

참고자료