최적의 앱 보안과 원활한 사용자 액세스를 위해 로컬 생체 인식과 함께 패스키를 사용할 때의 이점을 알아보세요.
Vincent
Created: June 17, 2025
Updated: July 8, 2025
See the original blog version in English here.
Our mission is to make the Internet a safer place and passkeys provide a superior solution to achieve that. That's why we want to keep you updated with the latest industry insights here.
휴대폰의 생체 인식이 보편화된 후, 많은 네이티브 앱은 Face ID나 Touch ID(또는 Android의 동등한 기능)와 같은 기능을 사용하여 앱 액세스를 보호하기 시작했습니다. 이러한 로컬 생체 인식 보호는 빠르고 원활한 액세스를 가능하게 하여 사용자 편의성을 크게 향상시킵니다. 언뜻 보기에 패스키와 로컬 생체 인식은 둘 다 사용자를 확인하는 과정이 포함되어 중복되는 것처럼 보일 수 있습니다. 하지만 이 둘은 근본적으로 다른 목적을 수행합니다. 이 글에서는 다음을 살펴보겠습니다:
이 글을 다 읽고 나면, 더 안전하고 사용자 친화적이며 원활한 앱 경험을 만들기 위해 이러한 솔루션들을 언제 어떻게 함께 활용해야 하는지 더 잘 이해하게 될 것입니다. 또한 패스키와 로컬 생체 인식을 결합하여 보안과 편의성을 모두 향상시킬 수 있는 실제 시나리오를 설명하여, 개발자가 사용자 요구를 효과적으로 충족시키기 위한 정보에 입각한 결정을 내릴 수 있도록 할 것입니다.
Apple의 Face ID, Touch ID 또는 Android의 생체 인식 기능과 같은 로컬 생체 인증 방법은 고유한 신체적 특징(예: 얼굴 특징 또는 지문)을 활용하여 사용자의 신원을 확인합니다. 사용자가 아는 것에 의존하는 기존의 PIN이나 비밀번호와 달리, 생체 인식은 사용자에게 내재된 것에 의존합니다. 이러한 변화로 인해 코드를 반복적으로 입력할 필요가 없어 마찰이 크게 줄어들고 일상적인 앱 액세스가 빠르고 안전해집니다.
휴대폰에서 생체 인식이 주류로 자리 잡기 전에는 민감한 콘텐츠를 보호하려는 앱들이 실행될 때마다 사용자에게 추가 PIN이나 비밀번호를 입력하도록 요청하는 경우가 많았습니다. 이 접근 방식은 보안을 강화했지만, 특히 사용자가 세션 시작 시 이미 인증을 받은 경우 추가적인 불편을 초래했습니다. 기기 기반 얼굴 인식 및 지문 스캔 기술의 등장은 이 과정을 단순화했습니다. 이제 사용자는 코드를 반복적으로 입력하는 대신 빠른 얼굴 스캔이나 간단한 터치로 앱을 잠금 해제할 수 있게 되었습니다. 어떤 이유로든 생체 인식 확인이 실패하거나 사용자가 활성화를 원하지 않는 경우, 대체 수단으로 PIN, 패스코드 또는 비밀번호를 계속 사용할 수 있습니다. 이 설계는 보안을 저해하지 않으면서 편의성과 접근성을 모두 보장합니다.
로컬 생체 인식 확인과 완전한 원격 인증 이벤트를 구별하는 것이 중요합니다. 원격 인증은 새 세션이 시작될 때 비밀번호나 패스키와 같은 자격 증명을 사용하여 서비스의 백엔드 시스템에 대해 사용자의 신원을 확인하는 과정에서 발생합니다. 이 단계는 사용자와 서비스 간의 신뢰를 구축합니다.
반면, 로컬 생체 인식은 진행 중인 인증된 세션 동안 신원을 재확인하는 데 중점을 둡니다. 사용자가 잠시 앱을 떠나거나 휴대폰을 잠글 때 비밀번호나 다른 자격 증명을 다시 입력하도록 요청하는 대신, 로컬 생체 인식은 동일한 승인된 사용자가 여전히 기기를 제어하고 있음을 확인합니다. 이 기기 중심의 확인은 인터넷 연결이나 원격 서버와의 상호 작용이 필요하지 않아 일상적인 사용에서 빠르고 안정적이며 원활하게 작동합니다.
생체 인식 데이터는 iOS의 Secure Enclave나 Android의 신뢰할 수 있는 실행 환경(TEE)과 같은 전용 하드웨어 보안 모듈 내에서 안전하게 저장되고 처리됩니다. 이러한 신뢰할 수 있는 모듈은 민감한 생체 인식 데이터가 조작, 추출 또는 전송되지 않도록 보호하도록 설계되었습니다.
이러한 하드웨어 수준의 고정 때문에 생체 인식 확인은 기기나 서비스 간에 쉽게 공유될 수 없습니다. 각 기기의 생체 인식 템플릿은 해당 특정 장치에 고유하게 유지되므로, 사용자가 새 휴대폰으로 업그레이드하면 처음부터 생체 인식을 다시 등록해야 합니다. 이는 기기를 전환할 때 약간의 온보딩 단계를 추가하지만, 무단 액세스로부터 보호하고 중앙에 저장된 생체 인식 데이터를 악용할 수 있는 원격 공격을 방지합니다. 또한 로컬 생체 인식은 인터넷 연결 없이 작동하므로 기기가 오프라인일 때도 신뢰할 수 있습니다.
로컬 생체 인식은 현재 기기를 다루는 사람이 실제로 합법적이고 이미 인증된 사용자임을 확인하여 보안을 간소화합니다. 이는 앱에 뱅킹, 보험 또는 기타 개인 정보와 같은 중요한 기능이 있는 경우 반복적인 맞춤형 PIN이나 비밀번호 입력을 요구하지 않습니다.
기기에서 원활하고 즉각적으로 작동하여 편의성을 유지하고, 오프라인으로 작동하며, 민감한 생체 인식 데이터를 보호하기 위해 안전한 하드웨어 엔클레이브에 의존합니다. 애초에 사용자 신원을 설정하기 위한 초기 원격 인증(예: 패스키 또는 비밀번호)의 필요성을 대체할 수는 없지만, 후속 진행 중인 세션을 관리하고 보호하는 데 매우 뛰어납니다.
이식성 부족 및 새 기기에서의 재등록 필요성과 같은 한계는 향상된 편의성과 강력한 기기 수준 보안을 위해 감수하는 절충안입니다. 궁극적으로 로컬 생체 인식은 신뢰가 초기에 설정된 후 앱 세션에서 지속적인 신뢰를 보장하는 강력하고 사용자 친화적인 방법으로 기능합니다.
패스키는 비밀번호와 같은 공유 비밀을 비대칭 암호화 자격 증명으로 대체하여 인증의 본질을 바꿉니다. 이미 인증된 사용자를 로컬에서만 확인하는 로컬 생체 인식과 달리, 패스키는 원격 서비스에 사용자를 식별하는 기본 방법으로 사용됩니다. 이는 사용자와 기기가 애플리케이션의 백엔드에 초기에 알려지지 않은 시나리오에서도 안전하고 피싱에 강한 로그인 경험을 보장합니다.
패스키 이전에는 원격 서비스와 신뢰를 구축하는 일반적인 접근 방식이 사용자와 서버 모두가 아는 공유 비밀인 비밀번호를 포함했습니다. 비밀번호는 구현이 간단하지만 피싱, 크리덴셜 스터핑, 비밀번호 재사용과 같은 위협에 취약합니다.
패스키는 암호화 키 쌍을 사용하여 이러한 문제를 해결합니다. 즉, 사용자 기기에 안전하게 저장된 개인 키와 서비스에 등록된 해당 공개 키입니다. 로그인 시도가 발생하면 서비스는 사용자의 개인 키로만 해결할 수 있는 챌린지를 보냅니다. 이를 통해 공격자가 데이터를 가로채거나 사용자를 속여 자격 증명을 공개하도록 유도하더라도 무단 액세스를 얻을 수 없습니다.
패스키는 비대칭 암호화를 사용합니다:
이는 네이티브 앱 외에도 피싱이 큰 문제인 웹사이트가 사용되는 시스템에서 특히 중요합니다. 모바일 기기에서 생성된 패스키는 교차 기기 인증을 통해 데스크톱 컴퓨터의 웹사이트에서도 사용할 수 있습니다.
패스키의 핵심 장점 중 하나는 사용자 기기 간의 원활한 이식성입니다. 최신 운영 체제는 iCloud Keychain, Google 비밀번호 관리자와 같은 보안 클라우드 스토리지를 통해 패스키를 동기화할 수 있어, 사용자가 앱을 처음 설치할 때 재등록하거나 비밀번호를 기억할 필요 없이 여러 기기에서 로그인할 수 있습니다. 또한 패스키는 마찰을 유발하지 않으면서 2단계 인증과 같은 보호를 제공하기 위해 두 번째 요소가 필요한 시나리오에서도 사용할 수 있습니다. 이러한 시너지는 사용자가 어떤 기기를 선택하든 빠르고 안전한 로그인을 가능하게 하여, 안전한 인증이 보편적으로 접근 가능하고 유지하기 쉬운 생태계를 강화합니다.
패스키는 알려지지 않은 사용자를 원격 서비스에 인증하는 강력하고 피싱에 강한 방법을 나타냅니다. 비대칭 암호화를 활용하고 공유 비밀에서 기기 상주 개인 키로 전환함으로써, 비밀번호 기반 시스템을 괴롭혔던 많은 약점을 제거합니다. 패스키는 강력한 보안, 글로벌 이식성 및 하드웨어 보안 구성 요소와의 직접적인 통합을 결합합니다. 결과적으로, 패스키는 사용자 신원을 설정하는 강력한 기반 역할을 하며, 이는 로컬 생체 인식만으로는 제공할 수 없는 것입니다. 네이티브 앱의 맥락에서 패스키는 안전한 세션을 만드는 중요한 첫 단계이며, 그 후에 로컬 생체 인식을 사용하여 빠르고 편리한 사용자 액세스를 유지할 수 있습니다.
네이티브 앱의 인증에 관해서는 패스키와 로컬 생체 인식이 중요하지만 다른 역할을 합니다. 둘 다 사용자 경험과 보안을 향상시키지만, 근본적으로 다른 문제를 해결합니다:
이러한 차이점을 이해하는 것은 안전하고 사용자 친화적인 강력한 인증 흐름을 만들려는 개발자에게 매우 중요합니다.
패스키와 로컬 생체 인식의 차이점과 상호 보완적인 역할을 더 잘 이해하기 위해, 아래 표는 목적, 사용 사례, 보안 및 이식성을 포함한 다양한 차원에서 주요 특성을 비교합니다. 이 비교는 이러한 기술들이 보안과 사용자 편의성을 모두 향상시키기 위해 함께 작동하면서 근본적으로 다른 문제를 어떻게 해결하는지 보여줍니다.
측면 | 패스키 | 로컬 생체 인식 |
---|---|---|
단계 | 앱 설치 후 재로그인 세션 타임아웃 | 앱이 설치되고 로그인된 상태 |
핵심 목적 | 알려지지 않은 사용자 인증(초기 로그인) | 현재 활성 사용자(이미 인증됨)가 기기/앱의 정당한 소유자인지 확인 |
보호 대상 | 사용자 계정 접근 | 로그인된 앱 접근 |
사용 사례 | 첫 로그인이나 재설치 후, 서비스와의 신뢰 구축, 교차 플랫폼 및 교차 기기 로그인 활성화에 이상적 | 기기 소유자가 기기의 소유자인지 재확인하고, 비밀번호/패스키를 다시 입력하지 않고 앱을 빠르게 잠금 해제하는 데 이상적 |
인증 모델 | 원격 인증: 백엔드 시스템에 대해 신원 확인 | 로컬 확인: 기기에 안전하게 저장된 생체 인식 데이터를 확인하며, 원격 서버에 접속하지 않음 |
MFA | 예 + 피싱 저항성 | 아니요 |
네이티브 생체 인식 | 예 (예: Face ID, Touch ID, Android 생체 인식) | 예 (예: Face ID, Touch ID, Android 생체 인식) |
범위 및 이식성 | 보안 클라우드 키 동기화 덕분에 교차 기기, 교차 플랫폼, 교차 앱 사용성(네이티브 앱 + 웹) | 기기 특정, 비전송성: 새 기기에서 생체 인식 템플릿을 다시 등록해야 함 플랫폼 간에 쉽게 이동할 수 없음 |
데이터 저장 및 보안 | 개인 키는 Secure Enclave에 저장됨 공개 키는 서버 측에 저장됨 공유 비밀 전송 없음 피싱에 강함 | 생체 인식 템플릿은 기기의 보안 하드웨어 엔클레이브에 저장됨 절대 기기를 떠나지 않음 기기의 하드웨어로 보호됨 |
인터넷 요구 사항 | 원격 서비스로 인증하고 키를 등록하려면 인터넷 연결 필요 | 인터넷 연결 필요 없음; 확인은 전적으로 로컬에서 이루어지므로 오프라인에서도 유용하며 애플리케이션에 오프라인 사용 사례가 있는 경우에도 유용함 |
백업 및 복구 | 키는 클라우드 동기화(예: iCloud Keychain, Google 비밀번호 관리자)를 통해 백업 및 복원할 수 있어 기기를 분실하거나 교체했을 때 쉽게 복구 가능 | 생체 인식을 위한 내장 백업 메커니즘 없음; 기기가 고장 나면 사용자는 새 기기에서 생체 인식 데이터를 다시 등록해야 함 |
웹사이트 및 앱과의 통합 | 네이티브 앱과 웹사이트 모두에 사용 가능. 패스키는 자격 증명을 노출하지 않고 사용자를 인증하여 로그인 흐름을 단순화하고 전반적인 보안을 강화함 | 로컬에 설치된 기기 및 앱으로 제한됨. |
개발자 구현 | 웹 표준(WebAuthn, FIDO2) 및 네이티브 플랫폼 API를 사용하여 통합 백엔드는 공개 키와 챌린지를 처리해야 함. | 생체 인식 프롬프트를 위해 플랫폼 SDK(iOS, Android) 활용 특별한 백엔드 처리 필요 없음. |
사용자 경험 | 초기 설정 후 사용자는 새 기기에서도 이메일이나 비밀번호를 기억할 필요 없이 빠르게 로그인 가능 마찰이 줄어든 간소화된 온보딩 | 사용자가 이미 인증한 후 앱에 즉각적이고 비밀번호 없는 재접근 제공. |
표는 핵심적인 차이점을 강조하지만, 패스키와 로컬 생체 인식이 경쟁 기술이 아니라 상호 보완적이라는 점을 인식하는 것이 중요합니다. 이 둘은 함께 계층화된 인증 경험을 제공합니다:
패스키와 로컬 생체 인식을 결합함으로써 개발자는 안전하고 원활하며 사용자 친화적인 인증 흐름을 제공할 수 있습니다.
패스키와 로컬 생체 인식을 결합함으로써 개발자는 다음과 같은 강력한 인증 흐름을 만들 수 있습니다:
이러한 시너지는 앱이 강력한 인증과 원활한 편의성을 모두 제공할 수 있도록 보장하며, 이는 현대 사용자의 기대를 충족시키는 성공적인 조합입니다.
실제 사례와 조합이 어떻게 작동하는지 더 잘 이해하기 위해, 두 가지 다른 구현을 살펴보겠습니다. 하나는 패스키만 활용하는 것이고 다른 하나는 결합된 접근 방식을 사용하는 것입니다.
Kayak 앱은 사용자 인증을 위한 패스키 구현을 보여줍니다. 패스키는 로그인 프로세스에 원활하게 통합되어 사용자가 이메일 주소나 비밀번호를 기억할 필요 없이 인증할 수 있는 옵션을 제공합니다. 인증 화면에서 볼 수 있듯이 사용자는 직접 패스키를 선택하여 로그인할 수 있습니다. 이 접근 방식은 인지 부하를 줄이고 비밀번호 관련 마찰을 제거하여 사용자 경험을 크게 단순화합니다.
패스키를 통해 인증되면 사용자는 재인증 없이 앱에 무제한으로 액세스할 수 있습니다. 이 디자인은 주로 예약 내역과 여정을 관리하는 여행 앱인 Kayak에 특히 적합하며, 이는 매우 민감하거나 중요한 데이터로 간주되지 않습니다.
Kayak 접근 방식의 주요 특징:
이 구현은 패스키가 비밀번호의 필요성을 없애면서 인증 프로세스를 어떻게 간소화하여 사용자에게 원활한 경험을 제공할 수 있는지 보여줍니다. 그러나 앱 내에서 더 민감하거나 중요한 작업이 수행되는 시나리오에서는 로컬 생체 인식과 같은 추가 보안 계층이 필요할 수 있습니다. GitHub가 사용성을 저해하지 않으면서 보안을 보장하기 위해 패스키와 생체 인식을 어떻게 활용하는지 살펴보겠습니다.
GitHub는 보안 로그인을 위한 패스키 통합과 로그인 상태에서 앱 콘텐츠를 보호하기 위한 로컬 생체 인식의 균형을 맞춥니다. 패스키는 빠르고 피싱에 강한 로그인 옵션으로 제공되며, 이는 GitHub의 다중 인증(MFA) 요구 사항을 고려할 때 특히 중요합니다. 이를 통해 사용자는 비밀번호나 일회용 패스코드를 관리할 필요가 없어 원활하고 안전한 로그인 경험을 제공합니다. 하지만 이 글의 목적을 위해 그들의 패스키 구현은 살펴보지 않겠습니다.
로컬 생체 인식을 통한 GitHub의 추가 보안 계층: GitHub는 풀 리퀘스트 병합과 같은 민감한 작업도 제공하기 때문에, 사용자가 필요하다고 느낄 경우 로컬 생체 인식 보호를 활성화할 수 있도록 합니다. 이 예에서는 iOS에서 Face ID를 사용하여 앱을 잠그고, 기기 소유자만 GitHub 앱에 액세스하거나 실행할 수 있도록 보장합니다. 앱은 생체 인식을 활성화하기 위해 운영 체제로부터 필요한 권한을 명시적으로 요청하고 구성 가능한 간격(예: 즉시 또는 정의된 시간 초과 후)을 제공합니다.
GitHub 접근 방식의 주요 특징:
이러한 예들은 패스키와 로컬 생체 인식이 어떻게 다양한 앱의 요구에 맞게 조정되어 사용자 편의성과 적절한 보안 조치의 균형을 맞출 수 있는지 보여줍니다.
아래는 로컬 생체 인식과 패스키가 구현될 수 있는 일반적인 시나리오에 맞춘 네 가지 권장 사항입니다. 권장 사항은 개발자, 제품 관리자 및 의사 결정자가 자신의 상황에 가장 적합한 접근 방식을 신속하게 식별할 수 있도록 구성되었습니다. 요약 표가 이어지며, 각 권장 사항을 주어진 시나리오에 쉽게 매핑할 수 있습니다:
위의 권장 사항은 다양한 일반적인 시나리오를 다루지만, 로컬 생체 인식, 패스키 또는 둘 다를 구현하는 선택이 달라질 수 있는 수많은 다른 상황이 있습니다. 모든 애플리케이션에는 고유한 보안, 사용성 및 규정 준수 요구 사항이 있으며, 개발자, 제품 관리자 및 비즈니스 리더는 접근 방식을 결정하기 전에 이러한 요소를 철저히 평가하는 것이 중요합니다. 특정 사용 사례, 규제 요구 사항 및 사용자 기대를 신중하게 고려함으로써 사용자와 데이터를 보호할 뿐만 아니라 오늘날 고객이 기대하는 원활하고 사용자 친화적인 경험을 제공하는 인증 전략을 수립할 수 있습니다.
우리가 살펴본 바와 같이, 로컬 생체 인식과 패스키는 현대 인증 전략에서 근본적으로 다르지만 상호 보완적인 역할을 합니다. 로컬 생체 인식은 사용자의 고유한 특성을 활용하여 신속한 기기 내 확인을 통해 지속적인 세션 확인을 단순화하는 반면, 패스키는 원격 서비스와의 안전하고 피싱에 강한 신뢰 관계를 구축합니다. 이러한 방법을 신중하게 결합함으로써 개발자는 원활하고 매우 안전한 사용자 경험을 만들어 다양하고 까다로운 디지털 환경의 요구를 효과적으로 충족시킬 수 있습니다. 서론의 질문으로 돌아가 보겠습니다:
패스키와 로컬 생체 인식의 뚜렷하면서도 상호 이익이 되는 역할을 인식함으로써, 개발자와 의사 결정자는 보안, 편의성 및 사용자 만족도의 균형을 맞추는 포괄적인 인증 접근 방식을 구현할 수 있습니다. 그렇게 함으로써 애플리케이션은 위협에 더 탄력적으로 대처하고, 탐색하기 쉬워지며, 진화하는 사용자 및 규제 요구 사항에 더 잘 적응할 수 있게 되어 궁극적으로 원활하고 신뢰할 수 있는 디지털 환경을 제공하게 됩니다.
Enjoyed this read?
🤝 Join our Passkeys Community
Share passkeys implementation tips and get support to free the world from passwords.
🚀 Subscribe to Substack
Get the latest news, strategies, and insights about passkeys sent straight to your inbox.
Related Articles
Table of Contents