FIDO 기반 패스워드리스 인증과 WebAuthn 구조

FIDO 2.0의 WebAuthn·CTAP 구조, 인증 연산과 서명 데이터, 증명서 모델 및 플랫폼 적용 방식을 정리한다.

2026-08-14 · 최초 발행 2025-05-26

패스워드 의존도를 낮추기 위한 인증 표준

FIDO 2.0은 온라인 인증에서 패스워드 의존성을 줄이고 강력한 생체 인증을 표준화한 기술 프레임워크다. 기존 UAF(Universal Authentication Framework)와 U2F(Universal 2nd Factor)를 통합해 더 넓은 환경에서 쓸 수 있는 인증 메커니즘을 제공한다.

패스워드 기반 인증은 보안 취약점에 노출될 위험이 있다. 모바일뿐 아니라 PC와 여러 플랫폼에서 일관된 인증이 필요해졌고, 보안성을 유지하면서 사용 경험을 개선할 방식도 요구됐다.

브라우저와 인증장치를 잇는 구성

FIDO 2.0은 모바일뿐 아니라 PC를 포함한 온라인 환경에서 생체 인증을 공통으로 사용할 수 있게 하는 인증 표준 및 플랫폼 기술이다.

  • WebAuthn (Web Authentication): W3C 표준으로 채택된 웹 API
  • CTAP (Client to Authenticator Protocol): 클라이언트와 인증장치 사이의 통신 프로토콜
  • Authenticator: 생체정보와 인증 키를 안전하게 보관하는 하드웨어 또는 소프트웨어 모듈

기존에는 Authenticator와 ASM(Authenticator Specific Module)을 제조사가 별도로 제공했다. FIDO 2.0에서는 Google, Microsoft 등의 플랫폼 사업자가 OS와 브라우저에 빌트인 형태로 제공한다. FIDO Web API는 W3C 표준인 WebAuthn으로 정립돼 브라우저의 네이티브 지원 기반도 갖췄다.

사용자FIDO 클라이언트 브라우저 - WebAuthn APIOS 내장 인증 모듈외부 인증장치FIDO 서버서비스 제공자

등록과 로그인에서 호출되는 인증 연산

authenticatorMakeCredential은 사용자 등록을 수행하고, 이후 인증에 사용할 Credential(자격 증명)과 사용자 공개키·개인키 쌍을 만든다.

authenticatorGetAssertion은 등록 때 생성한 Credential을 이용해 인증 서명을 생성하고 사용자 신원을 검증한다.

authenticatorCancel은 진행 중인 등록 또는 인증·서명 연산을 취소한다. 타임아웃이나 사용자의 취소 요청을 처리할 때 사용한다.

인증장치브라우저서비스 제공자사용자인증장치브라우저서비스 제공자사용자서비스 등록 요청authenticatorMakeCredential 요청생체인증 요청생체정보 제공키 쌍 생성공개키 + 증명서 반환등록 정보 전송로그인 요청authenticatorGetAssertion 요청생체인증 요청생체정보 제공서명 반환인증 정보 전송

서명에 포함되는 데이터

인증장치는 authenticatorDataclientDataHash를 결합해 서명한다.

authenticatorData는 인증장치가 생성한다. 로컬 인증 여부와 인증장치 서명 횟수(카운터) 정보를 담아 재생 공격(Replay Attack) 방지에 사용된다.

clientDataHash는 FIDO 클라이언트가 만든다. 챌린지(Challenge) 값과 릴라잉 파티(Relying Party) 정보를 포함해 중간자 공격(Man-in-the-Middle) 방지에 쓰인다.

인증장치는 개인키로 두 데이터를 서명한 뒤 그 결과를 FIDO 클라이언트로 돌려준다. 클라이언트는 이를 서비스 제공자에게 전송해 인증을 완료한다.

신뢰성과 프라이버시를 다루는 증명서 모델

FIDO 2.0은 인증장치의 신뢰성을 검증하기 위한 증명서 모델을 제공한다.

  • Full Basic Attestation: 같은 모델의 인증장치가 공유하는 Attestation Key를 사용하며, 제조사별로 동일한 인증서를 사용한다. 예를 들어 동일 모델의 지문인식 장치는 같은 인증서를 공유한다.
  • Surrogate Basic Attestation: Credential을 인증장치 개인키로 직접 검증하는 자체 서명 방식이다. 별도 증명서가 없어 프라이버시는 높지만 신뢰성은 낮다.
  • Privacy CA: 인증장치마다 고유한 증명서를 생성하고 인증기관(CA)이 인증서를 발급한다. 신뢰성은 높지만 추적 가능성에 따른 프라이버시 이슈가 있다.
  • DAA(Direct Anonymous Attestation): DAA 발급자가 Credential을 발급하고 Blind 서명 기술을 사용한다. 인증장치 신원을 드러내지 않고 정당성을 증명해 높은 프라이버시와 신뢰성을 함께 확보한다.

플랫폼과 기업 인증 환경에서의 적용

Microsoft Windows Hello는 Windows 10 이상에서 FIDO 2.0 표준을 채택했다. 얼굴 인식, 지문 인식, PIN 로그인과 Azure AD 연동을 통한 기업 환경 인증 시스템을 지원한다.

Google 계정은 보안 키(Security Key)를 이용한 2단계 인증을 제공하며, Android 7.0 이상에서는 내장 FIDO 인증을 지원한다. Chrome 브라우저는 WebAuthn API를 네이티브로 지원한다.

국내 은행 앱에서는 FIDO 생체 인증을 도입해 공인인증서 대체 수단으로 활용하고, 간편 결제 시스템에 적용해 사용성을 개선한다. 기업 환경에서는 SSO(Single Sign-On) 시스템 연동, VPN 접속 인증 강화, 내부 시스템 접근 제어에 활용할 수 있다.

인증 수단을 운영할 때 남는 과제

공개키 암호화 기반이므로 피싱 공격에 강하고, 생체 인증으로 암호 입력을 줄일 수 있다. 생체정보가 장치를 떠나지 않으며 모바일, PC, IoT 등 다양한 환경을 지원한다. 표준화된 API를 통해 개발자는 일관된 방식으로 인증을 구현할 수 있다.

다만 생체인식이 실패했을 때 쓸 대체 인증 수단이 필요하다. 레거시 시스템과 연동하려면 추가 개발이 필요할 수 있고, 새로운 인증 방식에 대한 사용자 이해도 요구된다. 기기를 분실한 뒤 새 기기로 이전하는 과정에도 추가 인증 절차가 필요하다.

IoT 기기에서는 스마트홈과 스마트카 같은 환경의 인증 표준으로 확장될 수 있다. 새로운 생체인식 기술과 결합해 보안성을 강화하고, Zero Trust 보안 모델에서 지속적 인증(Continuous Authentication)의 기반 기술로 활용될 전망이다. 금융과 의료처럼 규제를 받는 산업에서는 컴플라이언스 요구사항을 충족하는 방향으로 발전할 수 있다.

FIDO 2.0은 단순한 인증 표준을 넘어 디지털 ID 생태계의 근간으로 발전하고 있으며, 패스워드 없는(Passwordless) 환경을 앞당기는 기술로 자리 잡고 있다.

FIDOWebAuthn생체인증패스워드리스인증 표준