본문 바로가기
방법

캡챠(Captcha)와 대안적 보안기술들

by @푸근 2014. 3. 4.

캡챠(Captcha)라고 부르는 보안 시스템이 있습니다. 이름이 익숙하지 않으시더라도 누구나 한번쯤은 마주쳤을 가능성이 큽니다. 바로 이렇게 생긴거죠.

 

 

 

 

구불구불하고 중간에 선도 그어져 있어서 읽기가 무척 불편한 글씨를 입력하는 보안 방식입니다. 처음에는 단지 처음에 캡챠는 단지 글자를 입력하는 방식이었지만, 나중에 그것을 더 어렵게 만든게 리캡챠입니다.

 

이 보안의 기본 아이디어는 사람은 할 수 있지만, 기계는 할 수 없는 것을 요구함으로써 기계와 봇을 가려내는 방법입니다. 그 방법으로 제시된 게 바로 글자를 읽는 것이죠. 이것은 사람만이 할 수 있는 작업이라는 생각에서 시작한 겁니다.

 

아이디어는 무척 기발하지만, 문제는 기계도 글자를 읽을 수 있게 되었다는 점입니다. 요즘 책을 스캔해서 전자책으로 만들면 글자를 모두 인식해서 검색도 가능하게 합니다. 즉, 이제는 기계도 글자를 읽을 수 있으니 이 방법은 더 이상 적합한 보안이 될 수 없습니다.

 

상황이 이러하니 글자를 비틀고, 뒤틀어서 더 어렵게 만들었지만 이젠 사람도 제대로 읽을 수가 없게 되어 버렸습니다. 문자인식 기술은 나날이 발전하고 사람들은 더욱 불편해지고.... 이러면 보안기술로서는 생명을 다했다고 볼 수밖에 없습니다.

 

 

 

 

보안이 높을수록 사용자는 불편해질 수밖에 없습니다. 이것이 일반적이지만, 어떻게 하면 조금만 불편하게 하면서 높은 보안을 얻을 수 있을까? 하는 것이 바로 보안 기술의 핵심 경쟁입니다.

 

캡챠를 대체하거나 보완할 수 있는 다른 보안 기술을 몇 가지 소개합니다. 사람은 할 수 있지만, 기계는 할 수 없는 것이 핵심이라는 원칙을 모두 공유하고 있는 것들입니다.

 

 

1. 이 단계(two-step) 인증

 

이것은 구글이나 금융기관에서 시행하는 것입니다. 패스워드로 로그인한 후에 휴대전화나 메일로 전송된 인증번호를 추가로 입력하는 방식입니다. 은행에서 사용하는 원타임 패스워드도 비슷한 겁니다. 다른 기기에 전송된 인증번호를 읽어서 옮겨 적는 것은 아직까지 사람만이 할 수 있는 작업입니다.

 

 

2. 게임 or 퀴즈

 

이것은 사람만이 풀 수 있는 문제를 내는 겁니다. 예를 들어 터치스크린이 있는 기기라면 "하트를 그려봐라"라고 문제를 내거나, 호랑이 사진을 보여주고 이 동물을 맞춰 보라고 하거나, 여러 개의 그림을 보여주고 곰인형 그림을 찾아봐라 물어보거나 하는 등 사람이라면 간단히 풀 수 있는 문제나 퀴즈를 내는 방법입니다.

 

 

3. 타이머

 

시간 간격을 측정하는 방법입니다. 지금도 사람이라면 도저히 할 수 없는 속도로 폼을 입력하면 이것을 봇으로 잡아내는 방식이 있습니다. 더 나아가 문장을 주고 타이핑을 시켜서 속도가 지나치게 빠르면 잡아내는 방법도 생각할 수 있습니다.

 

시간 간격을 패스워드로 설정하는 방법도 있습니다. 예를 들어, 패스워드가 apple이라면 단순히 apple만 입력한다고 통과되는 것이 아니라, 사전에 설정된 그것을 입력하는 타이밍도 맞아야 통과되는 방식입니다. 사용자가 app까지 입력하고 1초 쉬었다가 le를 마저 입력하게 설정하면 저 시간간격도 맞아야 패스워드가 통과되는 방식입니다. 기발하긴 하지만 사용자가 많이 불편할 것 같습니다. 특히나 닌텐도의 리듬게임하다가 혈압만 올리고 때려치운 경험을 생각하면 개인적으로 그다지 호감이 가지 않는 방법입니다.

 

 

4. 허니팟(Honeypot)

 

허니팟, 문자 그대로 의미는 꿀단지이지만 실제 의미는 정반대입니다. 꿀단지가 아니라 일종의 함정입니다. 사람에게는 보이지 않지만, 기계나 봇은 이해할 수 있는 장치를 설계해두고 봇이 그것에 손대면 바로 잡아내는 방법입니다. 예를 들어, 화면에 나타나지 않는 로그인폼을 설계해두었는데 거기서 로그인 시도가 탐지되었다면 그건 바로 기계라고 볼 수 있습니다.

 

 

5. 모션인식

 

요즘 카메라는 모든 장비에 기본으로 들어갈 뿐만 아니라, 닌텐도의 위나 엑스박스의 키넥트처럼 사람의 움직임을 잡아낼 수 있는 장비들이 많이 있습니다. 이것을 이용해서 보안을 높일 수 있습니다. 손으로 별모양을 그리는 제스처를 암호로 설정하는 방법을 생각해 볼 수 있습니다. 혹은 자신만이 할 수 있는 기괴한 동작같은 것이 있다면 보안은 정말 엄청나게 높아질 겁니다.

댓글