pile·
보안·twilio-engTwilio Engineering·

패스키 101: 정의·작동 원리·구현

패스키(Passkeys)의 기술 기초인 WebAuthn/CTAP 표준과 공개키 암호화 원리를 설명하고, 등록·인증 두 가지 흐름을 API 수준에서 구체적으로 다룬다. FIDO Alliance와 W3C가 공동 정의한 표준 위에서 패스키가 어떻게 피싱·자격증명 스터핑을 근본적으로 차단하는지 분석한다.

핵심 포인트
  • 패스키는 W3C WebAuthn + FIDO Alliance CTAP 표준 기반 공개키 인증, Apple·Google 패스워드 매니저와 동기화
  • 등록 시 navigator.credentials.create, 인증 시 navigator.credentials.get API 사용
  • 사이트별 고유 키 쌍 생성 → 자격증명 스터핑 원천 차단
  • 개인키는 기기 하드웨어 보안 모듈에만 저장, 서버엔 공개키만 전달 → 서버 해킹 시 피해 없음
  • 비밀번호 대비 로그인 속도 최대 40% 빠르고 피싱 저항성 내장
상세 정리
  • 표준 기반: W3C(WebAuthn)와 FIDO Alliance(CTAP)가 공동 정의. Apple iCloud Keychain·Google Password Manager가 크로스 디바이스 동기화를 지원해 기기 분실 시에도 복구 가능.
  • 공개키 구조: 등록 시 기기에서 공개키/개인키 쌍 생성. 공개키는 서버에 저장, 개인키는 기기 하드웨어 보안 모듈 내부에서 외부로 탈출 불가.
  • 등록 흐름: 서버가 챌린지(난수) 발급 → navigator.credentials.create 호출 → 생체인식/PIN 으로 인증기 잠금 해제 → 공개키 자격증명 생성 → 서버로 전송.
  • 인증 흐름: 서버가 새 챌린지 발급 → navigator.credentials.get 으로 패스키 조회 → 개인키로 챌린지에 서명(어설션 생성) → 서버가 공개키로 서명 검증.
  • 피싱 저항: 패스키 자격증명이 등록 도메인에 바인딩 — 위조 사이트에서 navigator.credentials.get 요청 시 도메인 불일치로 인증 거부됨.
  • 재사용 불가: 사이트마다 별도 키 쌍 생성 — 한 사이트 공개키 유출이 다른 사이트 계정에 영향 없음.
  • 크로스 디바이스: iCloud Keychain·Google Password Manager 동기화로 기기 교체·분실 시에도 계정 복구 가능. 별도 인증 앱 불필요.
  • 사용성: 생체인식 또는 PIN 으로 비밀번호 입력보다 최대 40% 빠른 로그인. 사이트마다 비밀번호 기억 불필요.
  • 현재 제한: 패스키 미지원 구형 기기 사용자 위해 이메일 매직링크·TOTP 대체 채널 병행 필요. 구현 복잡성과 문서 부족이 현재 주요 채택 장벽으로 지목.
왜 읽나패스키 구현을 처음 검토하는 웹 개발자가 WebAuthn API 흐름과 보안 원리를 개념부터 API 레벨까지 빠르게 파악할 수 있다.
twilio-eng
Twilio Engineering 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 보안·gitlab-engGitLab Blog·

    Serena MCP 에이전트의 치명적 원격 코드 실행 취약점 분석

    GitLab 보안팀이 AI 코딩 에이전트 Serena(월 PyPI 다운로드 13.6만 건)에서 치명적 원격 코드 실행 취약점을 발견했다. Jinja2 비샌드박스 환경과 신뢰 모델의 미검사 경로가 결합해 개발자가 악의적 저장소를 열기만 해도 코드가 실행된다. serena-agent 1.7.0에서 SandboxedEnvironment 교체로 수정 완료됐다.

    요약 이어보기
    #mcp#security#rce+2