네이티브 앱과 패스키를 통한 QR 코드 로그인을 비교하여 안전하고 편리한 인증을 구현하세요. 우리 조직에 가장 적합한 방법을 알아봅니다.
Vincent
Created: August 8, 2025
Updated: August 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.
안전하고 편리한 인증 방법이 그 어느 때보다 중요해졌습니다. 우리가 매일 여러 기기에서 접속하는 온라인 서비스의 수가 증가하면서, 기존의 비밀번호 기반 시스템은 효율성이 떨어지고 번거로워지고 있습니다. 특히 네이티브 앱(iOS 또는 Android 앱)에 많은 사용자를 보유한 기업의 경우, 복잡한 비밀번호나 사용자 이름조차 입력할 필요 없이 사용자를 빠르고 쉽게 인증할 수 있는 QR 코드 기반 로그인에 대한 수요가 증가하고 있습니다.
이러한 맥락에서 다음과 같은 질문들이 생겨납니다.
Native QR Code Revolut Passkeys QR Code Apple
네이티브 앱 로그인에서 QR 코드를 사용하는 대표적인 예로는 WhatsApp, TikTok, Revolut과 같은 앱 우선 서비스들이 있습니다. 동시에 패스키 로그인을 지원하는 기업 목록도 빠르게 증가하고 있습니다.
이 글에서는 QR 코드 기반 인증 기술을 살펴보겠습니다. 2단계 인증 초기화에 사용되는 TOTP QR 코드(Authy나 Google Authenticator와 같은 추가 앱 사용)는 다루지 않을 것입니다.**
또한 다양한 QR 기반 인증 방법들을 비교하며 각각의 장점, 단점, 그리고 잠재적인 취약점을 검토할 것입니다.
이 글을 다 읽고 나면, QR 코드 기반 인증이 여러분의 보안 요구에 적합한 선택인지 더 명확하게 이해하게 될 것입니다.
QR 코드(Quick Response code)는 URL부터 일반 텍스트에 이르기까지 다양한 정보를 저장할 수 있는 2차원 바코드입니다. 원래 1994년 Toyota 그룹의 자회사인 Denso Wave에서 자동차 부품을 빠르고 효율적으로 추적하기 위해 개발되었습니다. 그 이후 QR 코드는 작은 정사각형 안에 많은 양의 데이터를 저장할 수 있는 능력 덕분에 다양한 산업 분야에서 자리를 잡게 되었습니다.
'QR 코드'라는 용어는 사실 Denso Wave의 상표이지만, 기술 자체는 널리 채택되어 상표에 의해 제한되지 않습니다. QR 코드는 흑백의 정사각형 패턴이 특징이며, 스마트폰이나 전용 스캔 장치(QR 스캐너)를 사용하여 스캔하면 인코딩된 정보에 접근할 수 있습니다.
QR 코드 지원은 수년 전부터 iOS 및 Android와 같은 모바일 운영 체제에 통합되었습니다. 두 플랫폼 모두 각자의 카메라 앱을 통해 QR 코드 스캔을 기본적으로 지원하므로, 사용자는 추가 소프트웨어 없이도 QR 코드와 쉽게 상호작용할 수 있습니다.
일반적으로 앱과 함께 사용되는 QR 코드는 사용자 지정 URL이나 앱 링크를 활용합니다. 이 링크들은 기기에 앱이 설치되어 있는 경우 앱이 자동으로 열리도록 할 수 있습니다. 만약 앱이 설치되어 있지 않다면, QR 코드는 사용자를 관련 앱 스토어로 안내하여 앱을 다운로드하고 설치하도록 유도함으로써 원활한 사용자 경험을 제공합니다. 다음은 Revolut이 앱 처리를 위해 등록한 경로 목록입니다.
https://revolut.com/.well-known/apple-app-site-association{ "applinks": { "apps": [], "details": [ { "appID": "QUZEZSEARC.com.revolut.revolut", "paths": ["/app/*"] }, { "appID": "QUZEZSEARC.com.revolut.test", "paths": ["/app/*"] }, { "appID": "QUZEZSEARC.com.revolut.retail.india", "paths": ["/app/*"] }, { "appID": "QUZEZSEARC.com.revolut.retail.india-debug", "paths": ["/app/*"] }, { "appID": "QUZEZSEARC.com.revolut.invest", "paths": ["/app/*"] }, { "appID": "QUZEZSEARC.com.revolut.invest-debug", "paths": ["/app/*"] }, { "appID": "QUZEZSEARC.com.revolut.revolutx", "paths": ["/app/*"] }, { "appID": "QUZEZSEARC.com.revolut.revolutx-debug", "paths": ["/app/*"] } ] } }
보시다시피 "/app/*"로 시작하는 모든 링크가 처리됩니다. 다음 섹션에서 예시를 볼 수 있습니다. QR 코드 내에 사용자 지정 URL과 앱 링크를 포함시킴으로써, 기업과 개발자는 사용자를 원하는 앱이나 서비스로 직접 안내하는 맞춤형 경험을 만들어 사용자 상호작용의 편의성과 보안을 모두 향상시킬 수 있습니다.
네이티브 앱을 통한 QR 코드 로그인은 모바일 기기의 카메라와 QR 코드에 내장된 특정 URL 간의 원활한 상호작용을 활용합니다. 이 과정은 일반적으로 사용자가 웹사이트나 다른 기기에 표시된 QR 코드를 스마트폰 카메라로 스캔하는 것으로 시작됩니다. QR 코드에는 iOS나 Android 기기에서 볼 수 있는 특정 네이티브 앱과 상호작용하도록 특별히 설계된 사용자 지정 URL이 포함되어 있습니다.
예를 들어, Revolut과 같은 서비스는 https://revolut.com/app/challenges/qr/e2d78521-d38a-4773-b1b8-27a902a36b4b와 같은 URL이 포함된 QR 코드를 사용할 수 있습니다. 이 URL은 사용자의 기기에 설치된 Revolut 앱에서 인식되도록 되어 있습니다.
QR 코드를 스캔하면 앱이 자동으로 이 링크를 포착하여 인식하고 해당 앱을 표시하며(위 예시에서 "Revolut"이 일치하는 앱으로 식별됨), 내부적으로 로그인 프로세스를 처리합니다. 이 상호작용은 iOS와 Android 모두에서 지원하는 딥 링킹 메커니즘에 의해 촉진되며, 이를 통해 특정 링크가 웹 브라우저가 아닌 설치된 앱 내에서 직접 열릴 수 있습니다.
만약 기기에 앱이 설치되어 있지 않다면, 운영 체제는 일반적으로 사용자를 적절한 앱 스토어(iOS 기기의 경우 Apple App Store, Android 기기의 경우 Google Play Store)로 리디렉션하여 앱을 설치하도록 안내합니다.
이를 통해 사용자가 처음에 앱을 설치하지 않았더라도 빠르고 쉽게 앱을 다운로드하여 설치 후 프로세스를 계속할 수 있습니다.
대부분의 경우, 이미 앱을 설치한 기존 고객은 원활한 로그인 과정을 경험하게 됩니다. QR 코드를 스캔하면 앱이 자동으로 열리고, 사용자 이름이나 비밀번호를 입력할 필요 없이 인증이 완료됩니다. 이 방법은 QR 코드 스캔 과정에서 민감한 정보가 전송되지 않으므로 사용자에게 주로 편의성을 제공합니다.
기술적으로는 휴대폰에 이미 로그인된 세션을 사용하여 데스크톱에서 새로운 세션을 인증하는 것입니다. 이를 수행하는 데에는 여러 가지 기술이 있습니다. 매우 정교한 버전은 WhatsApp 보안 백서의 클라이언트 등록 → 컴패니언 기기 등록 → QR 코드를 사용한 연결 부분에 게시되어 있습니다.
출처: https://engineering.fb.com/2021/07/14/security/whatsapp-multi-device/
WhatsApp은 2021년부터 다중 기기 접속과 종단 간 암호화를 지원하므로, 이 프로토콜은 주로 다중 기기 메시징 애플리케이션을 위해 설계되어 인증용으로는 완벽하게 적합하지 않습니다. 실제 인증 구현에 따라 안전한 핸드셰이크를 달성하기 위한 더 간단한 접근 방식들이 있습니다. 명심해야 할 점은 항상 사용자 세션과 기기와 서버 간의 통신 채널을 안전하게 처리해야 한다는 것입니다. QR 코드 인증 로그인 구현의 복잡성에 관계없이, 다음과 같은 몇 가지 핵심 보안 원칙을 항상 따라야 합니다.
이러한 모범 사례를 따르면, 기업은 사용자 친화적이면서도 안전한 QR 코드 기반 인증을 구현하여, 모바일 기기의 편의성을 활용하면서 사용자 데이터와 세션을 보호하기 위한 강력한 보안 조치를 유지할 수 있습니다.
이제 패스키를 통한 QR 코드 로그인에 대해 살펴보겠습니다.
패스키 기반 인증은 iOS 및 Android 생태계에 통합된 안전한 기기 간 인증 시스템을 제공하며 WebAuthn 표준에 명시되어 있습니다. 현재는 iOS 또는 Android에서 생성된 패스키만 QR 코드를 통한 기기 간 인증(CDA)에 사용할 수 있습니다.
패스키를 이용한 QR 코드 로그인이 어떻게 작동하는지 분석해 보겠습니다. 다음 차트는 다양한 단계의 개요를 보여줍니다.
iOS와 Android 모두에서 패스키는 플랫폼의 네이티브 authenticator(예: Face ID, Touch ID 또는 Android 생체 인식) 내에 저장됩니다. 이를 통해 사용자의 패스키는 최신 운영 체제 버전에서 동일한 Apple ID(iOS의 경우) 또는 Google 계정(Android의 경우)으로 로그인된 모든 기기에서 사용할 수 있습니다.
패스키 기반 기기 간 인증(CDA)을 구현할 때는 사용자에게 프로세스에 대한 명확한 안내를 제공하는 것이 중요합니다. 사용자에게 QR 코드가 표시될 것이며, 휴대폰을 사용하여 스캔해야 한다는 점을 알려야 합니다.
우리의 의견으로는, 사용자가 CDA에 활용할 수 있는 패스키를 가지고 있지 않은 경우 QR 코드를 표시하지 않는 것이 중요합니다. 또한, QR 코드를 표시하기 전에 사용자의 현재 운영 체제와 브라우저가 CDA를 지원하는지 확인해야 합니다.
이러한 시나리오를 효과적으로 관리하기 위해, 우리는 이 글에서 모든 중요한 사례를 설명했으므로 여기서는 자세히 다루지 않겠습니다. 우리의 패스키 인텔리전스 시스템은 이러한 상황을 자동으로 처리하도록 설계되어, 적절할 때만 QR 코드가 표시되도록 하고 사용자가 인증 과정을 원활하게 통과하도록 안내합니다. 이를 통해 다양한 기기와 운영 체제에서 높은 보안과 호환성을 유지하면서 원활한 경험을 보장합니다.
이 섹션에서는 이 글에서 논의한 두 가지 주요 QR 코드 기반 로그인 방법인 네이티브 앱을 통한 QR 코드 로그인과 패스키를 통한 QR 코드 로그인을 요약하겠습니다. 각 방법은 고유한 장점을 제공하며 보안, 사용자 경험, 구현 복잡성과 같은 요소에 따라 다양한 사용 사례에 적합합니다.
두 방법이 어떻게 비교되고 어떤 다른 특징을 가지고 있는지 살펴보겠습니다.
비교표: 네이티브 앱을 통한 QR 코드 로그인 vs. 패스키를 통한 QR 코드 로그인
특징 | 네이티브 앱을 통한 QR 코드 로그인 | 패스키를 통한 QR 코드 로그인 |
---|---|---|
앱 필요 여부 | 예, 네이티브 앱 필요 | 아니요 |
패스키 도입 필요 여부 | 아니요, 독립적 | 예, 사용자가 패스키를 옵트인해야 함 |
구현 노력 | 높음 | 높음 |
피싱 저항성 MFA | 아니요 | 예 (피싱 저항성 및 MFA) |
근접성 확인 | 아니요 | 예 |
사용자 경험 | 앱이 설치된 경우 원활함 | 패스키가 있는 경우 원활함 |
보안 수준 | 중간 | 매우 높음 |
우리는 비교표에서 인증 기반 특성에 초점을 맞췄으며, 3절에서 설명한 주변 요구 사항은 두 대안 모두에 적용됩니다. 패스키는 WebAuthn을 통해 피싱 저항성과 근접성 확인을 사용하므로 위치 기반 및 시간 기반 제한이 필요하지 않습니다.
서론에서 설명했듯이, 우리는 기기 간 인증의 가장 일반적인 두 가지 시나리오를 살펴보았습니다. 간단히 요약해 보겠습니다.
서론의 질문에 답해 보겠습니다.
어떤 솔루션이 기존 인증 아키텍처에 적합한지에 대한 현재 평가와 관계없이, 패스키는 인증의 미래에 대한 투자라는 점을 명심해야 합니다. 생태계가 명확하게 이 방향으로 움직이고 있기 때문입니다. 일찍부터 패스키를 수집하기 시작하는 것은 다양한 CDA 전략과 결합될 수 있습니다.
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