UUID 버전 1 생성기
UUIDv1 • 그레고리력 타임스탬프 & 가상 MAC
00000000-0000-0000-0000-000000000000
감싸기:
UUID 대량 배치 생성
0 msReady
최대 5,000개
형식 및 구조 설정
준비 완료
No batch active1-click copy available on each row
레거시 표준•RFC 9562 섹션 5.1 / RFC 4122
UUID 버전 1 기술 사양 (그레고리력 타임스탬프)
UUIDv1은 1582년 10월 15일부터 100나노초 단위로 측정된 60비트 그레고리력 시각과 클록 시퀀스, 노드 하드웨어 주소를 결합하여 128비트 고유 식별자를 생성합니다.
비트필드 레이아웃 및 바이너리 구조
RFC 표준에 따른 128비트 바이트 세부 구조입니다.
| 필드 이름 | 비트 범위 | 용도 및 설명 |
|---|---|---|
| time_low | 32비트 (0-31) | 그레고리력 타임스탬프의 하위 32비트. |
| time_mid | 16비트 (32-47) | 그레고리력 타임스탬프의 중간 16비트. |
| time_hi_and_ver | 16비트 (48-63) | 버전 4비트 (0001) + 타임스탬프 상위 12비트. |
| clock_seq | 16비트 (64-79) | 변형 2비트 (10) + 클록 시퀀스 카운터 14비트. |
| node | 48비트 (80-127) | 노드 하드웨어 식별자(무작위 멀티캐스트 주소). |
✓
장점 및 특징
- •100나노초 정밀도의 고해상도 타임스탬프.
- •하드웨어 주소 결합을 통한 고유성 보장.
!
고려사항 및 제한점
- •물리적 MAC 주소 노출 위험이 있음.
- •시간 하위 비트가 문자열 앞쪽에 위치하여 단순 사전순 정렬이 불가함.
권장 사용처
- →RFC 4122 v1 기반의 기존 레거시 분산 시스템.
- →Apache Cassandra 및 ScyllaDB의 TimeUUID 컬럼.
지양해야 할 사용처
- ✕최신 웹 및 클라우드 네이티브 아키텍처(UUIDv7 권장).
코드 구현 예제
Python Standard LibraryPython
import uuid
id = uuid.uuid1()
print(id)자주 묻는 질문
이 생성기는 실제 기기 MAC 주소를 노출하나요?▼
아닙니다. RFC 9562 권고안에 따라 사용자의 개인정보를 보호하기 위해 안전한 무작위 멀티캐스트 노드 주소를 생성합니다.
UUIDv1이 시간순으로 정렬되지 않는 이유는 무엇인가요?▼
시간의 최하위 비트(time_low)가 문자열 맨 앞에 위치하기 때문입니다.