Double Encryption Authentication System for Resisting Dictionary Attack in Linux

리눅스에서 사전공격방지를 위한 이중 암호 인증 시스템

  • Published : 2001.11.01

Abstract

기존의 리눅스 패스워드 인증 시스템에서는 사용자의 계정을 만들어 처음으로 로그인하여 패스워드를 생성할 때에는 사용자의 프로세스 번호와 패스워드를 생성한 시각에 해당하는 값을 seed로 하여 난수를 발생시켜서 salt값을 만든다. 이 salt값은 사용자가 서로 같은 암호를 사용할 경우 암호가 같은 값으로 저장되는걸 막기 위해서 사용하는데 시스템은 salt값과 사용자 패스워드를 단방향 DES 알고리즘을 사용하여 패스워드 파일을 암호화하여 저장한다. 그러나 패스워드 파일에 사용자암호는 암호화되어 저장되지만, salt값이 그대로 저장되기 때문에 패스워드 파일을 가져가게 된다면 사전공격 해킹툴인 John-the-ripper나 Crack 프로그램 등을 이용하여 쉬운 패스워드는 공격자에 의해 간단하게 풀려버린다. 이러한 사전공격에 대한 취약점을 해결하기 위해 암호화된 사용자 패스워드들을 시스템의 또 다른 비밀키를 사용하여 암호화하는 방법을 도입함으로써 사전공격에 강한 패스워드 인증 시스템을 설계 및 구현한다.

Keywords