GUID를 생성하는 데는 여러 가지 방법이 있습니다. 일부 구현은 다른 것보다 강합니다. 좋은 GUID 구현은 임의의 128 비트 숫자와 비슷합니다. 즉, GUID에서 128 가지 상태 (2에서 38까지 약 3.4 배)가 가능합니다.알고리즘은 일반적으로 완전히 랜덤하지 않으며 GUID가 생성 된 시간 및/또는 생성 된 시간에 대한 정보를 포함 할 수 있습니다.
비교해 보면, observable universe에는 21 개의 별에 9 × 10이 추정됩니다.
38 개 상태에 대해 10 배의 3.4를 갖고 있고 (잠재적으로 큰) 상태 샘플을 검토하여 두 상태가 같은지 확인하려는 경우이를 Birthday Problem이라고합니다. 수학을 살펴보면 2 개의 GUID가 동일한 의미있는 확률을 갖기 위해 실제로 많은 수의 샘플이 필요하다는 것을 알 수 있습니다 (GUID 생성 방법에 생성 된 기계 및/또는 시간에 대한 정보가 포함되어있는 경우, GUID를 생성 할 수있는 방법에 대한 제약이 더 많습니다).
최근에 나는 1,000,000 개의 데이터 포인트 집합에 대한 해시 충돌에 대한 계산을 수행했으며 40 비트로 해쉬 충돌 가능성이 매우 낮다는 것을 발견했습니다. 128 비트의 경우 해시 충돌 가능성 (동일한 1,000,000 데이터 포인트에 대해)은 천문학적으로입니다.
그건 헌신입니다. –