Cryptology Academy · 강의

비밀번호 없는 인증: WebAuthn과 FIDO2

인증의 미래로 주목받는 W3C WebAuthn 표준과 FIDO2 패스키를 살펴봅니다.

레슨 4/413개 단계

비밀번호 없는 인증: WebAuthn과 FIDO2은(는) CoddyKit의 무료 Cryptology Academy 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cryptology Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cryptology Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

FIDO2 아키텍처

FIDO2는 W3C 웹 인증 명세(WebAuthn)와 FIDO 연합의 클라이언트-인증자 프로토콜 2(CTAP2)를 결합한 포괄적인 용어입니다. 이 둘은 신뢰 당사자의 출처에 결합된 공개 키 암호화를 사용하는 완전한 비밀번호 없는 인증 시스템을 정의합니다.

인증자 유형

FIDO2는 두 가지 인증자 범주를 지원합니다. 플랫폼 인증자는 기기에 내장되어 있습니다. 예를 들어 애플 기기의 Touch ID와 Face ID, Windows의 Windows Hello가 있습니다. 이동형 인증자는 외부 하드웨어 토큰으로, YubiKey, Google Titan Key, Feitian 키 등이 있습니다. 모두 공개 키 암호화를 사용하며 인증자 증명 정보를 생성합니다.

등록: 자격 증명 생성

WebAuthn 등록 중에 인증자는 신뢰 당사자를 위한 새로운 비대칭 키 쌍을 생성합니다. 공개 키는 서버로 전송되어 저장됩니다. 비밀 키는 인증자를 절대 벗어나지 않습니다. 인증자 증명 정보는 인증자의 유형과 키가 인증자 하드웨어 내부에서 생성되었음을 입증합니다.

인증: 자격 증명 어설션

WebAuthn 인증 중에 서버는 클라이언트로 챌린지를 보냅니다. 인증자는 저장된 비밀 키를 사용하여 신뢰 당사자 ID 및 클라이언트 데이터와 함께 챌린지에 서명합니다. 서버는 저장된 공개 키로 서명을 검증합니다. 어떤 시점에도 공유 비밀값이 전송되지 않습니다.

출처 결합으로 피싱 방지

WebAuthn 어설션의 신뢰 당사자 ID는 요청 페이지의 출처(도메인)에 암호학적으로 결합됩니다. 인증자는 등록된 출처와 다른 출처에 대한 어설션 서명을 거부합니다. 따라서 WebAuthn은 구조적으로 피싱에 강합니다. 가짜 피싱 사이트는 인증을 완료할 수 없습니다.

상주 키와 진정한 비밀번호 없는 인증

검색 가능한 자격 증명(이전에는 상주 키라고 불림)은 인증자 자체에 저장되며 신뢰 당사자 ID로 색인됩니다. 이를 통해 진정한 비밀번호 없는 흐름이 가능합니다. 사용자는 인증자를 제시하고, 기기에 저장된 자격 증명에서 자신의 계정을 선택한 다음, 사용자 이름이나 비밀번호를 입력하지 않고 인증합니다.

사용자 검증과 사용자 존재 비교

WebAuthn은 사용자 검증(UV)과 사용자 존재(UP)를 구분합니다. 사용자 존재는 사용자가 인증자를 만지거나 누르기만 하면 됩니다. 사용자 검증에는 PIN 또는 생체 인식 확인이 추가로 필요하며, 특정 사용자가 실제로 존재함을 입증합니다. 보안 수준이 높은 애플리케이션에서는 인증에 UV를 요구해야 합니다.

CTAP2 프로토콜

CTAP2는 USB, NFC 또는 BLE를 통해 클라이언트(브라우저 또는 OS)와 외부 이동형 인증자 사이에서 사용되는 프로토콜을 정의합니다. 자격 증명 생성, 어설션 생성 및 인증자 관리에 필요한 명령을 지정합니다. CTAP2.1에는 자격 증명 관리와 항상 UV 정책 같은 기능이 추가되었습니다.

패스키: 동기화된 자격 증명

패스키는 플랫폼 공급업체의 암호화된 클라우드를 통해 사용자의 기기 간에 동기화되는 검색 가능한 WebAuthn 자격 증명입니다(애플의 iCloud 키체인, Google Password Manager, Windows Hello for Business 등). 패스키는 여러 기기에서 사용할 수 있는 비밀번호 없는 인증을 제공하여, 보안과 사용자가 비밀번호에서 기대하는 편리함을 함께 제공합니다.

패스키 사용자 경험 흐름

일반적인 패스키 인증 흐름은 다음과 같습니다. 사용자가 웹사이트를 방문하고 "패스키로 로그인"을 클릭합니다. 브라우저가 해당 사이트에서 사용할 수 있는 패스키를 표시합니다. 사용자는 생체 인식(Face ID, Touch ID, Windows Hello)으로 인증합니다. 브라우저가 챌린지에 서명하고 어설션을 전송합니다. 비밀번호를 입력하지 않으며 전체 흐름이 몇 초 안에 완료됩니다.

WebAuthn과 기존 인증 비교

기존 비밀번호는 피싱될 수 있고, 재사용되며, 데이터베이스 침해로 해독될 수 있습니다. OTP 코드(TOTP)는 실시간으로 피싱될 수 있습니다. SMS 코드는 SIM 교체 공격에 취약하고 피싱될 수 있습니다. WebAuthn/패스키는 출처 결합을 통해 피싱에 강하고, 훔칠 서버 측 비밀이 없으며, 사이트마다 고유하고, 하드웨어로 보호되는 비밀 키를 사용합니다. WebAuthn은 오늘날 널리 사용되는 인증 방식 중 가장 강력한 보안을 제공합니다.

WebAuthn과 비밀번호 비교 확인

비밀번호나 TOTP 코드와 달리 WebAuthn을 근본적으로 피싱 공격에 강하게 만드는 특성은 무엇입니까?

강의 요약: FIDO2와 WebAuthn

FIDO2는 WebAuthn(W3C)과 CTAP2(FIDO 연합)를 결합하여 피싱에 강한 비밀번호 없는 인증을 제공합니다. 플랫폼 인증자(Touch ID, Face ID)와 이동형 인증자(YubiKey)는 신뢰 당사자의 출처에 결합된 공개 키 암호화를 사용합니다. 패스키는 기기 간 동기화를 추가로 제공합니다. WebAuthn은 오늘날 널리 사용할 수 있는 인증 보안 중 가장 강력한 수준을 제공합니다.

무료로 시작

AI 튜터와 함께 Cryptology Academy을(를) 배우세요 — 무료

브라우저에서 실제 코드를 작성하고 실행하며, 24/7 AI 튜터로부터 즉각적인 도움을 받고, 웹이나 앱에서 중단한 부분부터 계속 학습하세요.

코스
67
레슨
261

자주 묻는 질문

“비밀번호 없는 인증: WebAuthn과 FIDO2” 강의는 무료인가요?

네 — “비밀번호 없는 인증: WebAuthn과 FIDO2” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cryptology Academy 강의 전체를 잠금 해제할 수 있습니다. Cryptology Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“비밀번호 없는 인증: WebAuthn과 FIDO2”에서 뭘 배우나요?

인증의 미래로 주목받는 W3C WebAuthn 표준과 FIDO2 패스키를 살펴봅니다. 브라우저에서 직접 실행하는 실습 코드로 Cryptology Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Cryptology Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Cryptology Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.

“비밀번호 없는 인증: WebAuthn과 FIDO2” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Cryptology Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Cryptology Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 비밀번호 인증의 근본적인 문제
  2. SRP: 보안 원격 비밀번호 프로토콜
  3. PAKE 프로토콜과 그 특성
  4. 비밀번호 없는 인증: WebAuthn과 FIDO2
← Cryptology Academy(으)로 돌아가기