[흥신소]회원가입하는데 왜 자꾸 "신호등을 찾아라" 하죠?

조회수 2020. 10. 15. 09:19 수정
번역beta Translated by kaka i
번역중 Now in translation
글자크기 설정 파란원을 좌우로 움직이시면 글자크기가 변경 됩니다.

이 글자크기로 변경됩니다.

(예시) 다양한 분야의 재밌고 유익한 콘텐츠를 카카오 플랫폼 곳곳에서 발견하고, 공감하고, 공유해보세요.

흥신소’는 돈을 받고 남의 뒤를 밟는 일을 주로 한다고 합니다. ‘블로터 흥신소’는 독자 여러분의 질문을 받고, 궁금한 점을 대신 알아봐 드리겠습니다. IT에 관한 질문, 아낌없이 던져주세요. 블로터 흥신소는 공짜입니다. 이메일(bloter@bloter.net), 페이스북(https://www.facebook.com/bloter.net) 모두 열려 있습니다.

웹사이트에서 가끔 ‘신호등을 찾아라’, ‘로봇이 아니다에 체크해라’ 같은 테스트를 통과하도록 하는데 이건 대체 왜 하는 건가요?

출처: 문제는 많으니까 자꾸자꾸 풀어나가면 온 세상 신호등 다 만나고 오겠네 / 자료=캡차 갈무리

평소에 인터넷 좀 써봤다 하는 분이라면 이상한 테스트를 강요(?) 받은 경험이 있을 겁니다. 질문에도 잘 나타나 있네요. 회원가입을 하거나 게시글을 쓰거나, 혹은 자료를 다운로드할 때 자주 볼 수 있는 ‘신호등을 찾아라’가 대표적입니다.


형식은 대개 여러 타일로 분할된 신호등 사진을 하나 준 뒤, 그 안에서 신호등이 포함된 타일만 고르도록 하는 건데요. 통과해야만 다음 단계로 넘어가게 해준다니 귀찮아도 눈 딱 감고 했습니다만, 이걸 왜 해야 했던 걸까요? 기사 중간에 그 답이 있습니다.


너의 이름은…캡쳐…아니! ‘캡차’


먼저 이런 식의 테스트를 통칭 ‘캡차(Completely Automated Public Turing test to tell Computers and Humans Apart)’라고 부릅니다. 굉장히 긴데 그냥 ‘사람과 컴퓨터 구별하기’ 정도로 기억하면 됩니다. 앞서 신호등을 대표로 소개했지만 표지판 찾기, 동물 고르기, 글자 맞추기 등등 캡차의 종류는 꽤 다양합니다.


캡차는 웹상에서 봇(Bot, 특정 명령을 수행하는 자동 프로그램)에 의한 부정행위를 막기 위해 2000년대 초반부터 도입됐습니다. 사람 대신 봇을 이용해 웹사이트에 대신 가입하고, 광고성 게시물이나 댓글을 남기는 등의 스팸 활동이 많아지자 이를 걸러 내기 위해 만들어진 프로그램이죠. 봇이 창이라면, 캡차는 방패입니다.


기계야, 이게 어렵니? 어려웠구나!


캡차는 시대 변화에 따라 함께 성장해왔습니다. 창이 날카로워질수록 방패도 두터워졌죠. 방식은 다양하나 공통점은 하나입니다. ‘사람에겐 쉬우나 기계에겐 어려운 문제를 내는 것’.


초창기 캡차는 단순히 글자를 읽기 힘들게 비틀어 놓고 정답을 쓰도록 했습니다. 제대로 쓰인 글씨라면 이미 오래전부터 상용화된 OCR(광학문자판독, 기계로 글자를 읽고 디지털화하는 기술) 프로그램으로 단순히 통과할 수 있겠지만, 기계의 단점은 융통성이 없다는 겁니다.

지금처럼 인공지능 딥러닝이 널리 쓰이던 시기도 아닌 당시엔 글자가 조금만 흐트러져도 기계는 판독에 애를 먹었죠. 반면, 사람은 융통성의 왕입니다. 조금 일그러진 정도야 알아보는 데 큰 문제가 없습니다.


대신 캡차는 자신이 내는 문제를 사람이 풀 수 있는지 여부는 고려하지 않기 때문에 가끔 사람조차 풀기 어려운 난해한 문제를 내기도 했는데요. 이를 보완하기 위해 보통 ‘문제 새로고침’이나 ‘음성으로 읽어주기’ 같은 옵션이 함께 제공됩니다.

출처: trefle..? / 출처=Wikipdia, MattChaput

우린 몰랐습니다. ‘리캡차’의 의미를


사실, 캡차 테스트는 쉽지만 번거로운 일입니다. 한번이 아니라 여러 번 반복하도록 할 때도 있죠. 2007년 캡차 개발팀은 이 일을 더욱 가치 있게 만들 수 있는 방법을 고민한 끝에 기발한 아이디어를 냅니다. 바로 사람에게 테스트 겸 재능기부(?)를 하게 만든 거죠.


앞서 설명한 것처럼 과거 OCR은 정자로 쓰인 글자만 판독할 수 있었습니다. 그래서 대형 도서관이나 구글처럼 오래된 책, 문헌에 대한 디지털 보존 프로젝트를 진행하던 곳에서는 OCR 판독에 실패한 문구를 사람이 일일이 수기로 판독해야 했는데요. 캡차의 후속판인 ‘리캡차(reCAPTCHA)’는 두 개의 단어를 문제로 냅니다.


하나는 컴퓨터가 답을 아는 단어이고, 하나는 OCR 인식에 실패한 단어입니다. 이때 사용자가 두 단어를 모두 입력하면 컴퓨터는 자신이 아는 답을 쓴 상대방을 사람으로 가정하고, 그가 쓴 다른 단어도 정답이라고 가정하는데요. 이 문제를 다양한 사람들에게 반복해서 내며 가장 높은 비율로 입력된 단어를 OCR 인식에 실패했던 단어의 정답으로 인정하는 겁니다.

출처: 둘 중 하나는 사람의 확인이 필요한 단어다 / 출처=bloglenovo.es

이후 등장한 각종 이미지 구분형 리캡차, 오늘의 핵심 궁금증이었던 ‘신호등 선택하기’도 이 같은 이유의 연장선입니다. 신호등 외에도 주로 표지판, 자동차, 소화전, 상점 등 주로 도로 인근 사진이 자주 제시된다는 사실을 눈치 빠른 분들은 알고 있을 텐데요.


수년 전부터 인공지능 자율주행 연구가 활발해지며 인공지능의 도로 위 물체 인식률을 높이기 위해 구글은 이런 종류의 리캡차를 운영하고 있습니다. 이 역시 사람에겐 쉽지만 기계엔 많은 반복 학습이 필요한 영역이고, 사고 위험이 높은 자율주행의 경우 그 어떤 데이터보다 정교한 학습 데이터를 필요로 하기 때문입니다.


결국 그동안 사람들은 자신도 모르는 사이 인류 지식의 디지털화, 첨단기술 발전에 기여해왔던 셈입니다. 알고 보니 지난날 캡차를 풀던 우리의 짜증은 꽤 숭고한 신경질이었네요. 위안을 가져도 좋을 것 같습니다.

출처: 주로 도로 위 객체에 대해 묻는 문제가 많다 / 자료=캡차 갈무리

당신이 사람입니까? → 사람이겠죠!


구글은 2009년 리캡차의 판권을 인수했습니다. 그리고 기존 캡차, 리캡차를 해킹하는 기술들도 개발되며 새로운 캡차의 필요성도 커졌죠. 그래서 나온 게 2014년 공개된 ‘노캡차 리캡차(noCAPTCHA reCHPTCHA)’인데요. 한마디로 캡차를 진행하지 않아도 되는 캡차란 뜻입니다.


기존 캡차는 융통성이 부족했습니다. 무조건 캡차를 풀게 했고, 혹시라도 기계가 캡차 풀기에 성공해도 통과시켜 줬으니까요. 구글은 이것이 비효율적이라 판단했습니다. 그래서 사람과 기계는 애초에 행동 매커니즘이 다르다는 사실에 착안, 보이지 않는 캡차를 만듭니다.


만약 최신 버전의 리캡차를 도입한 사이트라면, 프로그램이 웹사이트 내 사용자 패턴을 분석해 사람이라고 판독되면 캡차를 요구하지 않습니다. 대신 의심이 되면, 문제를 푸는 대신 ‘나는 로봇이 아닙니다(I’m not a robot)’이란 메시지에 체크하도록 하죠. 이때도 마우스의 움직임, 체크 속도 등이 평균적인 사람과 같은지 확인합니다. 만약 여기서도 확인되지 않을 경우 이미지 캡차 등 기존 방식의 캡차를 풀도록 해 추가로 검증합니다.

출처: 만약 사람 같지 않으면 체크박스를 보여준다. 마음 상하진 말자! / 자료=구글 리캡차 블로그

이처럼 캡차는 지금도 계속 발전하고 있습니다. 사람의 수고로움을 덜어주되 봇은 걸러낸다는 초기의 목적을 더욱 정교한 방식으로 수행해 내고 있죠.


캡차의 더 구체적인 작동 방식은 보안상 공개되지 않고 있으나, 이후 캡차를 뚫는 창과 이를 막는 방패의 싸움은 아마 인공지능 대결로 흐르지 않을까 추측해 봅니다. 아마도 봇은 인공지능의 힘을 빌어 더 ‘사람인 척’ 행세할 것이고, 더 똑똑해진 캡차 역시 ‘매의 눈’으로 이를 찾아내는 하이테크 술래잡기가 되겠네요.


By 리포터 이건한

이 콘텐츠에 대해 어떻게 생각하시나요?