알고리즘 자체는 별로 어렵지않으며 대부분 자체적인 알고리즘을 통해 만들기 때문에 어떤 알고리즘으로 생성되는지는 알기힘듭니다.
다만 대부분의 고유한 key 값을 만들고 검증하는 시스템은 아래와 같습니다.
1. 자리수를 정해두고 0-9 + a-Z 까지 무작위에 String 값을 생성하여 붙입니다.
2. 만들어진 key 값이 기존 key값 목록에 있는지 비교합니다.
3. 없는 경우 해당하는 생성된 랜덤 key 값을 DB에 저장합니다.
보통 1번 생성시 현재 time을 변환key 값 등으로 같이 넣기 때문에 동일한 값이 나오는 경우는 거의 없습니다.