메뉴바로가기본문바로가기

동아사이언스

‘사람이 아니무니다’ 캡차(CAPTCHA) 못 읽는 내가 문제?

통합검색

‘사람이 아니무니다’ 캡차(CAPTCHA) 못 읽는 내가 문제?

2017.02.20 19:00

오늘날 ‘인공지능(이하 AI)’은 영국의 수학자이자 암호학자였던 앨런 튜링의 상상력에서 출발했다 해도 과언이 아닙니다. 70여 년 전에 요즘 말하는 머신러닝을 상상한 것이죠.

 

튜링은 1950년 ‘컴퓨팅 기계와 지능’이라는 자신의 논문에서 ‘튜링 테스트(Turing test)’라는 것을 처음 제안합니다. 그는 “어떤 존재든 인간과 비슷한 지적 행위를 보이면 지능이 있다고 인정하자”고 제안하며, 사람인지 컴퓨터인지 구분하는 간단한 테스트를 튜링 테스트라고 불렀습니다.

 

유진 구스트만과의 대화 내용. 우크라이나에 가본 적이 있느냐는 질문에
유진 구스트만과의 대화 내용. 우크라이나에 가본 적이 있느냐는 질문에 '아니다(Nope) 라고 답하고 있다. 같은 질문에 '가 본적이 없다(I've never been there)라고 답하기도 했다. 장소를 묻는 질문에는 일단 안전하게 '아니다'라고 답하는 것으로 보인다. - 유진 구스트만 홈페이지 제공

튜링 테스트란 간단히 말해 기계(인공지능)가 스크린을 통해 사람과 대화를 나눈 뒤, 대화를 나눈 사람이 상대방 (기계)을 사람이라고 판단하면 기계도 지능이 있다고 인정하는 기술입니다. 지난 2014년 인공지능 ‘유진 구스트만’이 튜링 테스트를 통과해 화제가 되기도 했었죠.

 

● 캡차는 일종의 튜링테스트

 

당신은 사람입니까? - google.com 캡차 설명 화면 캡처 제공
당신은 사람입니까? - google.com 캡차 설명 화면 캡처 제공

그런데 가끔, 아니 종종 사이트에 접속할 때 우리를 괴롭히는 캡차(CAPTCHA, Completely Automated Public Turing test to tell Computers and Humans Apart)도 튜링 테스트의 일종입니다. 간단히 말해 ‘당신은 사람입니까?’ ‘당신은 사람처럼 생각할 수 있는 지능이 있습니까?’를 묻는 간단한 물음을 의미합니다. 주로 아래 그림처럼 컴퓨터가 인식하기 어렵게 의도적으로 비틀거나 덧칠한 그림을 보여주고, 사용자에게 그 그림 속 내용을 묻고 답변을 요구하는 방식으로 진행됩니다. 가장 흔하게 많이 쓰이는 캡차는 6~8자 사이의 영단어나 숫자를 sin 함수로 일그러뜨린 다음, 왜곡된 문자를 올바르게 인식하는지 확인하는 방법(왜곡된 이미지 등장 ▶ 사용자가 이미지 속에서 숨겨진 문자나 숫자 확인 ▶ 활성창에 입력 ▶ 맞으면 사람으로 간주)입니다.

 

캡차는 2000년 미국 카네기멜론대 소속 연구원들이 온라인상 부정선거를 막기 위해 개발한 프로그램입니다. 부정선거를 유발하는 봇(bot)의 활동을 막는 데 집중했습니다. 봇은 보안이 취약한 컴퓨터를 찾아 스스로 침입해, 조용하고 꾸준하게 작동하면서 광고성 게시물 (또는 덧글) 등록, 아이디 자동 생성, 스팸메일 발송, 온라인 부정 선거, 계정 해킹 등의 일을 합니다. 그래서 일반 사용자가 여러 가지 이유로 한 게시물에 같은 내용의 덧글을 반복해서 달려고 하거나, 같은 내용의 메일을 여러 사람에게 보낼 때, 비밀번호를 연달아 틀릴 경우 캡차 인증까지 거쳐야 다음 단계로 진행되는 것입니다.

 

● 종류도 다양해졌지만, 위기에 빠진 캡차

 

하지만 요즘같이 번개 같은 속도로 발전하는 세상에 ‘완벽한 방어’가 어디 있겠습니까. 캡차가 벌써 17년 전 (삐삐와 플립형 휴대전화를 쓰던 시절) 기술입니다. 그동안 이미 뚫리고 또 뚫려 너덜너덜해 졌지요.

 

  1) 텍스트 캡차

 

가장 기본이 되는 텍스트 캡차. - 위키미디어 제공
가장 기본이 되는 텍스트 캡차. - 위키미디어 제공

특히 가장 흔히 볼 수 있는 텍스트 캡차는 광학식 문자 판독(이하 OCR) 프로그램이 인식하지 못하도록 하는 것이 첫 번째 목표입니다. 그러나 텍스트 캡차는 이미 똑똑한 봇(스팸봇)들이 분석을 끝낸 지 오랩니다. 일반 텍스트가 아닌 ‘12+17=?’과 같이 간단한 연산을 묻는 문제의 답까지 찾는 프로그램이 개발됐습니다. 덕분에 텍스트 캡차 문제는 점점 난이도가 높아지고, 사람임에도 불구하고 ‘당신은 사람이 아니무니다’라는 경고를 받기도 합니다.    

 

  2) 오디오 캡차

 

텍스트 캡차가 봇을 걸러내고, 보안을 강화하는 데 큰 도움이 됐지만 글을 모르는 사람들이나 난독증, 색약 등 시각장애가 있는 사람들, 어린 아이들이나 노인들에겐 큰 걸림돌이었습니다. 그래서 오디오 캡차가 개발됐죠. 캡차 내용을 음성으로 전달하는 방식입니다. 하지만 이 또한 푸리에 변환을 응용한 방법으로 소리의 잡음을 제거하고, 활성창에 내용을 입력해 간단히 캡차를 통과하곤 합니다.

 

  3) 리캡차

 

두 단어를 함께 제시해 답변을 요구하는 리캡차. - 위키미디어 제공
두 단어를 함께 제시해 답변을 요구하는 리캡차. - 위키미디어 제공

앞서 살펴본 두 가지 방식은 고전적인 방식입니다. 캡차에 대해 계속 연구하던 카네기멜론대 루이스 폰 안 교수 연구팀은 2007년 5월, 캡차 기술을 기반으로 보안이 강화된 리캡차 기술을 개발했습니다. 화면에 두 개의 단어를 보여주고, 사용자에게 답을 묻습니다. 이때 하나는 컴퓨터가 이미 답을 알고 있는 단어, 또 다른 하나는 오래된 종이책에 수록돼 디지털화가 필요한 단어(OCR로 읽지 못하는)입니다. 사용자가 두 단어를 모두 입력하면, 이미 알고 있는 하나의 답으로 사람 여부를 판단하고, 나머지 한 단어도 정답으로 간주합니다. 이렇게 여러 사람에게 무작위로 고문서 속 단어를 입력하게 한 뒤, 높은 비율로 입력된 단어를 간추려 고문서 디지털화에 응용하는 방식입니다.

 

아무 의미 없던 하루 10만 건 정도의 캡차 활동이, 리캡차 과정을 통해 연간 고서 250만 권을 디지털화 하는 유용한 기술로 탈바꿈했습니다. 대표적으로 ‘프로젝트 구텐베르크’와 플라톤의 ‘항연’이 있습니다. 이 기술은 2009년부터 구글이 인수했습니다. 표지판이나 건물에 쓰인 글자 중 인식하기 어려운 문자를 문제로 제시해, 구글 지도 서비스 개선에 활용하고 있습니다.

 

그런데 얼마 되지 않아 미국 콜롬비아대 연구팀이 리캡차 단계를 우회하는 자동화 프로그램을 개발했다는 소식이 전해졌습니다. 연구팀의 프로그램은 70.8%의 확률로 리캡차 단계를 무용지물로 만들었고, 뚫리는 시간은 평균 19초에 지나지 않았습니다. 이에 지난해 여름, 미국 남가주대 연구팀은 작년 리캡차의 취약성을 해결하기 위해 ‘3D 이미지를 사용해 다양한 각도로 텍스트를 돌려 숨겨진 문자를 찾는 방식’을 개발하고 있다고 밝혔습니다.

 

  4) 노캡차 리캡차

 

구글은 2014년 12월, 모바일용으로 최적화된 새로운 캡차 기술을 선보였습니다. 글씨 입력창이 커지고, 이미지를 손으로 클릭해 답변을 제출하는 방식입니다. 고양이와 개 사진을 섞어두고 ‘고양이를 찾으세요’라던가, 집과 자동차 사진을 섞어두고 ‘자동차를 찾으세요’라는 문제가 나옵니다. 아직 컴퓨터는 정교하게 이미지를 구분하는 능력이 부족하다는 점을 노린 것입니다. 구글은 이미지 검색에서 사진을 불러오는 방식으로 문제를 제시합니다.

 

  5) 원클릭 캡차

 

로봇 팔로 ‘원클릭 캡차’를 수행하는 모습. - Matt Unsworth(Youtube 화면 캡처) 제공
로봇 팔로 ‘원클릭 캡차’를 수행하는 모습. - Matt Unsworth(Youtube 화면 캡처) 제공

‘나는 로봇이 아닙니다’라는 문장 옆 체크박스를 만들어 두고, 사용자가 체크박스 주변에 마우스 포인터를 움직이는 패턴을 감지해 ‘얼마나 정확한지’를 판단해 사람과 봇을 구별하는 방식도 있습니다.

 

하지만 지난 1월 말, 유튜브에서 활동하고 있는 유튜버 매트 언스워드는 ‘팔 모양’을 갖춘 로봇이 터치펜을 들고 당당하게 체크박스를 클릭하는 영상을 공개했습니다. 물론 이런 행동을 하도록 로봇을 조작했을 뿐, 아직 캡차 단계를 통과한 것은 아닙니다. 하지만 계속해서 다방면에서 다각도로 캡차의 빈틈을 찾기 위한 새로운 시도가 일어나는 것만큼은 사실입니다.

 

● 나날이 발전...사람 이기는 AI

 

지난 봄 ‘알파고 쇼크(!)’ 이후, 바둑계에서는 몇 번 더 AI와 사람의 대결이 이어졌습니다. 결과는? AI가 훨씬 우세했습니다. 감동근 아주대 전자공학과 교수는 “사람은 단시간에 발전하고 성장하는데 한계가 있지만, AI는 끝이 없기 때문에 앞으로 계속 무서운 속도로 발전할 것”이라 설명했습니다. 앞으로 바둑으로 사람이 알파고를 이길 확률은 매우 낮다는 뜻이죠. 지난 1년 동안 알파고는 더 많은 기보 데이터와 더 많은 바둑 고수들의 기술을 저장했을 테니까요.

 

그러니 캡차는 점점 AI를 피해 ‘복잡성’으로 승부할 수밖에 없습니다. 하얀 바탕에 검정 글씨를 sin함수로 왜곡하는 것만으로는 아무 소용없단 얘기죠. 그러다보니 배경에 무늬도 생기고, 가로지르는 선도 생기고, 알파벳과 숫자가 90° 이상 몸을 비틀며 발악하고 있는 겁니다.

 

그럼에도 불구하고 없는 것보단 100배, 1000배 나으니 포기할 수 없습니다. 게다가 캡차 또는 리캡차 소스 코드는 오픈소스여서 원한다면 누구나 자신의 홈페이지에 설치할 수 있습니다.

 

게다가 최근에는 캡차 알고리즘이 ‘책을 펴지도 않고 읽는 기술’에 응용됐습니다. 미국 매사추세츠공대 미디어랩의 바르마크 헤쉬마트 박사는 파손 위험이 높은 서고 속 두루마리나 고문서를 ‘투시’해 내용을 확인할 수 있는 카메라를 개발했습니다. 이 논문은 2016년 9월 과학 저널 ‘네이처 커뮤니케이션즈’에 실렸습니다.

 

네이처 커뮤니케이션즈 제공
네이처 커뮤니케이션즈 제공

연구팀은 테라헤르츠 방사선(줄여서 T-ray)를 활용해 잉크로 인쇄된 종이 표면에서 잉크가 없는 부분을 구별하는 원리입니다. 글자를 판독하는 데에는 ‘머신 이미징’ 기술을 활용했습니다. 카메라가 쏜 테라헤르츠 방사선은 잉크와 부딪쳐 다시 카메라로 반사되고, 연구팀은 반사된 데이터를 이미지로 변환하는 알고리즘을 이용해 책 내용을 이미지로 인식했습니다. 하지만 노이즈가 많고 글자 모양이 일그러져 내용 확인이 어렵게 되자, 연구팀은 캡차에 입력된 텍스트와 이미지를 대조하는 알고리즘을 활용해 9페이지 분량의 내용을 투시하는 데 성공했습니다. 맨 앞 페이지부터 페이지별로 한 글자씩 뽑아내 공개된 원문과 맞는지 대조하는 실험을 진행한 겁니다.

 

연구팀을 이끈 헤쉬마트 박사는 “아직 갈길이 멀지만, 센서를 더욱 정교하게 만들면 가까운 미래에 책을 펼치지 않고도 한 권을 다 읽을 수 있는 날이 올 것”이라고 설명했습니다.

 

봇은 커녕, 사람도 알아보기 힘든 캡차들이 등장하고 있다. - Indian Journal of Science and Technology 제공
봇은 커녕, 사람도 알아보기 힘든 캡차들이 등장하고 있다. - Indian Journal of Science and Technology 제공

한편, 과학자들은 언젠가는 인공지능이 지성, 이성, 감성 등 사람 고유의 능력은 물론, 자아와 자의식까지 갖추게 될 것이라고 말합니다. 영화 ‘어벤저스’ 속 울트론과 같은 ‘초지능(super AI)’가 현실 속에 등장하겠지요. 하지만 당분간은 캡차 기술처럼 계속 쫓고 쫓기는 관계가 유지될 겁니다. 비록 점점 더 알아보기 힘들고 복잡해지겠지만, 그럴 때마다 아, 컴퓨터가 또 이만큼 똑똑해 졌구나(!)라고 생각하면 되겠지요. 미래엔 ‘당신은 봇이 아닙니다’라며, 그들만의 세계에 입장을 못할지도 모르니까요.     

이 기사가 괜찮으셨나요? 메일로 더 많은 기사를 받아보세요!

댓글 0

5 + 4 = 새로고침
###
    과학기술과 관련된 분야에서 소개할 만한 재미있는 이야기, 고발 소재 등이 있으면 주저하지 마시고, 알려주세요. 제보하기