구글이 모바일 친화적인 새로운 ‘리캡차’를 공개했다. 캡차는 웹사이트에서 발생되는 스팸활동 및 해킹을 막는 기술이다. 최근 이러한 캡차 기능을 무력화시키는 새로운 해킹 기술이 많아졌는데, 이를 방지하기 위해 기술력을 높여 새로운 캡차를 내놓았다.

캡차

캡차(CAPTCHA, Completely Automated Public Turing test to tell Computers and Humans Apart)란 한마디로 사람과 컴퓨터를 판별해주는 기술이다. 2000년에 카네기멜론 연구원들이 모여 만들었다. 캡차는 일종의 시험문제를 내는 시스템이다. 여기서 말하는 컴퓨터란 대개 프로그램을 지칭한다.

사람은 직접 e메일을 만들 수 있지만, e메일 가입을 자동화하는 프로그램을 만들 수도 있다. 이러한 프로그램으로 e메일 계정을 수백개 만들어 스팸광고를 보내는 데 활용하기도 한다. 캡차를 회원가입 페이지에 추가하면, 의미 없는 계정이 대량 생산되는 걸 막을 수 있다. 한 아이디에 비밀번호를 무제한 입력하면서 계정 비밀번호를 알아내려는 프로그램도 있었다. 이때 로그인을 할 때마다 캡차를 풀게 하거나, 로그인에 여러 번 실패하면 캡차를 제시해 로그인하는 주체가 프로그램인지 사람인지 구분할 수 있다. 계정 해킹을 막는 방법으로 캡차를 활용하는 것이다. 웹사이트에 저장된 e메일 주소를 함부로 긁어가지 못하게 하는 데도 캡차가 활용된다.

캡차는 어떻게 사람과 기계를 구분할까. 초기 버전 캡차는 임의의 문자와 숫자를 가져왔다. 이때 보여지는 문자는 왜곡돼거나 컴퓨터가 인식하지 못하도록 줄을 긋곤 했다. 사람이라면 해당 글자를 인식하고 입력해 통과할 수 있다. 이 기술은 무료로 공개됐기 때문에, 웹 개발하는 누구나 캡차를 넣을 수 있다. 간단히 HTML 문서에 코드 몇 줄만 입력하면 된다. 손쉬운 사용법 덕분에 2000년대 중반에는, 캡차 프로그램 6천만개가 전세계 웹사이트에서 활용됐다.

google_new_recaptcha_05

▲캡차는 글자를 왜곡시켜 띄워준다. 사람은 인식할 수 있지만, 컴퓨터는 무슨 글씨인지 알지 못한다 (사진 : 위키백과)

리캡차

캡차는 웹 보안성을 높여주긴 하지만, 사용자는 몇초간 귀찮은 작업을 해야 했다. 캽차에서 제시하는 글자를 인식하고 입력하는 데 10초 안팎이 걸리기 때문이다. 캡차 연구원들은 수천명 사람들이 소비하는 10초를 좀 더 유용하게 만들 수 없을지 고민했다. 그런 고민 끝에 2007년, 리캡차가 탄생했다.

google_new_recaptcha_04

▲리캡차 시스템 예(사진 : 캡차 블로그)

리캡차 기술의 슬로건은 ‘스팸을 막고, 책을 읽자’이다. 여기서 말하는 책은 오래된 책을 말한다. 당시 도서관에선 고문서나 오래된 신문을 스캔하고, 글자를 입력하는 디지털 작업을 진행하고 있었다. 헌데 삐뚤어진 글자나 얼룩이 묻은 글자 등은 스캔을 하더라도 어떤 글자인지 인식하기 어려웠다. 이러한 단어는 사람이 직접 확인해야 했는데, 이를 리캡차와 접목시켰다. 리캡차는 두 단어를 화면에 보여준다. 이때 첫 번째 단어는 고문서를 스캔했지만 무슨 글자인지 인식하지 못한 단어다. 두 번째 단어는 이미 컴퓨터가 아는 단어다. 리캡차는 두 단어를 동시에 왜곡하거나 줄을 그어 읽기 힘들도록 만든다. 이용자가 단어 내용을 입력하면 첫 번째 단어는 디지털화되고, 두 번째 단어로 해당 사용자가 사람인지 구별한다. 몇몇 사람이 일일이 판독하기 어려웠던 고문서 내용을 수많은 리캡차 이용자들이 대신 판독해주는 셈이다. 리캡차도 누구나 사용할 수 있도록 무료로 제공된다.

노캡차 리캡차

구글은 2009년 리캡차를 인수했다. 구글은 리캡차 기술로 웹 보안 기술력을 보유하는 동시에 ‘구글북스’나 ‘구글 뉴스 아카이브 서치’에 활용해 데이터를 얻었다. 그런데 리캡차가 나온 지 수년이 지나면서 이를 뛰어넘는 해킹 기술도 속속 등장했다.

google_new_recaptcha_01

▲구글은 2009년 리캡차를 인수했다(사진 : 구글 블로그)

이러한 동향에 맞춰 구글도 리캡차 기술을 새로 다듬은 ‘노캡차 리캡차’를 12월3일 공개했다. 새로운 노캡차 리캽차는 모바일 친화적인 UI를 가졌다. 이를 위해 이미지를 구별하는 문제를 추가해 사람과 컴퓨터를 좀 더 확연하게 구분하고자 했다. 컴퓨터는 형체나 색깔만 구별하지 아직 이미지를 정확하게 구별하는 능력이 없다는 데 착안했다. 왜곡된 글자를 물어보는 대신 고양이 사진을 보여주면서 ‘위 사진과 똑같은 동물을 모두 고르시오’라고 묻는 식이다. 사용자는 구글 새 리캡차를 이용하면 모바일 기기에서 일일이 글자를 입력하지 않아도 원하는 그림을 터치하면서 간단히 답을 입력할 수 있다. 구글은 “스냅챗, 워드프레스, 험블 번들은 이미 새로운 리캡차 API를 적용하고 있다”라고 설명했다.

google_new_recaptcha_03

▲새로운 리캡챠 예. 사람은 각 동물을 비교할 수 있지만 비슷하게, 컴퓨터는 아직 비슷하게 생긴 그림을 정교하게 구분할 수 없다(출처: 구글 블로그)

지도분석·인공지능 연구에 활용되는 리캡차

최근 구글은 리캡차를 지도에 적용하고 있다. 구글은 구글지도에 ‘구글 스트리트’ 기능을 제공하며 실제 거리나 건물 내부를 촬영한 사진 데이터를 가지고 있다. 지금까지는 사진 속에 어떤 그림이 있고 어떤 글자가 있는지 컴퓨터가 일일이 인식하기 힘들었다. 구글은 사진을 리캡차 시스템에 넣어 사진 속 내용을 확인하고 있다. 또한 리캡차에서 얻은 데이터를 인공지능 연구에도 적극적으로 활용하고 있다.

☞구글 ‘노 캡차 리캡차’ 소개 동영상 보기

j.lee.reporter@gmail.com

오픈소스 기술, 프로그래머의 삶 그리고 에듀테크 분야에 관심이 많습니다. 작은 변화라도 실행하고 노력하려는 사람들을 응원하고, 그러한 분들의 이야기를 더 많이 나누고 싶습니다 :)