next up previous
Next: 암호화된 암호로 어떻게 사용자를 Up: 암호화된 암호 Previous: 암호화된 암호

암호화된 암호란?

암호면 그냥 암호지 암호화된 암호라는 말이 무엇인지 궁금하신 분들이 계실 것이다. 암호화된 암호라는 말은 암호 자체가 암호화되어 있다는 이야기이다. UNIX 세계에서 telnet등으로 로그인 할 때, 사용자는 자신의 계정과 암호를 입력하게 된다. 이럴 경우 입력한 암호는 통신선로에서 적나나하게 자신의 모습을 과시하며 돌아다니게 되며, 흑심을 품은 사람들은 이를 훔쳐볼 수도 있다. 하지만 UNIX의 passwd 파일을 보신 분들은 누구나 암호 필드에 적힌 암호가 암호화되어있다는 사실을 알고 있을 것이다. passwd 파일을 분석하여 역으로 풀어내는 방법은 이론상으로 존재하지 않는다(Crack등은 사전을 이용해서 추측하는 방법을 사용한다.). 이제 암호화된 암호와 암호화되지 않은 암호에 대한 차이점을 알겠는가?

LanManager도 UNIX의 passwd 메커니즘과 마찬가지로 암호를 암호화시켜 사용한다. 일반적인 LanManager 클라이언트는 두개의 56비트짜리 DES 키를 사용하여 해쉬 값을 생성시키며, NT의 경우 보다 강력한 MD4 해쉬를 사용하여 해쉬 값을 생성시킨다. 이들 해쉬 값이 바로 역함수가 존재하지 않는 함수로부터 생성된 암호에 대한 암호가 되는 것이다.



박재호
1999년2월26일 (금), 오후 3시9분25초