122비트의 구조화된 무작위성. RFC 4122 준수. 전적으로 브라우저에서 생성됩니다.
UUID(범용 고유 식별자)는 128비트 레이블로, 어떤 장치에서든 어디서든 독립적으로 생성하더라도 중복 확률이 사실상 0에 가깝도록 설계되었습니다. Paul Leach, Michael Mealling, Rich Salz가 RFC 4122에서 정의한 버전 4는 128비트 중 122비트를 순수한 무작위 값으로 채웁니다. 나머지 6비트는 버전 번호(4)와 변형 식별자를 인코딩합니다. 결과는 xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx 형식의 36자 문자열이며, 모든 x는 무작위 16진수 숫자이고 y는 8, 9, a, b 중 하나로 제한됩니다.
위의 디스플레이는 UUID v4의 세 가지 유형의 문자를 색상으로 구분합니다. 흰색 문자는 crypto.getRandomValues()에서 추출한 무작위 16진수 숫자입니다. 금색 문자는 항상 "4"로, 이것이 버전 4임을 나타냅니다. 청록색 문자는 변형 표시자로, 가장 높은 2비트가 "10"(이진수)으로 고정되어 16진수 8에서 b 사이로 제한됩니다. UUID의 나머지 모든 비트는 독립적이고 균일하게 분포된 무작위 값입니다.
122개의 무작위 비트를 가진 UUID v4는 5.3 \u00D7 1036개의 가능한 값을 갖습니다. 생일 역설에 따르면 생성된 UUID의 수가 전체 공간의 제곱근에 근접할 때 충돌이 발생할 가능성이 높아집니다. 그 임계값은 약 2.3 \u00D7 1018(230경)입니다. 50%의 충돌 확률에 도달하려면 지구상의 모든 사람이 1년 내내 초당 3억 개의 UUID를 생성해야 합니다. 현실적인 생성 속도에서는 UUID v4의 충돌은 실질적으로 수학적 불가능에 해당합니다.
UUID v4는 분산 시스템을 위한 표준 식별자 형식입니다. 데이터베이스 기본 키, API 요청 식별자, 세션 토큰, 메시지 큐 중복 제거 키, 파일 이름 지정, 마이크로서비스 상관 ID 모두 조율 없이 어떤 장치에서든 독립적으로 생성할 수 있는 식별자의 이점을 누립니다. 8-4-4-4-12 하이픈 형식은 모든 주요 프로그래밍 언어, 데이터베이스 시스템 및 클라우드 플랫폼에서 인식됩니다. PostgreSQL, MySQL, MongoDB, Redis 및 모든 주요 ORM이 UUID 컬럼을 기본적으로 지원합니다.
소문자 하이픈 표준 형식이 가장 일반적입니다. 위의 형식 선택기는 동일한 128비트의 다섯 가지 표현 방식을 제공합니다:
urn:uuid: 네임스페이스 식별자이 페이지의 모든 UUID는 W3C가 지정한 Web Cryptography API인 crypto.getRandomValues()를 사용하여 브라우저 내부에서 생성됩니다. 각 UUID를 구성하는 16바이트의 무작위 데이터는 절대 기기 밖으로 전송되지 않습니다. 서버는 이 페이지를 전달하면 역할이 끝납니다. 브라우저가 모든 생성을 독립적으로 처리합니다. 최근 기록 패널은 편의를 위해 생성된 UUID를 브라우저의 세션 메모리에 저장하며 탭을 닫으면 자동으로 삭제됩니다.
dice83 UUID 생성기를 동료 개발자에게 추천하세요. 링크는 도구만 공유하며 생성된 UUID는 절대 공유되지 않습니다.
일일 영감
A' Design Award의 심사위원 선정 작품, 매일 아침 새롭게 소개됩니다.