알고리즘

    [알고리즘] 시디키를 만들어 보자

    CD 키 전략 시뮬레이션을 기획 제작하고 있는 게임사 개발팀의 박 팀장. 베틀넷 서비스를 구상하고 있기에 안전한 CD 키를 만들 방법이 없겠냐고 필자에게 물어온 적이 있었다. 아마 조금만 생각하면 쉽게 생각해 낼 수 있었겠지만 마땅히 문서화한 자료를 구하기 힘들었기 때문이었을 것이다. 사실 스타 크래프트의 CD 키 생성툴은 립버전이 활개를 치게 하는데 큰 역할을 했다. 여러 가지 알고리즘이 많이 있겠지만, 보통 이런 번호는 실제 키와 그 키를 암호화한 부분을 합친 것을 생각해 보자. 이 대표적인 예가 주민등록번호다. 주민등록번호는 실제키 12자리에 각 가중치를 줘 더한 값을 10으로 모듈 연산해 얻은 값을 마지막에 붙여 13자리로 이뤄진다. 따라서 12자리를 정한 후 마지막 자리를 10번 반복하면, 주민..