일회용 암호, OTP의 원리는?
오늘 하루 만난 과학 (2) 인증번호 생성기
인터넷 뱅킹 사용이 익숙하지 않은 개인사업자 이 모(62) 씨는 최근 거래를 시작한 B사에 물품대금을 송금하려 하다가 큰 낭패를 봤다. 그날까지 1500만 원을 송금하기로 약속을 했는데, 인터넷 뱅킹으로는 1000만 원 이상을 보낼 수 없었던 것.

보안등급 단말기별 이체한도 ⓒ 농협은행
이유를 몰라 은행에 전화를 하니 ‘보안 등급이 낮은 보안카드를 사용하고 있기 때문에 하루에 1000만 원 이상은 보낼 수 없다’라는 답변이 돌아왔다. 급한 마음에 보안등급을 올리려면 어떻게 해야 되느냐고 묻자 은행직원은 ‘가까운 은행지점을 방문하여 기존의 보안카드를 OTP로 바꾸면 된다’라고 알려줬다.
OTP에 대해 궁금해 할 틈도 없이 부랴부랴 은행을 찾은 이 씨는 보안카드를 변경한 끝에 무사히 송금을 마칠 수 있었다. 은행문을 나서며 OTP를 만지작거리던 이 씨는 그제야 이 조그만 단말기에 대한 궁금증이 생겼다. 누르면 6자리 번호가 뜨는 이 단순한 기능의 단말기가 무엇이길래, 하루 송금금액을 수십 배나 높일 수 있는 것일까?
OTP의 인증번호는 수학적 유추가 불가능
‘일회용 인증번호 생성기’라는 의미의 OTP(One Time Password)는 고정된 인증번호 대신 무작위로 생성되는 일회용 인증번호를 이용하는 사용자 인증 방식의 단말기다.
OTP는 미국의 벨 통신연구소가 세계 최초로 개발한 보안 시스템으로서, 기존의 보안 방식인 카드 뒷면에 인증번호가 적혀있는 보안카드의 취약점을 극복하기 위해 도입되었다.
보안카드가 취약한 이유는 수십 개의 고정된 인증번호가 반복되어 사용되기 때문이다. 그렇게 반복되어 사용되다 보면 아무래도 노출될 가능성도 커진다는 것이 보안 전문가들의 설명이다.

OTP 시스템의 개요 ⓒ 금뮹보안연구원
더군다나 보안카드의 경우는 사용자가 휴대폰으로 찍은 인증번호가 유출되는 사례가 빈번하게 발생하면서 인증 도구로서의 한계를 보여 왔다. 인증번호가 찍힌 이미지 파일이 메일이나 웹하드 상에서 돌아다니며 보안상의 취약점이 드러난 것.
이에 따라 벨 통신연구소의 연구진은 자신들의 주력 사업인 통신을 활용한 보안 단말기 개발에 착수하게 되었고, 그 결과 인증번호를 한번 사용하고 버리는 방식의 OTP를 개발하게 되었다.
OTP의 장점은 사용할 때 마다 매번 인증번호가 변경되기 때문에 현재의 인증번호로부터 다음번 인증번호의 유추가 수학적으로 불가능하다는 것이다. 따라서 현재 사용한 인증번호를 해킹과 같은 방법을 통해 입수했다 하더라도 이후에는 재사용이 불가능하다.
이처럼 보안카드에 이어 OTP가 등장하게 된 이유는 인터넷의 폭발적인 보급 때문이다. 인터넷 뱅킹을 포함한 금융거래와 전자상거래에 필요한 전자 지불 등 인터넷 상에서 이루어지는 법적·경제적 행위를 뒷받침할 수 있는 안전한 보안시스템의 등장이 필요해진 것이다.
OTP의 핵심 원리는 인증번호가 일회용이라는 것
OTP 원리의 핵심은 거래하는 은행과 동일한 시간 내에서 암호화된 인증번호를 생성하는 것이다. 그리고 생성되는 인증번호는 매번 달라야 한다는 점도 중요한 핵심기능이다.
이 같은 핵심 기능을 충족시키기 위해 OTP 단말기 내에는 고유한 인증번호를 만들어 내는 생성기와 작은 시계가 내장되어 있어서, 사용자가 버튼을 누르게 되면 작동시킨 시간에 맞춰 6자리의 인증번호로 나타나게 된다.
생성된 인증번호가 스마트폰의 모바일 뱅킹이나 컴퓨터의 인터넷 뱅킹 시 입력되어지면, 이후 은행 서버는 6자리 인증번호의 값이 맞게 입력되었는지를 확인하여 맞으면 거래를 시작하도록 해주고, 틀리면 거래가 취소시킨다.
다시 말해 사용자가 가진 OTP의 숫자 생성기가 거래은행의 서버에도 동일하게 탑재되어 있어서, 같은 시간대에 OTP에서 만들어진 인증번호가 은행 서버에서 만들어지는 인증번호와 일치하게 되면 인증에 성공하는 원리인 것이다.

들고 다녀야 하는 OTP를 스마트폰에 탑재시키는 기술이 개발됐다 ⓒ 인터페이
OTP는 숫자의 생성방식에 따라 버튼을 누르면 6자리의 인증번호가 나오는 방식과 1분마다 자동으로 서로 다른 6자리의 인증번호가 나오는 시간동기 방식, 그리고 키패드에 4자리 비밀번호를 입력하면 6자리의 인증번호를 보여주는 방식 등으로 구분된다.
방식만큼이나 OTP는 형태도 다양한데, 소형 단말기 모양의 토큰(token) 형태와 신용카드 모양의 카드 형태가 주로 사용되고 있다. 최근에는 휴대폰의 범용가입자식별모듈인 유심(USIM)을 기반으로 하는 모바일 OTP의 도입도 추진되고 있다.
한편 최근 들어서는 핀테크(fintech)를 주력으로 하는 국내 중소기업인 (주)인터페이가 ‘들고 다니지 않아도 되는 OTP’라는 신기술을 개발하여 금융계의 비상한 관심을 끌고 있다.
OTP는 뛰어난 보안 기능에도 불구하고 항상 단말기를 들고 다녀야 한다는 단점을 안고 있었는데, 이번에 개발된 기술은 OTP 기능을 스마트폰에 탑재하는 방식이기 때문에 그런 단점에서 벗어날 수 있게 된 것이다.
들고 다니지 않아도 되는 OTP의 원리는 스마트폰에 트러스트존이라는 보안영역을 만들어 이곳에서 인증번호가 생성되도록 하는 것이다. 특히 고객이 생성한 인증번호를 직접 입력하지 않으면서도 OTP 특유의 보안성은 그대로 유지하고 있기 때문에 업계의 호평을 받고 있다.