> uuid | guid | 생성 <
// 범용 고유 식별자(UUID/GUID)를 즉시 생성하세요
암호학적 난수
UUID v4는 crypto.getRandomValues()를 사용하여 암호학적으로 안전한 난수 생성을 합니다. 데이터는 브라우저를 떠나지 않습니다.
일괄 생성
한 번에 최대 100개의 UUID를 생성하세요. 데이터베이스 시딩, 테스트, 개발 워크플로우에 완벽합니다.
다중 버전
UUID v4(랜덤)와 v1(타임스탬프) 지원. 사용 사례에 맞는 버전을 선택하세요.
// UUID 생성에 대하여
UUID 작동 원리:
UUID(Universally Unique Identifier)는 RFC 4122로 표준화된 128비트 식별자입니다. UUID v4는 122개의 랜덤 비트를 사용하여 2^122개의 가능한 값을 제공합니다. 36자 형식은 버전 및 변형 비트가 포함된 8-4-4-4-12 패턴을 따릅니다.
예시:
550e8400-e29b-41d4-a716-446655440000
일반적인 사용 사례:
- >데이터베이스 기본 키 및 레코드 식별자
- >중앙 조정 없는 분산 시스템
- >세션 토큰 및 상관 관계 ID
- >파일 명명 및 리소스 식별
- >API 요청 추적 및 로깅
>> 자주 묻는 질문
Q: UUID란 무엇인가요?
A: UUID(Universally Unique Identifier)는 컴퓨터 시스템에서 정보를 고유하게 식별하는 데 사용되는 128비트 숫자입니다. GUID(Globally Unique Identifier)라고도 합니다. 표준 형식은 하이픈으로 구분된 8-4-4-4-12 16진수 문자입니다.
Q: UUID v4와 v1의 차이점은 무엇인가요?
A: UUID v4는 난수를 사용하여 생성되며 가장 일반적으로 사용되는 버전입니다. UUID v1은 현재 타임스탬프와 노드 식별자를 기반으로 합니다. V4는 단순성과 개인정보 보호 면에서 대부분의 애플리케이션에 권장됩니다.
Q: UUID 충돌 확률은 얼마나 되나요?
A: UUID v4에는 122개의 랜덤 비트가 있어 2^122(약 5.3 x 10^36)개의 가능한 값이 있습니다. 중복 생성 확률은 천문학적으로 낮습니다.
Q: UUID와 GUID의 차이점은 무엇인가요?
A: UUID와 GUID는 본질적으로 같은 것입니다. UUID는 대부분의 표준에서 사용되는 용어이고, GUID는 Microsoft 기술에서 일반적으로 사용되는 용어입니다.
Q: RFC 4122란 무엇인가요?
A: RFC 4122는 UUID 형식, 생성 알고리즘 및 네임스페이스 규칙을 정의하는 인터넷 표준입니다. 5가지 UUID 버전(v1~v5)을 지정합니다.
// 특수 UUID 값
이 고정 값들은 RFC 9562에 정의되어 있습니다.
| UUID | 의미 |
|---|---|
| 00000000-0000-0000-0000-000000000000 | Nil UUID(모든 비트 0) |
| ffffffff-ffff-ffff-ffff-ffffffffffff | Max UUID(모든 비트 1) |
| 6ba7b810-9dad-11d1-80b4-00c04fd430c8 | DNS 네임스페이스(v3/v5용) |
// 코드에서 UUID 생성하기
JavaScript crypto.randomUUID() Python str(uuid.uuid4()) PHP Ramsey\Uuid\Uuid::uuid4()->toString() Go uuid.NewString() Java UUID.randomUUID() C# / .NET Guid.NewGuid() PostgreSQL gen_random_uuid() MySQL UUID() Bash uuidgen
>> 더 많은 질문
Q: .NET에서 GUID는 어떤 형식을 가질 수 있나요?
A: Guid.ToString은 N(32자리), D(하이픈 포함, 기본값), B(중괄호), P(괄호), X(16진 구조체)를 지원합니다. 파싱할 때는 대소문자를 구분하지 않습니다.
Q: SQL Server의 NEWID()와 NEWSEQUENTIALID()의 차이는?
A: NEWID()는 무작위 GUID를 반환해 인덱스를 크게 단편화할 수 있습니다. NEWSEQUENTIALID()는 증가하는 값을 반환하며 열 기본값으로만 사용할 수 있습니다. 값이 예측 가능하므로 비밀 값에는 적합하지 않습니다.
Q: .NET에 정렬 가능한 GUID가 있나요?
A: .NET 9부터 Guid.CreateVersion7()이 UUID v7 기반의 시간순 정렬 가능한 GUID를 생성합니다. Guid의 바이트 순서와 SQL Server의 정렬 순서는 텍스트 표현과 일치하지 않는다는 점에 유의하세요.