터치 ID는 스마트폰의 보안에 생체인식을 도입한 첫 케이스는 아니다. 이미 지문인식 센서를 도입하려는 시도는 여럿 있었기 때문이다. 하지만 지문인식을 간단하게 만들면서 지문인식이 스마트폰의 기본 기능이 되는 데 일조했다.
다음 맥북 프로에는 맥 중에서는 처음으로 터치 ID 센서가 들어갈 것이라고 한다. 그 전에 이번 글을 통해 터치 ID의 기술은 어떻게 동작하는지 알아보자.
터치 ID 센서
터치 ID의 조상격인 어센텍의 핑거락 센서 프로토타입. 손에 들린 부분이 실제로 지문을 읽는 센서, 그 아래가 전원 장치 부분이다. (사진: AppleInsider)
터치 ID의 원천 기술은 원래 어센텍이라는 회사에서 개발하고 있던 '핑거락(FingerLoc)'이라는 제품에서 시작된 것이다. 처음에는 지문인식기 자체도 굉장히 큰 제품이었지만, 점점 소형화를 거치면서 많은 업체들의 관심을 샀다. 그 중에는 물론 애플도 있었고, 결국 2012년에 어센텍을 인수했다. 인수 후에 센서를 최종적으로 소형화시켜 아이폰의 홈 버튼에 넣을 수 있었다고 한다.
터치 ID의 단면. 이미지 속 모델은 아이폰 5s (애플 홍보영상 캡처)
홈 버튼에 위치한 터치 ID 센서는 몇 가지의 부품으로 나눠져 있다. 우리가 늘 보는 홈 버튼 부분은 지문을 센서가 읽을 수 있게 초점을 잡아주는 렌즈 역할도 담당한다. 이 부분은 애플 워치와 애플 워치 에디션의 커버 유리에도 쓰이는 사파이어 크리스탈로 만들어지기 때문에 웬만해서는 흠집이 가는 것이 불가능하다.
그 다음에는 스테인리스 스틸로 만들어진 링이 있다. 실버나 골드, 로즈 골드 모델을 사면 해당 색깔로 칠해놓은 그 부분이다. 이 부분은 사용자의 손가락이 놓여졌다는 것을 인식해 터치 ID 센서를 켜는 역할을 담당한다.
그 아래에 있는 것이 바로 터치 ID 센서다. 센서 자체는 170 마이크로미터(0.17mm)의 두께이고, 500ppi 해상도로 표피 하부의 지문을 스캔한다. 아이폰 6s에서는 해상도를 더 올려서 인식 속도를 높였다. (2세대 터치 ID)
지문을 읽는 방법에는 크게 광학식과 정전식이 있다. 광학식은 말 그대로 센서에 작은 디지털 카메라를 달아 지문의 사진을 찍는 방식이다. 이에 반해 정전식은 피부의 표피 내부인 피하층이 전기가 통할 수 있는 전도성인 점을 이용한다. 지문에서 튀어나온 부분으로 인해 감지되는 전기 신호의 차이를 이용해 지문을 수학적으로 재구성하는 것이다.
터치 ID는 정전식 인식법을 이용한다. 정전식 인식법은 지문의 사진라기보다는 수치화된 데이터를 저장하기 때문에 지문 센서에 손가락을 대는 강도에 상관없이 지문을 인식할 수 있고, 지문을 반대 방향으로 인식시켜도 문제없이 인식할 수 있다. 하지만 지문에 이물질이 묻거나 젖어있으면 인식 속도가 현저히 떨어진다.
정전식 지문 센서의 인식 방법을 그림으로 표현한 자료 (자료: 어센텍)
글로만 설명하려면 좀 어려우니 그림을 보도록 하자. 윗부분이 손가락의 지문 부분, 아래가 센서다. 지문은 확대하면 흡사 산등성이와 골짜기가 있는 협곡과 비슷한 모습을 보이는데, 이 높이차로 인해 피부에서 나오는 전기신호의 정도에도 약간의 차이가 생기게 된다. (사이에 보이는 파동이 바로 그 전기 신호의 파동이다) 센서는 그 차이를 잡아내서 지문의 모양을 데이터화할 수 있다.
지문을 읽는 데 쓰이는 세 가지의 주요 유형. 왼쪽부터 궁상문, 제상문, 와상문(애플 홍보영상 캡처)
지문을 판독하는 데 쓰이는 세 가지의 세부 특성. 왼쪽부터 솟은 부분이 끝나는 부분, 갈라지는 부분, 솟은 부분이 짧아서 점처럼 보이는 경우. (자료: 위키백과)
거기에 터치 ID는 추가적으로 유형 분석법을 사용한다. 지문에는 소용돌이 모양의 와상문(whirl), 아치 모양의 궁상문(arch), 고리 모양의 제상문(loop) 등의 유형이 있는데, 센서는 읽은 지문을 이 유형으로 분류한 후 그 외 주름의 끝이나 분기점 등의 미세한 차이점을 통해서 다른 지문과 구분할 부분들을 찾아내 입력한다.
터치 ID는 최대 다섯 개의 지문을 등록할 수 있다. 한 슬롯에 여러 개의 지문을 번갈아가면서 스캔해서 편법으로 늘리는 방법도 있지만, 그만큼 인식률은 떨어진다. 지문 데이터를 읽을 때마다 조금씩 데이터를 축적해서 조금씩 인식 능력을 자체적으로 개선하지만, 데이터가 과도하게 축적되면 오히려 과거 데이터와의 충돌로 인해 인식률이 역으로 낮아지는 문제가 있었다. 이 문제는 데이터를 축적하면서 옛날 데이터는 조금씩 지우는 방법으로 해결됐다.
보안 엔클레이브 (Secure Enclave)
A7 이후 모든 A 프로세서에는 보안 엔클레이브가 들어가 있다. (사진: 애플)
터치 ID 센서에서 읽은 지문은 아이폰의 AP 내에 있는 보안 엔클레이브에서 처리한다. 보안 엔클레이브는 AP와 소프트웨어의 다른 부분과도 분리돼 있는 보안 영역으로, 이 곳에 사용자의 지문 데이터가 저장된다.
지문 대조를 위한 스캔 데이터가 들어오면, 보안 엔클레이브는 이 데이터를 암호화된 메모리에 저장한 후, 대조를 위해 데이터를 벡터화한다. 지문이 일치한 경우, 일치한다는 신호를 OS로 보낸다. 이 신호를 제외하면 보안 엔클레이브는 어떠한 데이터도 소프트웨어나 AP의 다른 부분에 전송하지 않는다. 당연히 아이튠즈나 아이클라우드로 백업되지도 않는다. 아이폰에 설치된 iOS를 초기화하면 지문을 새로 등록해야 하는 이유가 여기에 있다. (이 부분은 맥북 프로도 비슷할 것이다. 만약에 달린다면)
써드파티 앱에서 터치 ID 제어를 요청하는 경우, 앱의 요청을 받은 OS에서 터치 ID 팝업을 띄운다. 사용자가 지문을 인식하면, 같은 인식 과정이 이루어지고, 보안 엔클레이브는 OS를 통해 앱에게 일치 여부만 통보한다.
보안을 이유로 터치 ID 센서와 AP 안에 있는 보안 엔클레이브는 부품이 탑재될 아이폰의 생산 과정에서 인증 과정을 거쳐 연결된다. 이 인증은 애플 스토어의 지니어스 바나 애플 공인 서비스 센터에서만 재설정할 수 있다. 사설 수리점에서 터치 ID 센서를 포함한 홈 버튼 부품을 바꾸면 이 인증이 풀어지기 때문에 터치 ID가 동작하지 않는다. 그러나 iOS 9.2.1 업데이트 이후로는 애플이 보안 정책을 한 단계 더 높여서 이 인증을 실패하면 아예 아이폰을 벽돌로 만들어버렸다. 이게 바로 지난 2월에 사설 수리를 받은 아이폰을 아예 못 쓰게 만들어 논란이 됐던 에러 53이다. 이 문제는 결국 나중에 아이튠즈를 통해 제공되는 소프트웨어 업데이트로 다시 원래대로 돌려놓았다. (여전히 터치 ID는 쓸 수 없다)
만약에 맥북 프로에 터치 ID가 탑재된다면, 여기에도 보안 엔클레이브가 필요할 것이다. 다만 맥의 프로세서는 아이폰과 달리 애플이 자체 개발한 것이 아니기 때문에 인텔에게 전용 프로세서를 주문하던지(노트북 판매 순위 1위인 애플의 주문량이라면 충분히 가능한 시나리오다), 보안 엔클레이브를 외부 칩 형태로 장착할 가능성을 생각해볼 수 있다.
다른 플랫폼의 지문 인식법
넥서스 5X의 넥서스 임프린트 지문인식 센서. (사진: LG)
요즘 나오는 대부분의 스마트폰은 터치 ID와 비슷한 정전식 인식 방식을 쓰고 있는 것으로 추측된다. 하지만, 애플이 어센텍을 인수하면서 어센텍의 특허를 전부 가져갔기 때문에 특허를 우회하기 위해 약간 다른 방법을 쓸 것이다.
넥서스 5X와 6P에 들어간 지문 인식 센서인 넥서스 임프린트의 경우 구글이 보안 관련 기능을 일부 공개했다. 센서에서 스캔된 지문은 구글이 말하는 ‘신뢰되는 실행 환경(Trusted Execution Environment; TEE)’이라 불리는 하드웨어에 저장되고, 한 번 저장되면 밖으로 나가지 않는다. TEE는 결론적으로 터치 ID의 보안 엔클레이브와 비슷한 역할을 한다고 생각하면 된다. (사실 보안 엔클레이브가 TEE의 일종이다)
삼성의 경우, 갤럭시 S5에서 지문 데이터를 암호화하지 않아 메모리에만 접근해도 지문 데이터를 가로챌 수 있다는 연구 결과가 나왔었다. 결론적으로 아이폰의 보안 엔클레이브나 넥서스 임프린트의 TEE같은 지문을 안전하게 저장할 보안 영역이 없었다는 의미로 풀이된다. S6에서 이 문제를 풀었는지는 삼성이 관련 자료를 공개하지 않아 확실하진 않다.
안전할까?
지문 인식이 과연 안전한가? 라는 질문은 애플이 터치 ID를 채용하면서부터 꾸준히 논의된 부분이다. 일단 TEE나 보안 엔클레이브 안에 저장된 지문 데이터는 빼오는 것 자체가 어렵다. 거기에 어떻게든 보안 엔클레이브에서 지문 데이터를 빼내는 데 성공했다 하더라도 정전식 인식 방식의 특성상 이미지가 아닌 수치화된 데이터를 암호화해서 저장하기 때문에 데이터를 풀어내 지문 데이터로 복구하는 것은 더더욱 불가능하다.
그럼 반대로 가짜 지문을 이용해 스마트폰을 뚫으려 할 때는 어떨까? 결론부터 말하자면 가능은 하다고 한다. 터치 ID가 발표된 지 얼마 안 됐을 때, 2,400DPI의 초고해상도로 지문을 촬영한 다음 이 결과를 1,200DPI짜리 프린터로 인쇄해 라텍스로 본을 떠서 인식을 시키는 데 성공했다고 한다. 하지만 주변에 이런 극단적인 방법을 쓰면서까지 남의 아이폰 안을 들여다보고 싶어하는 사람들이 많을 지는 의문이다. 따라서 저런 사람을 맞딱드리지 않는 한 괜찮다고 봐도 되겠다. 사실 저런 사람은 피하는 게 답이다.
관련 글
• 다음 맥북 프로, 터치 ID와 OLED 디스플레이 바로 무장