애플의 아이폰 잠금 해제 거부는 프로그래머 윤리 선언
글 | 박경신(오픈넷 이사, 고려대 법학전문대학원 교수)
애플과 미국 수사기관의 공방이 계속되고 있다. 미국의 수사 기관이 수사를 위해 용의자가 가진 아이폰을 잠금 해제해달라고 명령하고 애플은 이에 반박하고 있다. 이 공방과 관련해 알려진 사례는 크게 두 가지가 있다.
샌버나디노 총기 난사 용의자의 아이폰
캘리포니아 연방지방법원 동부지원의 셰리 핌 판사는 미국 연방수사국(FBI)이 2015년 12월 미국 샌버나디노 장애인시설 총기 난사 용의자의 아이폰[1]에 담긴 정보에 접근하기 위해 애플이 기술 지원을 해야 한다고 명령했다.
애플은 명령 반대 메시지를 담아 고객에게 보내는 편지까지 공개하며 반대하고 있다. 2016년 2월 25일 결정 취소 청구를 했으며 3월 22일 재판이 열릴 예정이다. 애플은 청구 취소 절차 외에도 항소장까지 제출했다.
뉴욕 마약거래상의 아이폰
FBI와 마약단속국(DEA)은 마약 거래상의 아이폰[2]을 압수했지만 잠금 해제를 풀 수가 없었다. 그래서 애플에 잠금 해제를 우회하도록 도와달라는 요청을 했다.
2016년 2월 29일 뉴욕의 연방지방법원의 제임스 오렌스틴 행정판사는 FBI와 DEA의 협조 요청을 기각했다. 이에 미국 법무부는 항소 의사를 밝혔다.
‘표현의 자유’로서의 애플의 거부
많은 사람이 이를 두고 개인정보와 프라이버시, 국가안보가 부딪히는 사례라고 파악한다. 하지만 이건 프라이버시보다 표현의 자유 문제로 볼 수도 있다. 코딩(프로그래밍)은 물리적 행위가 아니라 지적 행위이기 때문이다.
다시 말해 애플에 아이폰 1대를 위한 운영체제를 새로 만들어달라는 요구는 금고회사에 금고를 여는 키를 만들어달라는 것과는 다르다. 운영체제 개발은 물리적 행위가 아니다. 금고의 열쇠를 새로 제작하도록 강제하는 것과 알리바바에게 “열려라 참깨”라고 말하도록 강제하는 것은 다르다.
피카소에게 스페인의 독재자 프랑코를 찬양하는 그림을 그려달라고 강요할 수 있을까? 이 경우는 프라이버시를 침해할 수 있는 내용을 담은 소프트웨어 제작이니 더욱 말할 것도 없다.
물론 증언 거부로 감옥에 가는 사람들도 있다. 법원이라는 ‘공론의 장에서의 진실추구’라는 공익이 ‘증인의 말하지 않을 자유’보다 중요하게 여겨지는 경우들이 있기 때문이다. 하지만 전문가 증인(expert witness)에게 사건을 분석하고 의견을 말하도록 하라는 명령을 내리는 경우는 없다.
그렇다면 코딩이 연설, 작곡, 조각, 회화 또는 저술과 같은 행위인가 아니면 닫힌 금고를 열어주거나 법정에서 자신이 이미 아는 사실을 말하는 정도의 행위인가?
만약, 전자라면[3] 절대로 애플에 강제되어서는 안될 문제이다. 정부의 공익이 아무리 지대해도 그 공권력의 행사를 수동적으로 수용할 수 있을 뿐 코딩이나 운영체제 개발과 같은 창조적 행위를 강제할 수는 없다.
폴크스바겐 배기가스 조작 소프트웨어 같은 걸 만들어달라는 정부의 요구를 프로그래머들은 윤리적인 이유로 언제라도 거부할 수 있어야 한다. 정부는 애플에 ‘부탁’해야지 애플에 ‘강제’해서는 안 된다. 애플의 거부는 일종의 ‘프로그래머 윤리 선언’으로 칭찬받아야 한다.
FBI가 애플에 실제로 요구하는 것은 무엇인가
표현의 자유 측면을 보지 않고 프라이버시 측면만 본다면 애플의 입장을 수긍하기 어렵다. 프라이버시를 보호해야 하는 대상이 실제로 테러를 저지른 사람이기 때문에 보통 범죄수사에 있어서 프라이버시 보호기능을 하는 영장주의의 요건을 훨씬 충족하고 남는다. 여기에 ‘미래의 테러방지’라는 중요한 공익도 있다.
아이폰 1대 운영체제를 바꾼다고 해서 그 코드가 유출되거나 기억될 수 있다는 논리도 애플이 이미 그럴 능력을 갖추고 있음을 생각하면 설득력에 한계가 있다. 즉, 지금도 애플은 지금도 백도어를 만들 능력을 갖추고 있지만, 만들지 않고 있을 뿐이다.
테러범이 이용한 아이폰(5C)의 운영체제에는 암호를 여러 번 틀리면 점점 더 오랜 시간을 기다려야만 다시 입력할 수 있는 기능과 사용자 설정에 따라 더 많은 횟수를 틀리면 아이폰 내의 정보가 몽땅 삭제되도록 하는 기능이 들어있다.
FBI는 애플에 이와 같은 기능이 없는 운영체제(iOS 10)를 만들어달라고 요청했다. 그 ‘두 가지 기능이 빠진 iOS’로 아이폰을 업데이트한 후 무차별 공격(brute force) 등 여러 방법을 동원해 잠금 해제 암호를 직접 찾아보겠다는 것이다. 이때 iOS 업데이트를 하려면 애플의 승인을 거쳐야 하기 때문에 사실 애플이 업데이트한다고 보는 것이 맞다.
여기서 재미있는 질문은 이렇다:
‘애초에 왜 애플이 잠금 해제 없이도 iOS 업데이트가 가능하도록 해놓았는가?’
만약 그렇지 않았다면, FBI의 요청에 대해 애플은 그냥 ‘불가능하다’고 답하면 그만이었을 것이기 때문이다. 또는 만약 애플이 iOS 업데이트와 무관하게 작동하는 암호보호 소프트웨어를 내장시켰다면 어땠을까?
실제로 이후 버전의 아이폰에는 보안 엔클레이브(Security Enclave)라는 프로세서[4]가 있어서 어떤 종류의 iOS가 업데이트되더라도 암호를 풀기는 실질적으로 불가능해졌다. 즉 새 버전의 아이폰은 이용자가 암호를 알려주지 않으면 그 정보는 영원히 폰 안에 잠기게 되어 지금과 같은 공방이 애초에 발생하지 않는 것이다.
정부는 프로그래머에게 코딩을 강요할 수 있는가
그렇다면, 애플이 실제로 고객 프라이버시만을 생각했다면 왜 예전 버전에서는 이용자 동의 없이 애플이 iOS 업데이트를 할 수 있게 설계했을까? 고객이 암호를 잃어버렸을 때 그 안의 중요한 정보를 빼주기 위해서? 그런 목적이었을 리는 없다. 애플은 이미 용의자의 클라우드 계정에 있는 정보를 FBI에게 넘겨줬다.
만약 고객의 중요 정보를 빼낼 목적이었다면 FBI가 요청한 업데이트도 안 해줄 명분이 없다. 애플이 클라우드 정보는 제공하면서 아이폰 내의 정보 취득을 돕지 않는 이유는 고객의 프라이버시 때문만이 아니라 바로 프로그램을 새로 만들어야 하기 때문이다.
애플을 비난하려는 것이 아니다. 각 기기의 보안기준은 사회규범을 통해 정해진 것이 아니라 각자 프로그래머들이 자유롭게 정하는 것이고 전 세계 시민단체 중에 누구도 애플에 왜 보안 엔클레이브를 미리 설치하지 않았느냐고 비난한 적이 없고 비난해서도 안 된다. 그럴 수 있다면 모든 안드로이드에 대해서 불매운동을 벌여야 할 것이다.
즉, 아이폰을 완전히 침투 불가능하게 만들 수도 있고 부분적으로 침투할 수 있게 만들 수도 있는 자유를 이미 애플의 프로그래머들이 향유하고 있는 상황에서 ‘iOS 10 하나만 만들어도 그 코드가 확산할 수 있다’는 주장은 그 자체만으로는 협조를 거부하기에 충분한 반론이 아니다.
결국, 더 강한 반론은 프로그래머들에게 코딩을 강요할 수 있다는 논거가 더해질 때 비로소 얻을 수 있다. 특히 ‘나쁜 선례를 만든다’는 주장도 그 선례가 이용자 협조 없이 정보를 취득할 수 있게 해주는 선례일 뿐 아니라 프로그램을 새로 만들어달라는 정부 요구를 수용하는 선례임을 이해할 때 의미를 얻는다. 혹자는 프로그래밍(코딩)의 자유를 표현의 자유와 동일시하면 프로그래밍에 대한 규제를 하기 어렵게 된다고 말한다. 나도 원칙적으로 이런 견해에 반대하지는 않는다.
애플의 정체성을 보호해야 한다는 법원 판결
FBI가 마약범죄 수사에서 애플에 백도어를 만들어달라는 요청을 했는데 기각된 건을 살펴보자. 이 건에서의 핵심 논리는 “수사대상 범죄에 관여하지도 않은 사기업에 그 수사를 도와주는 소프트웨어를 만들어달라는 부담을 줄 수 없다”는 것이다.
판사는 특히 애플의 부담을 논하면서“애플이 이용자들에게 약속한 보안이 지켜지는가는 애플의 매출에만 영향을 주는 것이 아니라 애플이 어떤 회사가 되려고 열망하는가에도 영향을 준다”[5]고 논하는 대목에서는 코드에 영혼을 담는 프로그래머들의 모습이 그려지기도 한다.
참고로 이 결정을 내린 제임스 오렌스틴 판사는 오랫동안 친(親)프라이버시 결정을 내려온 판사다. 임기제 판사[6]라서 연방판사[7]보다 영향력은 떨어지지만, 압수수색, 감청, 통신사실확인과 관련해서는 임기제 판사들이 결정을 많이 내리기 때문에 다른 임기제 판사들에게 영향을 줄 것으로 본다.
==============================
[1] 아이폰 5C
[2] 아이폰 5
[3] 참고로 나는 비개발자다.
[4] 보안 엔클레이브는 애플 A7 이상 버전의 A 시리즈 프로세서에 내장된 보조 프로세서. 애플 문서를 따르면 응용 프로그램 프로세서와는 별개인 자체 보안 부팅과 개인화된 소프트웨어 업데이트를 사용한다. 또한, 데이터 보호 키 관리를 위한 모든 암호화 작업을 제공하며 커널이 손상된 경우에도 데이터 보호의 무결성을 유지한다.
[5] It is entirely appropriate to take into account the extent to which the compromise of privacy and data security that Apple promises its customers affects not only its financial bottom line, but also its decisions about the kind of corporation it aspires to be.
[6] magistrate
[7] district judge. 종신제
* 위 글은 슬로우뉴스에 동시 게재하고 있습니다. (2016.03.14.)
0 Comments