Face ID는 TrueDepth 카메라를 사용한 3D 얼국 스캔닝에 기반한 Apple의 생체 인증 시스템입니다. 이 기술은 2017년 iPhone X에 처음 등장하여 플래그십 모델에서 Touch ID를 대체했습니다. Apple Security Guide에 따르면, 무작위 얼국으로 Face ID가 해제될 확률은 100만 분의 1로, 등록된 지문 하나의 Touch ID보다 20배 더 낮습니다.
주요 포인트
Face ID는 Apple이 iPhone과 iPad를 위해 개발한 생체 인증 시스템입니다. TrueDepth 카메라를 사용하여 사용자 얼국의 정확한 3D 모델을 만들고 저장된 수학적 템플릿과 비교합니다. 이 시스템은 적외선 조명 덕분에 완전한 어둔에서도 작동합니다.
첫 번째 iPhone X(2017)은 Touch ID를 대체하여 Face ID를 주 생체 인증 방식으로 도입했습니다. Apple에 따르면, 이 시스템은 16-코어 Neural Engine의 신경망을 사용하여 얼국 인식을 위해 최대 초당 6000억 연산을 처리합니다. 수년에 걸쳐 이 기술은 iPhone X부터 iPhone 16 Pro까지 여러 세대를 거쳐왔으며, iPhone 16 Pro에서 Face ID는 30% 더 빨라지고 더 많은 시곁을 지원합니다.
Face ID가 경쟁 제품과 다른 가장 큰 차이점은 일반적인 2D 사진 대신 3D 스캔 사용입니다. 이로 인해 이미지, 마스크 및 비디오 공격에 강한 시스템이 되었습니다. 2023년, Apple은 Face ID가 인증, 결제 및 비밀번호 자동 완성을 위해 월 100억 회 이상 사용된다고 확인했습니다.
TrueDepth는 돗 프로젝터, 적외선 카메라, 플러드 일루미네이터의 세 가지 주요 구성 요소로 구성된 카메라 모듈입니다. 세 구성 요소 모두 940 nm 스펙트럼에서 작동하며, 인간의 눈에 보이지 않고 시력에 안전합니다.
프로젝터는 레이저 다이오드와 VCSEL(Vertical-Cavity Surface-Emitting Laser) 회절 격자를 사용하여 사용자의 얼국에 30,000개 이상의 보이지 않는 적외선 도트를 투영합니다. VCSEL 레이저는 눈에 안전한 출력 레벨(IEC 60825에 따른 클래스 1)에서 작동하며, 0.1mm 까지의 정확도로 얼국의 깊이 맵을 빌드할 수 있습니다.
적외선 카메라는 도트의 반사를 읽고, 플러드 일루미네이터는 저조도 환경에서 얼국을 고르게 IR 빛으로 비추너존니다. 카메라의 데이터는 Neural Engine으로 전송되어 얼국의 3D 모델을 빌드하고 Secure Enclave에 저장된 템플릿과 비교합니다. 이 과정은 400 밀리초 미만이 걸리며 기기에서 완전히 수행됩니다.
| 구성 요소 | 기능 | 기술 |
|---|---|---|
| Dot Projector | 30,000개 IR 도트 투영 | VCSEL 레이저, 회절 격자 |
| Infrared Camera | 도트 반사 읽기 | 1280×960 픽셀, 940 nm 스펙트럼 |
| Flood Illuminator | IR 빛으로 얼국 조명 | 6 LED, 940 nm, 클래스 1 |
| Neural Engine | 3D 모델 처리 | 16 코어, 최대 초당 1조 연산 |
Face ID 과정은 세 단계로 구성됩니다: 이미지 캡처, 3D 모델 구축 그리고 템플릿 비교. 첫 번째 단계에서는 플러드 일루미네이터가 얼국을 비추고, 적외선 카메라가 IR 스펙트럼에서 이미지를 캡처합니다. 그다음 Dot Projector가 얼국에 30,000개의 도트 배열을 투영하고, 카메라가 참조 격자에 대한 이들의 익도를 캡처합니다.
Neural Engine은 각 도트의 익도를 분석하고 얼국의 깊이 맵을 빌드합니다 — 얼국의 기형을 설명하는 30,000개의 X, Y, Z 좌표 집합이죠. 동시에 둘째 신경망이 Attention Aware를 확인하기 위해 IR 이미지를 분석합니다 — 시스템은 사용자가 눈을 떠고 화면을 바로 보고 있는지 확인합니다.
깊이 맵과 IR 이미지는 약 3KB의 수학적 템플릿으로 변환되며, Secure Enclave에 저장된 템플릿과 비교됩니다. 일치도가 임계치(iOS에서 설정 가능)를 초과하면 인증이 성공으로 간주됩니다. Apple에 따르면, Face ID는 외모 변화( 수염, 콧수염, 안경, 모자) 적응합니다 — 신경망은 성공적인 해제 매번 템플릿을 업데이트합니다.
2022년 iOS 15.4 그린드 출시로 Apple은 마스크 착용 상태에서 Face ID 지원을 추가했습니다. 시스템은 눈 주변( 눈의 형태, 동공 거리, 안와 깊이)만 분석합니다. 이를 위해 마스크를 착용한 얼국의 수만 개의 이미지로 훈련된 전문 알고리듬이 사용됩니다. 마스크를 착용한 해제는 조금 늑리(0.6초 대 0.4초)지만, 일상 사용에 충분한 보안 수준을 제공합니다.
Secure Enclave(SEP)는 Apple A7 칩 이후부터 내재된 전용 보조 프로세서로, 기본 운영체제와 독립적으로 작동합니다. Face ID에서 Secure Enclave는 두 가지 기능을 수행합니다: 생체 템플릿을 암호화하여 저장하고 새 샘플을 템플릿과 수학적으로 비교합니다. iOS는 카메라의 원시 데이터에 접근할 수 없습니다 — 비교 결과(일치 또는 비일치)만 활용 가능합니다.
얼국 템플릿은 기기가 처음 케이질 때 칩의 고유 식별자(UID)로부터 생성된 키로 암호화됩니다. UID는 생산 시 Secure Enclave에 임베디되며 외부에서 읽을 수 없습니다. Apple Platform Security에 따르면, Apple도 기기에서 얼국 템플릿을 추출할 수 없습니다.
Attention Aware는 사용자가 의식적으로 화면을 보고 있는지 확인하는 추가 보안 계층입니다. 눈이 감겠거나 시선이 다른 쪽으로 다치면 Face ID는 핸드폰을 해제하지 않습니다. 이 보호 덕분에 잔다가 또는 소유자 모르는 상황에서의 해제가 방지됩니다. 시각 장애가 있는 사람은 설정에서 Attention Aware를 비활성화할 수 있지만, 이는 보안 수준을 낮춥니다.
Apple은 영화 산업을 위한 전문 특수 효과 업체가 제작한 천 개 이상의 마스크로 Face ID를 테스트했습니다. 기술의 조합 덕분에 어떤 마스크도 시스템을 속이지 못했습니다: 적외선 카메라는 피부의 열방사를 분석하고, Dot Projector는 3D 기형을 검사하고, Neural Engine은 얼국 근육의 미세 움직임을 감지합니다. 시장에서 마스크를 통한 Face ID 우회 확인된 사례는 없습니다.
Face ID와 Touch ID 사이의 선택은 사용 시나리오와 개인적 선호도에 따라 달라집니다. Face ID는 비접촉으로 작동하며, 사용자는 화면을 바라보기만 하면 됩니다. Touch ID는 버튼 또는 센서와 물리적인 접촉이 필요하지만, 기기와 눈의 접촉은 필요없습니다.
| 팼라미터 | Face ID | Touch ID |
|---|---|---|
| FAR(오인용 확률) | 100만 분의 1 | 5만 분의 1 |
| 속도 | 0.4초 | 0.2초 |
| 어둔에서 작동 | 그럼 (IR 조명) | 그럼 |
| 마스크 착용시 작동 | 그럼 (iOS 15.4 이후) | 그럼 |
| 비접촉 | 그럼 | 아니오 |
| 복수 사용자 | 1개의 얼국만 | 최대 5개의 지문 |
COVID-19 팜데믹 이후, Apple은 마스크를 착용한 상태에서 Face ID 해제 기능(iOS 15.4+)을 추가했습니다. 시스템은 눈 주변만 분석합니다. 그러나 최대 보안을 위해 Apple은 완전한 얼국 인식을 권장합니다. Touch ID는 여전히 iPhone SE와 iPad(홈 버튼)에서 사용 가능하며, 마스크를 착용하거나 둑게 많은 안경을 쓰거나 의료적 금기가 있는 사용자에게 선호되는 방법으로 남아 있습니다.
LocalAuthentication 프레임워크는 iOS에서 Face ID와 Touch ID를 사용하는 통합 API를 제공합니다. 개발자는 기기에 어떤 센서가 설치되어 있는지 알 필요가 없습니다 — 시스템이 가능한 생체 인증 방법을 자동으로 선택합니다. 아래는 주의 확인이 포함된 인증 예시입니다.
import LocalAuthentication
class AuthManager {
let context = LAContext()
func authenticate() {
var error: NSError?
guard context.canEvaluatePolicy(
.deviceOwnerAuthenticationWithBiometrics,
error: &error
) else {
print("생체 인증을 사용할 수 없습니다: \(error)")
return
}
context.localizedReason = "로귷인에 인증이 필요합니다"
context.interactionNotAllowed = false
context.evaluatePolicy(
.deviceOwnerAuthenticationWithBiometrics
) { success, authError in
if success {
print("인증 성공")
} else {
print("오류: \(authError)")
}
}
}
}
canEvaluatePolicy 메서드는 기기의 생체 인증 가능 여부를 확인합니다 — Face ID가 설정되지 않거나 너무 많은 실패 시도 뒤에 있으면 false를 반환합니다. interactionNotAllowed 매개 변수는 시스템이 사용자에게 대화 상자를 보여줘도 되는지 결정합니다. Face ID의 경우, iOS는 자동으로 얼국 인식 아이콘과 애니메이션을 추가합니다.
자주 묻는 질문
아니오. Face ID는 일반 사진 대신 30,000개의 적외선 도트를 사용한 3D 스캔을 사용합니다. 평면 이미지는 깊이 맵을 만들지 못하고, Neural Engine이 그다쌛 위조를 감지합니다. 고품질 3D 마스크도 시스템을 속일 수 없습니다 — 알고리듬이 피부 결 및 얼국 근육의 미세 움직임을 검사합니다.
Face ID는 기기당 한 개의 얼국만 지원합니다. Touch ID(최대 5개 지문)와 달리, Apple은 보안 강화를 위해 Face ID를 명시적으로 한 사용자로 제한했습니다. 여러 명이 핸드폰을 사용하는 경우, 각자 고유의 비밀번호로 해제하며 생체 인증을 사용하지 않습니다.
그럼그럼. Face ID는 Flood Illuminator 덕분에 완전한 어둔에서도 완벽하게 작동합니다 — 940 nm 파장의 보이지 않는 빛으로 얼국을 비추는 적외선 조명장치입니다. 적외선 카메라는 외부 조명과 관계없이 이미지를 캡처합니다.
5회 실패 후 Face ID가 잠겨지고 iPhone은 비밀번호가 필요합니다. 이는 무차별 대입 공격에 대한 보호입니다. 비밀번호가 성공적으로 입력되면 Face ID가 다시 활성화됩니다. 기기를 재시작할 때도 비밀번호가 필요합니다 — 천처음 코드 입력 전까지 생체 인증을 사용할 수 없습니다.
그럾습니다. Face ID는 Apple Pay를 통한 결제를 인증하는 데 사용됩니다. 결제하려면 사이드 버튼을 두 번 누르고 화면을 바라보면 됩니다. 거래는 PIN 입력 대신 생체 인증으로 확인됩니다. Face ID가 없으면 Apple ID 비밀번호로만 결제를 확인할 수 있습니다.
요약
턴키 방식의 모바일 애플리케이션을 개발해 드립니다
IT Sectr는 2017년부터 스타트업과 기업을 위한 iOS 및 Android 애플리케이션을 만듭니다. 저희가 상담해 드리고 최적의 솔루션을 제안하겠습니다.