OTP(One Time Password)는 원격 사용자 인증 시 유발되는 패스워드 재사용 공격을 사전에 방어하기 위해서 사용시마다 매번 바뀌는 일회성 사용자 인증 암호방식으로 사용자의 관리 소홀이나 패스워드가 노출되는 것을 방지하기 위한 인증 방식 중 하나입니다. 실제로 인증하는 방식에서 사용자들이 가장 많이 사용하는 방식 중 하나이며, 정보보안에 관심 없는 사람들도 손쉽게 사용할 수 있는 인증방식입니다. 오늘은 OTP 특징 및 생성원리를 통하여, 어떤 알고리즘을 통해 인증을 할 수 있는지 그 특징을 한번 설명드리겠습니다.
OTP 특징
일회성으로 패스워드 재사용이 불가능하므로 추측을 통한 해킹이나 패킷 스니핑 등을 통하여 패스워드 공격이 불가능합니다. 또한, 랜덤하게 일회성 패스워드를 사용하기 때문에 다음번 패스워드 추측이 불가능하여 패턴 인식 등을 통한 공격 등에 대해서도 대응이 가능합니다.
OTP 생성원리
일회용 패스워드 생성은 크게 세단계로 나누어집니다. 첫째는 연계정보를 생성하는 과정입니다. 연계정보는 시각정보, 이벤트 정보 등으로부터 수집할 수 있는 난수를 의미합니다. 연계정보는 일회용 패스워드 생성 알고리즘의 방식에 따라 시각(Time) 정보, 이벤트 정보 등의 난수를 그대로 사용하거나 해시, 암호화 등 방법으로 추가적인 난수 생성과정을 거쳐 변환된 난수를 사용할 수 있습니다. 두 번째 단계는 연계정보를 이용하여 생성 알고리즘에서 암호문을 생성하는 과정입니다. 생성 알고리즘은 HMAC-SHA1, AES, HIGHT 등의 암호 알고리즘을 이용하여 암호문의 유추 가능성에 대비해야 합니다. 세 번째는 일회용 패스워드 추출 알고리즘을 이용하여 암호문에서 일회용 패스워드를 추출하는 과정입니다.
1) 연계정보
OTP발생기와 인증서버에서 일회용 패스워드를 생성하기 위하여 최초로 사용하는연계정보는 특정 시간 또는 특정 이벤트에 따라 정보를 수집할 때마다 다른 정보를 수집할 수 있는 정보이어야 합니다. 또한 OTP발생기와 인증서버에서 동일한 일회용 패스워드를 생성하여 검증할 수 있도록 특정한 조건에서 생성되는 연계정보는 동일한 정보이어야 합니다. 또한, 연계정보는 일회용 패스워드 생성 알고리즘에서 사용할 수 있는 정보 형식이어야 하며, 시각정보 등의 난수를 해시한 해시값 또는 암호화한 결괏값을 연계정보로 사용할 수 있습니다.
2) 일회용 패스워드 생성 알고리즘
일회용 패스워드 생성알고리즘은 동일한 연계정보로부터 동일한 암호문을 생성할 수 있어야 합니다. 또한 일회용 패스워드 생성 알고리즘으로 사용하는 암호 알고리즘은 112비트 이상의 보안강도를 제공할 수 있는 암호키 길이의 암호 알고리즘이어야 합니다.
3) 일회용 패스워드 추출알고리즘
일회용 패스워드 추출알고리즘은 OTP 발생기와 인증서버에서 암호문으로부터 일회용 패스워드를 추출하여 검증이 가능하도록 동일한 암호문으로부터 동일한 일회용 패스워드가 추출 가능하여야 합니다. 일회용 패스워드 추출 알고리즘은 정적 추출 알고리즘과 동적 추출 알고리즘으로 구분할 수 있습니다.
4) 정적 추출알고리즘
정적 추출 알고리즘은 아래의 그림과 같이 생성 알고리즘을 이용하여 생성한 암호문에서 추출한 데이터를 일회용 패스워드로 변환하는 방법으로, 일회용 패스워드 추출알고리즘에서 사용하는 추출 정보를 미리 지정하여 데이터를 추출하는 방법입니다.
5) 동적 추출알고리즘
동적 추출알고리즘은 아래의 그림과 같이 생성알고리즘을 이용하여 생성한 암호문에서 추출정보를 취득하여 데이터를 추출하고, 추출 데이터를 일회용 패스워드로 변환하는 방법입니다.
6) 일회용 패스워드
일회용 패스워드는 중복 및 유추가 불가능하여야 하며 6자리 이상의 숫자 또는 문자로 구성할 수 있습니다. 일회용 패스워드 발생기를 통하여 발생한 6가지 랜덤한 숫자를 웹사이트에 입력하는 방식으로 인증하게 됩니다.
요약
위에서 설명한 OTP 생성원리를 표로 정리하자면, 아래의 단계를 걸치게 됩니다.
생성절차 | 연계정보생성 | 생성알고리즘 | 추출 알고리즘 |
단계별 산출물 | 연계정보 | 암호문 | 일회용 패스워드 |
산출물 설명 | 사각, 이벤트 정보등의 난수 | 연계정보를 암호화한 데이터 | 암호화에서 추출한 일회용 패스워드 |
OTP는 위에서 설명했듯이 일회성 사용자 인증 암호방식이기 때문에, 보안적인 관점에서 보면 그리 취약한 요소라고 할 수는 없습니다. 하지만, 분실이나 관리 소홀 등의 문제로 패스워드는 언제든지 노출될 수 있습니다. 그렇기 때문에 정보보안에서 OTP는 꼭 숙지해두어야 할 인증방식 하나라고 할 수 있습니다. 여기까지 OTP 특징 및 생성원리에 대해 설명드렸으며, 정보보안을 공부하는데 있어 도움이 되셨길 바랍니다.
'컴퓨터학개론' 카테고리의 다른 글
암호 알고리즘 및 공격방식 (0) | 2022.02.01 |
---|---|
사용자 인증기술 및 생체인식 기술 종류 (0) | 2022.01.31 |
SSL 프로토콜 구조 및 기능 (0) | 2022.01.29 |
메일의 개념 및 전자우편 관련 프로토콜 (0) | 2022.01.28 |
최근 네트워크 보안솔루션 총정리 (0) | 2022.01.27 |
댓글