컴퓨터세상 신기원을 연, 미래를 바꾼 아홉가지 알고리즘

사용자 삽입 이미지

미래를 바꾼 아홉 가지 알고리즘
컴퓨터 세상을 만든 기발한 아이디어들
존 맥코믹 지음 | 민병교 옮김 | acornLoft 시리즈
328쪽 | 18,800원 | 2013년 5월 31일 출간 예정 | ISBN: 9788960774384
YES24, 교보문고, 알라딘, 인터파크, 강컴, 반디앤루니스

십대 시절 호킹과 파인만의 책 이후 이 책만큼 나를 흥분시킨 책은 없었다.
- 앤드류 피츠기번(Andrew Fitzgibbon), 에미상 수상 카메라 소프트웨어 ‘Unwrap Mosaic’ 고안자이자 엑스박스 360 키넥트 고문
‘내 컴퓨터 안에서 무슨 일이 일어나고 있을까’라는 질문을 한 번쯤 품어본 이들이 꼭 읽어야 할 책이다.
- 척 대커(Chuck Thacker), 2010년 튜링상 수상자
오늘날 컴퓨터에 필수불가결한, 아홉 가지 아름다운 알고리즘에 관한 즐거운 탐험이다. 맥코믹은 기발한 비유를 들어 인류가 매일 사용하는 기술과 컴퓨팅의 지적 토대에 관한 위대한 지식을 제공한다.
- 샤론 펄(Sharon Perl), 구글
맥코믹은 아홉 가지 알고리즘을 선정해 ‘천재 상’을 수여했다. 아주 좋은 선택이다. 독자는 컴퓨터과학 분야의 천재들이 어떤 모습이었는지 새로운 이해를 얻을 수 있다.
- 윌리엄 프레스(William H. Press), 『수 레시피(Numerical Recipes)』의 공동 저자
존 맥코믹은 우리가 날마다 사용하는 많은 알고리즘을 수학 지식이 전혀 없는 사람도 쉽게 이해할 수 있도록 멋지게 설명했다. 나는 특히 페인트 색 혼합 방법을 비유로 든 공개 키 암호화 설명이 가장 마음에 든다.
- 토마스 코먼(Thomas H. Cormen), 다트머스대학교
맥코믹은 복잡한 개념을 아주 간단히 설명하는 작업을 훌륭하게 해냈다. 이 책에 나오는 비유들은 정말 환상적이다.
- 에이미 랭빌(Amy N. Langville), 『구글의 페이지랭크와 이를 넘어서(Google's PageRank and Beyond)』의 공동 저자
컴퓨터는 어떻게 만들어졌고, 오늘날 컴퓨터 세상을 움직이는 수많은 힘의 근원은 어디에서 시작한 것일까? 정말 대단히 복잡하고 난해해서, 일반인은 감히 근접하거나 이해하기도 어려운 천재적인 발상인 걸까?

이 책의 저자 맥코믹은 '절대 그렇지 않다'고 단언합니다.

데스크탑 컴퓨터는 물론, 노트북, 스마트폰 등을 비롯한 글자 그대로 컴퓨터 기기들을 비롯해 부지불식 간에 사용하는 인터넷, 온라인뱅킹, 검색, 파일 교환, 데이터베이스, 인공지능, 클라우드환경 등 우리는 일상생활에서 상상할 수도 없을 만큼 많은 컴퓨터 환경에 둘러싸여 살아갑니다. 예전에 '산소 없이 살 수 있을까'라는 질문이 공기의 중요성을 가장 잘 드러낸 말이었다면 지금은 "과연 우리가 컴퓨터 기술 없이 단 하루도 살아갈 수 있을까?"라는 말로 함축할 수 있다고 하겠습니다.

이 책에서 저자 존 맥코믹은 지금의 컴퓨터, 더 나아가 오늘날의 컴퓨터 환경을 이끌어낸 위대한 알고리즘 아홉 가지를 선정해 설명합니다. 여기서 저자는 이 책에서 선정한 알고리즘의 기준을 간단히 적시합니다.

(1) 인류가 날마다 사용하는 기술이어야 한다. 위에서 이야기한 대로, 컴퓨터 알고리즘이 무인우주탐사선을 쏘아올리고, 거대한 항공모함을 움직이거나 하는 대단함에서 비롯하는 것이 아니라, 우리가 일상생활에서 검색을 하고 온라인 상품구매나 뱅킹거래를 하고 안전하고 확실한 파일 교환을 하는 기저 기술이어야 한다는 것이죠.

(2) 이러한 알고리즘이 데이터 구조나 단지 이론에만 치중하는 형이상학적인 알고리즘이 아니라, 데이터 파일을 압축하는 문제 등의 구체적이고 실질적인 기술이어야 한다고 전제합니다.

(3) 마지막으로, 모니터, CPU, 네트워크 등 하드웨어나 인프라스트럭처 설계 등 특정 기술에 국한된 것이 아닌 컴퓨터과학의 기원과 연관되는 밀접한 알고리즘이어야 한다는 점을 듭니다.

이 책에서 저자도 이야기하듯이 오늘날 컴퓨터 세상을 이끈 알고리즘은 단지 9가지로 압축할 수도 없고, 이 책에서 선정한 알고리즘만이 궁극의 알고리즘이라고 말할 수는 없습니다. 하지만 이런 알고리즘을 이해하는 것은 지금의 컴퓨터 세상이 어떤 구조로 만들어지고 이어져 나가고 있는가를 알 수 있는 기준이 되는 것만은 분명해 보입니다.

이 책에서는 '세상에서 가장 큰 건초 더미에서도 바늘을 찾아내고야 마는' 검색엔진 인덱싱 기술, '구글을 출범시킨 기술'인 페이지랭크(PageRank)개념을 통한 인터넷 검색 기술을 설명하고, '밀봉한 편지봉투가 아닌 내용이 다 훤히 노출되는 엽서에 적어도 비밀을 완벽하게 전송할 수 있는 기법'인 공개 키 암호화, 그리고 '데이터 오류를 스스로 찾아내어 고치는' 오류 정정 코드, 어쩌면 컴퓨터가 인간의 능력에 미치지 못하는 가장 큰 숙제이자 미답지인 '패턴 인식과 인공지능' 기술의 현재, '방대한 책 한 권을 종이 한 장에 담아내는, 현실에서는 구현하기 어려운' 데이터 압축' 기술, '트랜잭션 처리 과정에서 일관된 데이터를 주고받는 방법'인 데이터베이스 기술, '실체도 없는 0과1의 디지털 비트 세상에서 소프트웨어의 진본성을 가려낼 수 있는' 디지털 서명 기술 등 알고리즘에 대해 살펴봅니다. 그리고 마지막으로 그 옛날 앨런 튜링이 발견해낸 '컴퓨터의 계산 가능성과 결정 불가능성'을 통해 컴퓨터의 한계와 미래, 과제를 짚어봅니다.

사용자 삽입 이미지

위 추천사에서도 볼 수 있듯이, 결코 쉽지 않을 컴퓨터 알고리즘을 쉽게 설명해내는 탁월한 저자의 스킬은 바로 4장, 공개 키 암호화 장에서 찾을 수 있습니다. 3명이 있는 공간에서 2명이 서로가 가진 비밀을 공유하는 방법에 대해 '페인트 혼합 기법'을 예로 들어 설명합니다(자세한 내용은 위 그림을 보고 일단 추측해보시고, 책의 본문에서 확인해보세요!^^).

그렇다면 이런 알고리즘을 이해하는 것이 우리 삶과 도대체 어떤 관계가 있을까요?
 
아마존닷컴엔 왜 공인인증서가 없을까?

보안은 결국은 백그라운드에서 체크를 하는 게 아주 중요한 겁니다. 아마존이 됐건 페이팔이 됐건 거래의 패턴을 뒤에서 이렇게 분석을 해서 거래내용 자체가 이상 징후가 포착되면 그것을 사전에 차단하고 그런 기술이 아주 고도로 발전되어 있고. 그다음에 유저 입장에서는 비밀번호는 간단하게 치고 아주 쉽게 거래하고 그래서 비밀번호도 유출될 수 있잖아요. 그런 경우에 사고가 나면 유저에게 물어줘라. 철저하게 물어줘라라고 법제도가 되어 있기 때문에 사업을 하는 자 입장에서는 어떻게 해서든 사고가 안 나는 온갖 기술을 다 열심히 개발해서 적용하고 있는 거죠. 그렇게 해서 유저의 입장에서는 아무런 프로그램 설치 안 하고 간편하게 이루어지고 혹시라도 사고가 나면 철저히 보상받을 수 있고. 그다음에 서비스 제공자 입장에서는 최첨단의 여러 백그라운드에서 뒤에서 이렇게 돌아가는 그런 기술을 동원해서 사고를 막는 거죠. 그러니까 보안기술의 진전이 우리나라보다는 월등 앞서 있다. 저는 이렇게 판단합니다
- 오픈웹 김기창 교수님 인터뷰 중에서
위 기사는 얼마 전  큰 화제가 됐던 김기창 교수님의 CBS 시사자키 인터뷰 기사 내용입니다. 여기서 김기창 교수님은 한국식 공인인증체계의 허술함과 현재 우리나라 보안의 문제점 등에 대해서 신랄하게 비판합니다.
사용자 삽입 이미지

사용자 삽입 이미지

아마존닷컴에는 저희 에이콘 책 <아마존닷컴 경제학 Amazonomics>에서도 이야기하는 원클릭(1-click) 결제 시스템이 유명합니다. 아이디와 비밀번호를 넣고 로그인한 후 저장해둔 카드번호와 유효기한 등의 정보만 입력해두고 카트에 사고 싶은 물건을 넣기만 하면, 그냥 단 한 번의 클릭만으로 결제가 일사천리로 진행되지요. 브라우저 호환을 걱정하거나, 공인인증서 설치를 찾거나, 수많은 액티브엑스를 설치하는 불편한 절차가 전혀 필요없습니다. 그렇다고 해도 이 거대한 사이트에서 정말 엄청난 사용자 보안 문제가 발생했다는 이야기는 잘 들리지 않습니다.

인터넷이라는 위대한 기술 발전을 통해, 정보 불균형의 문제나 아마존만이 가진 특별한 해법이나 기술이 있는 건 분명히 아닐진대, 왜 국가 간, 서비스 간 이러한 엄청난 간극이 존재하는 걸까요? 물론, 법제의 차이나 개별적인 기업환경 등 제가 정확한 해답은 드리지 못하겠습니다. 그러나 분명한 것은, "과연 우리가 기본에 충실했는가?" 혹은 "기본을 돌아보고 있는가?:라는 질문은 되묻지 않을 수 없습니다.

이 책을 읽으며, 그런 생각이 절실히 들었습니다. 만일, 보안체계를 세우는 정부부처, 보안 실무를 투자, 운영하는 기업들이 이 책에 나오는 '공개 키 암호화'라는 내용을 읽고서도 아무런 감흥을 일으키지 못할까? 우리는 지금까지 이런 기본이 되는 개념들을 간과해온 것이 아닐까?

물론, 처음에 이야기했듯이 이 책에서 지금까지 감춰진 엄청난 기술을 공개한다거나, 어마어마하고 난해한 기술을 설명하는 것은 절대 아닙니다. 그저 기본을 다시 훑어주기 위함이라는 것이죠. 혹 그런 기본이 우리나라 기술자, 기술 업계에서 결핍되어왔던 그 '무엇'이 아닐까,하는 생각이 듭니다. 우리 모두의 숙제일지도 모르겠습니다.

저자도 이야기하듯이, 컴퓨터 세상의 신기원을 만들어낸 이 위대한(이라고 칭해지는) 아홉 가지 알고리즘을 읽는다고 또 다른 새로운 발견을 해낼 수는 없습니다. 그러나 적어도 대한민국에서 개발자가, IT 기술 기업이 나아가야 할 일보 전진을 위한 근본을 되짚어 보는 시간은 될 것이며, 그 기본서로서 충분한 가치가 있다고 생각합니다.

이 책을 읽고 난 후 독자는 적어도, 컴퓨터 기술을 사용하거나 온라인 뱅킹을 하는 데 있어서 무지로 인한 막연한 불안감을 떨쳐내는 방법을 익히게 될 것입니다. 한편, 안전하지 않은, 신뢰할 수 없는 인터넷 기술을 비판하고 새로운 기술을 정립하는 데 더욱 적극적으로 참여하는 올바른 사용자 자세를 확립할 수도 있습니다. 그만큼의 능력치가 되도록 저자는 분명하고도 쉽게 이 난해한 이야기를 정말 재미있게 풀어냈다고 단언합니다.

5월 마지막 날 출간되는 이 책에 많은 관심 가져주시기 부탁드릴게요. 어쩌면 당연히 지녀야했을 우리의 수준을 한 단계 업그레이드 시켜줄 책이 분명할 테니까요.

YES24, 교보문고, 알라딘, 인터파크, 강컴, 반디앤루니스에서 예약판매 중입니다. :)
CC

크리에이티브 커먼즈 라이센스 에이콘출판사에 의해 창작된 이 저작물크리에이티브 커먼즈 코리아 저작자표시 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.