문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 OTP (문단 편집) == 특징 == 접속시마다 그때그때 필요한 [[비밀번호]]를 생성하여 그 번호를 통해 사용자 본인 확인을 하는 방식이다.[* 기기마다 원리가 다를 수는 있지만 일반적인 하드웨어 OTP는 버튼을 눌렀을 때 비밀번호를 생성하기보다는 ‘보여준다’는 개념에 가깝다. 이미 기기는 사용하지 않는 그 순간에도 365일 24시간 백그라운드에서 계속하여 주기적으로 꾸준히 난수를 생성하다가 사용자가 버튼을 누르면 생성되어있던 난수를 화면에 보여주는 방식.] 대개는 주로 난수 발생기에 현재 시간을 넣어 비밀번호를 생성한다. 서버와 사용자의 생성기는 서로 교류하지 않지만, 시간을 seed로 하여 같은 알고리즘으로 생성 매칭을 하므로 서로 시간이 동기화되는 것이 중요하다. seed 시간은 초단위가 아닌 특정 time window 유닛으로 작동하므로 적정 수준의 톨러런스가 있다. (서로 몇초 차이가 나도 맞춰 동작된다.)[* OTP를 빠르게 ON-OFF 를 반복해 보아도 일정 시간대 내에서는 번호가 같은 것을 볼 수 있다.] 사용자 단말기 쪽 시계가 많이 달라져서 차이가 나게 되어도 서버쪽에서 해당 단말기에 대한 seed 차이 offset 보정 기능을 갖추면 여전히 동작한다.[* 보통 일반적인 이체 등에서도 난수 입력 후 바로 이체되는 것이 아닌 소정의 절차(이체 확인-인증 서명 등)가 더 남아있는 경우가 일반적이기 때문에 기기 자체의 오차에 더하여 소정의 절차 진행을 위한 약간의 시간 차이(바로 직전 시간대에 생성된 값 등) 정도는 유효한 값으로 본다. ] 타임스탬프에서 나머지 연산을 하게되면 원하는 시간단위로 분할하여 처리하게 할 수 있다. 예를들면 DB에서 흔하게 쓰이는 UNIX_TIMESTAMP modify 300 의 경우 5분 단위로 나머지를 구하게된다. 여기서 UNIX_TIMESTAMP 에 다시 빼주면 현재 시간이 속한 시작시각을 나타내준다. 여기서 예의 300으로 몇번 더 더하게 되면 더 나중에 시간이되고 빼게되면 이전의 시간을 구할 수 있게된다. [[비밀번호]]가 1회용이라 노출되어도 재사용이 불가능하며, [[비밀번호]]를 숨겨진 알고리즘을 이용하여 생성해내므로 서버와의 접속 없이도 생성이 가능하여 중간 과정에서 패킷이 유출되거나 하는 위험이 없다. 보안의 주안점을 방어력에서 기동성(?)으로 바꿔버린 체계로, 기존 보안방식이 암호를 푸는 데 시간이 걸리게 보안체계를 만든다면, OTP는 입에 단내가 날 정도로 고생해서 암호를 푼다 해도 이미 그 암호는 쓸모없게 된 후이다. 보통 시간 동기나 해시 체인을 사용한다. 참고로 금융기관에서 흔히 사용하는 시간 동기(Time OTP) 방식을 사용하는 OTP 토큰이 아닌, 비밀번호 생성 횟수(서버쪽은 사용 횟수)에 기반하는 Event OTP 방식 토큰을 사용하는 경우 비밀번호 생성 버튼을 신나게 누르다가 어느 순간부터 해당 OTP 토큰을 못쓰게 될 수도 있으니 주의해야 한다. OTP 하나를 여러 금융기관에다가 등록해 놓았다면, OTP를 분실했다가 회수하였을 때 일일이 등록한 금융기관에 가서 정지를 풀어야 한다. 그리고 금융기관마다 다를 수 있겠지만 타행 OTP를 연결해서 쓰는데 그 OTP 유효기간이 다 되어서 갱신하게 될 일 등이 생기면 갱신 전에 OTP 등록을 해지하고 새 OTP를 다시 등록해야 하는 경우가 생길 수 있다. 특히 타행 OTP를 사용할 때, OTP와 공동인증서의 만료가 겹치게 되면 골때리는 [[교착]] 상황이 발생하는 경우도 있다. 운좋게 수명이 다한 OTP 외에 여분의 OTP를 갖고 있었던 경우, 원래는 타행 OTP 등록을 해서 사용하면 되는데, 공동인증서까지 만료된 상황이라면 1. 공동인증서를 다시 받으려고 하면 OTP 번호를 요구한다 2. 여분의 타행 OTP를 등록하려고 하니 공동인증서 인증을 요구한다. 이렇게 공동인증서를 해결하려면 OTP가, OTP를 해결하려면 공동인증서가 필요한 무한루프에 빠지게 되는 것. 결국 '''신분증과 OTP를 들고 영업점에 방문하여 OTP를 직접 등록'''해야 한다. 포탈 사이트에 'OTP 무한루프'로 검색해보면 이 무한루프를 당해서 어쩔 수 없이 금융기관을 방문한 사례들이 수두룩하다. 당행에서 발급받고 등록한 OTP를 해지하거나 다른 OTP로 교체하면 그 당행 OTP는 배터리가 남아있어도 타행등록이 불가능해진다. 단, 해지하기 전에 미리 타행등록이 되어있다면 계속 쓸 수는 있고 해지한 당행 OTP를 재등록하면 다시 타행등록이 가능해진다. 기본적으로 하나의 금융기관 당 1개의 보안매체만 보유할 수 있다. 그러므로 하나의 금융기관에서 2개의 OTP를 사용하거나 OTP와 보안카드를 병행해 사용할 수 없다. 만약 OTP를 등록하게 되면 기존의 보안카드는 사용이 해지되어 등록이 불가능해진다.[* 단, [[우리은행]]은 예외적으로 OTP와 보안카드 병행사용이 가능하다.] 다시 보안카드를 사용하려면 영업점을 방문해 OTP 사용을 해지하고 보안카드를 새로 받아야 하며, 기존에 해지된 보안카드는 폐기처리되니 주의. 특히 보안카드 발급비를 별도로 징수하는 대구은행. 접속시마다 새로 생성된 번호를 입력해야 하므로 번거로우며(그래도 보안카드보다는 훨씬 덜 번거롭다), 흔히 사용되는 시간 기반 하드웨어 OTP 토큰의 경우 내장된 시계의 품질이 좋지 않으면 내부 시계에 오차가 생길 수 있어서, 서버와 시간을 자주 동기화해 줘야 한다는 점이 단점이다. 게임에 한정된 이야기일 수 있지만, 막 점검이 끝난 게임 등 사람들이 몰려 서버의 상태가 좋지 않을 때 OTP를 이용해서 접속을 하려고 하면 비이용자의 두 배 이상의 시간이 걸리게 된다. 하지만 [[보안]]이라는 것은 귀찮음을 대가로 안전을 보장받는 것이라서, 귀찮지 않은 보안이란 이 세상에 존재하지 않는다. '''컴퓨터를 이용하여 OTP 토큰이 만들어낸 비밀번호를 입력하는 일을 할 경우에는 자신이 쓰는 컴퓨터의 관리를 잘 하는 것도 중요하다.''' PC·휴대폰용 소프트웨어 OTP를 안 쓰는 금융 거래에선 이런 일이 없지만, PC·휴대폰용 소프트웨어 OTP를 활용하는 온라인 게임의 해킹에 다음의 기법이 실제로 사용된 적도 있다. 사용자가 올바른 OTP를 입력하긴 했는데 여러가지 방법을 써서[* 내부적으로 틀린 값을 더 넣어서 오류를 내거나 혹은 렉으로 위장한 지연 등] 정상적인 로그인 과정을 방해한 뒤 해커의 컴퓨터로 올바르게 입력한 OTP를 보낸 후 해커의 컴퓨터에서 사용자의 OTP를 자동으로 대신 입력해서 해커가 로그인한다. --두번 입력받게하면 무력화 된다고한다-- 위의 방법 이외에도 미처 OTP와 연결해놓지 못한 채 잊고있는 부분에서 넥슨의 캐쉬 털이 사건같은 색다른 해킹이 발생할 수 있으므로 자기 PC의 보안을 잘 지키는 것이 최우선이며, PC방 등지의 불안한 장소에서 쓸 보안수단으로 OTP를 사용하는 것이 바람직하다. 결국 OTP 하나만 걸었다고 안심하지 말고 추가적인 보안 수단을 사용할 수 있다면 그것도 같이 사용하는 것이 좋다. OTP 토큰을 만든 곳이 해킹 당해서 한방에 모든 사용자의 정보가 노출되는 경우도 있다. OTP 토큰을 만들던 미국의 RSA Security사가 해킹을 당해서 시드값과 알고리즘이 털린 적이 있었는데 나중에 해킹 당한 RSA의 OTP 토큰을 사용했던 [[록히드 마틴]]이 [[http://www.zdnet.co.kr/news/news_view.asp?artice_id=20110608105349|해킹당한 적이 있었다.]] 이에 따라 금융 당국에서 RSA社의 알고리즘을 사용한 OTP 토큰를 무상으로 급히 교체했던 적이 있다.[* [[농업협동조합|농협]], [[수산업협동조합|수협]], [[우체국]], [[새마을금고]], [[중소기업은행]], [[삼성증권]]에서 2011년 3월 17일 이전에 OTP를 발급받은 사람이라면 교체 대상자인지 확인하고, 아직 교체를 받지 않았으면 반드시 교체를.....이라 말하기엔 이젠 [[너는 이미 죽어 있다|배터리가 먼저 다 닳았을 것으로 보인다]].]저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기