콘텐츠로 바로가기

Authentication Mechanisms

사람이나 사물이 누구인지 물리적으로 증명하는 다양한 인증 수단들과, 그 뒤에 숨겨진 수리적 검증 로직 및 하드웨어 보안 키의 역학을 다룹니다.

sys.entry
M

Me

hyunyoun's Blog

posts7 min read

1. Overview

인증 메커니즘(Authentication Mechanisms, AMN)은 "당신이 정말 당신인가?"라는 수리적 질문에 대해, 사용자가 가진 지식, 소유물, 혹은 신체적 특징을 통해 하드웨어가 납득할 수 있는 증거를 제시하는 '신원 확증 물리학'입니다.

학습자는 가장 원시적인 형태인 패스워드부터, 최근 하이엔드 하드웨어 보안 기술인 **FIDO2(Passkey)**까지의 물리적 진화 과정을 배웁니다. 특히, 단일 방어선이 뚫려도 시스템을 지켜내는 **다요소 인증(MFA)**의 결합 수순과, 생체 정보를 수리적 특징점으로 변환하여 물리적으로 안전하게 보관하는 법을 익깁니다. 이를 통해 서비스 진입점에서 가짜 사용자를 99.9% 확률로 수치 차단하는 하이엔드 신뢰 환경 역량을 확보합니다.

2. Scope & Boundaries

In-Scope

  • Knowledge Based: 패스워드, PIN, 질문 답변의 수리적 취약성 및 강화 방안
  • Possession Based: OTP, 하드웨어 보안 키(U2F), 스마트카드의 물리적 작동 원리
  • Inherence Based: 지문, 안면, 홍채 인식의 수리적 매칭 알고리즘 및 위조 방지
  • Multi-factor Authentication (MFA): 서로 다른 신원 입증 요소의 물리적 결합 수순
  • Passwordless Mechanics: 생체 정보를 기반으로 키 쌍(Public/Private)을 이용한 비대칭 인증

Out-of-Scope

  • 로그인 성공 후 어떤 데이터에 접근할지 결정하는 권한 부여(Authorization) (10-04-02 영역에서 분담)
  • 암호 키 자체의 생성 및 보관을 위한 하드웨어 HSM 상세 (10-01-04 DRI 영역에서 분담)

Boundaries

  • AMN vs. Authorization: AMN이 '문 앞에 선 사람의 신분증을 확인하는 일'이라면, Authorization(10-04-02)은 '신분증이 확인된 사람에게 어떤 방의 열쇠를 줄지 결정하는 일'로 구분합니다.

3. Counterexample

  • 단순히 "아이디/패스워드 입력받기"라 설명하는 것은 AMN 학습이 아닙니다. 왜 일반 SMS OTP가 'SIM Swapping'과 같은 물리적 공격에 수리적으로 취약할 수밖에 없는지 증명할 수 있어야 하며, 생체 인증 정보가 서버 하드웨어 DB에 원본 이미지 형태로 저장될 때 발생하는 '유출 시 영구적 신분 상실'의 물리적 대재양을 논증하지 못한다면 인증 메커니즘의 정수를 이해하지 못한 것입니다.

4. Prerequisites

  • Symmetric & Asymmetric Algorithms (Basic): 10-01-01의 공개키 기반 암호화 기초 이해가 필수입니다.
  • Hash Functions & Digital Signatures (Basic): 10-01-02의 해시 함수 및 디지털 서명 이해가 필수입니다.

5. Learning Map

  1. The Secret Word: 가장 오래된 물리적 약속인 패스워드의 한계와 수리적 보완책(Salt 등)을 배웁니다.
  2. Something You Have: 휴대폰이나 보안 키라는 물리적 실체를 신분증으로 활용하는 법을 익힙니다.
  3. The Uniqueness of Body: 나만이 가진 신체 물리 정보를 수치화하여 가장 강력한 열쇠로 바꿉니다.
  4. Transparent Trust: 사용자가 아무것도 입력하지 않아도 기기 보안(Passkey)만으로 로그인이 완료되는 하이엔드 무인증 시대를 엽니다.

6. Learning Topics

Basic

Core: 지식 기반 인증과 패스워드 거버넌스 (Knowledge Physics)

  • Why to Learn: 사용자가 기억하기 쉽고 해커가 맞히기 어려운 물리적 수준의 패스워드 정책을 수립하기 위해서입니다.
  • What to Learn:
    • Entropy vs Length: 패스워드 길이에 따른 수리적 조합 가짓수 분석
    • Brute-force & Dictionary Attacks: 무차별 대입의 물리적 소요 시간(tt) 연산
    • Password Polices: 복잡도 강제와 주기적 변경의 수치적 실효성 논란
  • How to Learn:
    • Hashcat을 사용하여 8자리 소문자 패스워드를 찾는 데 걸리는 하드웨어 연산 시간을 측정하는 실습
    • 대량 유출된 패스워드 리스트를 분석하여 사용자들이 갖는 물리적 선호 패턴(123456 등) 식별 훈련
  • Implement: 패스워드의 엔트로피를 계산하여 점수를 매기는 StrengthMeter

Core: 소유 기반 인증과 다요소 인증 (Multi-factor Physics)

  • Why to Learn: 패스워드 하나가 털려도 물리적인 휴대폰이나 하드웨어 키 없이는 로그인을 원천 차단하기 위함입니다.
  • What to Learn:
    • TOTP (Time-based One Time Password): 시간 수치를 씨앗값(SeedSeed)으로 사용하는 해시 인증
    • Push-based Auth: 서버가 사용자의 하드웨어 앱에 직접 승인을 요청하는 물리 수순
    • Recovery Codes: 물리적 인증 장치를 분실했을 때를 대비한 수리적 비상구
  • How to Learn:
    • Google Authenticator의 QR 코드를 뜯어보고, 그 안의 시크릿 키가 매 30초마다 어떻게 수리적으로 변하는지 알고리즘 대조 실습
    • MFA를 해제하기 위한 '사회 공학적 공격'이 실제 기술 인증망을 어떻게 무력화하는지 시나리오 연구
  • Implement: 표준 RFC 6238을 구현하여 30초마다 번호를 생성하는 기초 OTPGenerator

Practical

Core: 생체 인증과 FIDO 표준 (Biometric Standards)

  • Why to Learn: 복사가 불가능한 나만의 하드웨어적 특징(지문, 눈)을 가장 안전한 수리 모델로 활용하기 위해서입니다.
  • What to Learn:
    • FAR (False Acceptance Rate): 남을 나로 오인할 확률의 수치적 관리
    • FRR (False Rejection Rate): 나를 거부할 확률과 사용자 UX의 물리적 충돌
    • FIDO2 / WebAuthn: 생체 정보를 서버에 보내지 않고 공개키 서명으로만 인증하는 표준 물리 로직
  • How to Learn:
    • 자신의 스마트폰 하드웨어가 지문 정보를 수리적 벡터값으로 변환한 뒤, 'Secure Enclave'에 어떻게 격리 보관하는지 아키텍처 실습
    • WebAuthn 라이브러리를 통해 브라우저에서 '패스키(Passkey)'를 생성하고 서버와 자격 증명을 교환하는 전문 분석
  • Implement: FIDO2 규격에 따라 등록(Registration)과 인증(Authentication) 흐름을 처리하는 가상 TrustNode

Advanced

Core: 위험 기반 인증 및 무마찰 사용자 경험 (Risk-based Trust)

  • Why to Learn: 매번 로그인을 요구하지 않으면서도, 평소와 다른 지역이나 수치 징후가 보일 때만 물리적으로 검문하기 위함입니다.
  • What to Learn:
    • Adaptive Authentication: IP, 기기지문(Fingerprinting), 시간 수치를 종합하여 리스크 점수화
    • Step-up Logic: 리스크가 특정 수치를 넘을 때만 추가 MFA를 물리적으로 강제하는 기제
    • Continuous Authentication: 로그인 후에도 마우스 움직임 등 행위 수치를 상시 분석하여 세션 유지
  • How to Learn:
    • 공격자가 훔친 쿠키로 '세션 하이재킹'을 시도할 때, 접속 기기 정보(UseragentUser agent)가 달라짐을 감지하여 차단하는 로직 설계 실습
    • 수조 건의 로그인 데이터에서 '봇 계정의 수리적 특징'을 추출하여 자동으로 차단 목록에 올리는 물리 엔진 연구
  • Implement: 다양한 신호(Signals)를 입력받아 리스크 등급(Low/Med/High)을 정하는 IntelligentGate

7. Terminology

Term (EN / ko, abbr) 1문장 정의 단계(기본/권장/실무/심화) 역할/맥락 관련 개념 유사/대비/함께 사용 오해 포인트 Evidence(Primary/Secondary/Industry) Flags(core)
MFA 두 가지 이상의 상이한 물리적 요소(알고 있는 것, 가진 것, 본인인 것)를 결합하여 신원을 확인하는 방법입니다. 기본 보안 강화 2FA / Factors OTP 단순 2단계 인증과 다름 P3:CyBOK core
FIDO2 비밀번호 대신 공개키 암호화와 하드웨어 보안 모듈을 이용하여 빠르고 안전하게 인증하는 기술 표준입니다. 실무 현대 표준 Passkey / WebAuthn Biometrics 생체 정보가 서버로 안 감 Industry core
TOTP 서버와 클라이언트의 시간을 수리적 변수로 사용하여 짧은 주기로 변화하는 일회용 비밀번호를 생성하는 방식입니다. 추천 소유 인증 HOTP / Seed Google Auth 시간 동기화(Time drift) 중요 Industry core
Passkey FIDO2 표준을 기반으로 사용자의 기기에 저장된 자격 증명을 통해 비밀번호 없이 로그인하는 물리적/수리적 실체입니다. 실무 차세대 인증 Passwordless / Sync Key 웹사이트마다 고유하게 생성됨 Industry core

8. References

Primary

Secondary

  • [User Authentication Principles and Practice] — The comprehensive academic guide.
  • [RFC 6238: TOTP: Time-Based One-Time Password Algorithm] — Technical standard.

Industry

9. Final Checklist

Primary

  • '패스워드' 방식이 물리 암호 보안 측면에서 다른 인증 요소보다 수리적으로 왜 가장 취약한지 설명 가능한가? (P3)
  • 'MFA' 구성 시 '동일 요소(예: 패스워드와 PIN)'를 두 번 쓰는 것이 보안 수치상 왜 의미가 없는지 기술할 수 있는 가? (P3)

Secondary

  • 'TOTP' 알고리즘에서 서버와 클라이언트의 '시간 오차(DriftDrift)'를 수리적으로 처리하는 윈도우 구간 기법을 소통 가능한가?
  • Passkey가 피싱(PhishingPhishing) 공격을 물리적으로 원천 차단할 수 있는 구조적 배경을 논증할 수 있는 가?

Industry

  • 실무 서비스에서 보안 강도(SecuritySecurity)와 사용자 편의성(UXUX)의 수치적 상충 관계를 정량적으로 제안할 수 있는 가? (SFIA)
  • Biometric Data의 법적 보호 규정(GDPR 등)을 준수하기 위해 해당 수치를 하드웨어 내부에서 어떻게 수리적으로 처리해야 하는지 분석할 수 있는 가?