Abstract
User authentication, including confidentiality, integrity over untrusted networks, is an important part of security for systems that allow remote access. Using human-memorable Password for remote user authentication is not easy due to the low entropy of the password, which constrained by the memory of the user. This paper presents a new password authentication and key agreement protocol suitable for authenticating users and exchanging keys over an insecure channel. The new protocol resists the dictionary attack and offers perfect forward secrecy, which means that revealing the password to an attacher does not help him obtain the session keys of past sessions against future compromises. Additionally user passwords are stored in a form that is not plaintext-equivalent to the password itself, so an attacker who captures the password database cannot use it directly to compromise security and gain immediate access to the server. It does not have to resort to a PKI or trusted third party such as a key server or arbitrator So no keys and certificates stored on the users computer. Further desirable properties are to minimize setup time by keeping the number of flows and the computation time. This is very useful in application which secure password authentication is required such as home banking through web, SSL, SET, IPSEC, telnet, ftp, and user mobile situation.
인터넷과 같이 신뢰할 수 없는 네트워크를 통한 통신에서 비밀성과 무결성 뿐만 아니라 원거리 사용자 인증은 시스템의 보안에서 중요한 부분이다. 그러나 사용자 인증정보로서 인간이 기억할 수 있는 패스워드의 사용은 패스워드의 선택범위가 사용자의 기억에 제한 받는 낮은 비도(Entropy) 때문에 공격자의 오프라인 사전공격에 취약하다. 본 논문은 원거리 사용자 인증과 키 교환에 적합한 새로운 패스리드 인증 및 키 협상 프로토콜을 제안한다. 이 프로토콜은 오프라인 사전공격을 예방할 수 있으며 공격자에게 패스워드가 노출되더라도 이전 세션의 복호화나 이후 세션키의 손상에 영향을 미치지 않는 PFS(Perfect Forward Secrecy)를 제공한다. 또한 사용자의 패스워드가 서버의 패스리드 데이타베이스 파일에 순수하게 패스워드 자체로 저장되지 않기 때문에 공격자가 패스워드 데이타베이스를 획득하더라도 직접적으로 프로토콜의 안전성을 손상하지 않으며 직접 서버에 접근을 요청할 수 없다. 또한 PKI 및 키서버와 같은 제3의 신뢰기관을 이용하지 않기 때문에 단순인증에 적합하다. 따라서 이 프로토콜은 웹을 통한 홈뱅킹이나 사용자의 모바일 환경이 요구되는 셀룰러 폰, telnet이나 ftp와 같은 로긴 시스템, 기존 패스워드를 이용한 인증시스템 개선 등의 어플리케이션에 유용한 인증형태를 제공하며 인증정보가 장기간 저장될 필요성이 있어 위험하거나 실용적이지 못한 경우와 SSL(Secure-Sockets Layer), SET(Secure Electronic Transactions), IPSEC(Internet Protocol Security Protocol) 서비스에 추가될 수 있다.