UUID(Universally Unique Identifier)는 전 세계적으로 유일한 식별자를 생성하는 표준 방식입니다. UUID는 128비트의 숫자로 구성되어 있으며, 네트워크 컴퓨팅 환경에서 데이터나 객체를 고유하게 식별하는 데 널리 사용됩니다. 각 UUID는 매우 높은 확률로 유일하므로, 다양한 애플리케이션과 시스템에서 중복 없이 사용될 수 있습니다.
UUID는 32개의 16진수로 표현되며, 일반적으로 5개의 그룹으로 나누어 표시됩니다(예: 123e4567-e89b-12d3-a456-426614174000). 이 그룹들은 다음과 같은 길이와 순서로 구성됩니다:
UUID에는 여러 버전이 있으며, 각각 다른 방식으로 생성됩니다:
1. 버전 1 (시간 기반 UUID): 시스템의 현재 시간과 MAC 주소를 사용하여 생성합니다.
2. 버전 2 (DCE 보안 UUID): 버전 1을 기반으로 하며, 포짓 UID 또는 사용자 ID를 추가 정보로 포함합니다.
3. 버전 3 (이름 기반 UUID, MD5 해시): 특정 이름(문자열)과 네임스페이스의 MD5 해시를 사용하여 생성합니다.
4. 버전 4 (랜덤 UUID): 무작위로 생성된 값으로, 실용적인 목적에 가장 널리 사용됩니다.
5. 버전 5 (이름 기반 UUID, SHA-1 해시): 버전 3과 비슷하지만, SHA-1 해시 알고리즘을 사용하여 생성합니다.
UUID는 데이터베이스의 기본 키, 세션 식별자, 시스템 구성 요소의 고유 식별자, 파일의 고유 이름 등 다양한 곳에서 사용됩니다. 특히, 여러 서버나 데이터베이스 간에 데이터를 공유하거나 동기화할 때 UUID를 사용하면 중복이나 충돌 없이 식별자를 유지할 수 있습니다. 이러한 특성으로 인해 많은 분산 시스템에서 기본적으로 UUID를 사용하여 객체나 데이터의 유일성을 보장합니다.