UUID 가이드
What is UUID? (UUID란?)
UUID(Universally Unique Identifier)는 범용 고유 식별자로, 네트워크 상에서 고유성을 완벽하게 보장하기 위해 사용되는 128비트 길이의 식별자 표준입니다. 일반적으로 32개의 16진수 문자와 4개의 하이픈(-)으로 구성되며 xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx와 같은 형태를 가집니다. 데이터베이스 레코드, 트랜잭션, 분산 시스템 등에서 충돌 걱정 없이 독립적으로 식별자를 생성할 때 주로 사용됩니다.
UUID v4 란?
가장 널리 쓰이는 UUID 버전인 UUID v4는 MAC 주소나 시간 데이터를 조합하지 않고 오직 난수(Random numbers)를 기반으로 생성됩니다. Paperbit 도구는 암호학적으로 안전한 crypto.randomUUID() 또는 crypto.getRandomValues() API를 사용하여 브라우저에서 안전하고 완벽하게 랜덤한 UUID v4를 생성합니다.
UUID와 ID(Auto Increment)의 차이
Auto Increment ID
DB에서 순차적으로 생성되는 1, 2, 3, 4 형태의 숫자 ID입니다.
- 장점: 정렬하기 쉽고 읽기 편하며 인덱싱 속도가 빠릅니다.
- 단점: 외부에서 전체 데이터 개수를 유추하기 쉽고(보안 취약), 분산 서버 환경에서 충돌이 발생하기 쉽습니다.
UUID
무작위 문자로 이루어진 550e8400-... 형태의 식별자입니다.
- 장점: 어떤 서버에서 동시에 생성해도 절대 겹치지 않아 분산 아키텍처(MSA)에 매우 적합합니다.
- 단점: 문자열이 길어 DB 용량을 많이 차지하고 인덱싱 성능이 숫자보다 떨어질 수 있습니다.
대표적인 사용 사례 (Use Cases)
- Database ID: 분산 데이터베이스 환경의 Primary Key
- API Request ID: 마이크로서비스 간의 요청 추적 (Trace ID)
- Transaction ID: 결제 시스템 등에서 절대 중복되어서는 안 되는 거래 번호
- Session / Token ID: 유저 로그인 상태나 임시 토큰 발행
- 파일 이름 매핑: 업로드한 파일 이름 충돌을 방지하기 위한 난수화
자주 묻는 질문 (FAQ)
UUID란 무엇인가요?
UUID(Universally Unique Identifier)는 시스템이나 네트워크 환경에서 정보에 고유한 식별자를 부여하기 위해 사용되는 128비트 길이의 표준 포맷입니다.
UUID v4는 무엇인가요?
UUID 버전 4는 완전한 난수(랜덤)를 기반으로 생성되는 식별자로, 실무에서 가장 널리 사용되는 가장 보편적인 UUID 생성 방식입니다.
UUID는 어떻게 생성되나요?
브라우저에 내장된 안전한 난수 생성기(Crypto API)를 사용하여 수학적으로 충돌(중복) 가능성이 희박한 고유값을 만들어냅니다.
UUID를 여러 개 한 번에 생성할 수 있나요?
네, UUID Generator에서 생성 개수를 지정하면 원하는 만큼의 랜덤 UUID를 한 번에 대량으로 생성할 수 있습니다.
UUID의 형식이 올바른지 확인할 수 있나요?
네, UUID Validator 검증 기능을 통해 입력한 문자열이 표준 UUID 형식에 맞는지 즉시 검사할 수 있습니다.