비밀번호 vs 패스키 vs 인증키 vs 암호키 vs Access키
비밀번호, 패스키, 인증키, 암호키 그리고 Access키의 개념이 자꾸 혼동되는 분들에게 도움이 되고자 간단하게 정리해 봅니다.
| 구분 | 비밀번호 | Passkey | 인증키 | 암호키 | Access Key |
|---|---|---|---|---|---|
| 목적 | 사용자 식별/인증 | 비밀번호 없는 인증 | API 권한 증명 | 데이터 보호 | 클라우드 접근 |
| 대상 | 사람 | 사람 (기기) | 서버/애플리케이션 | 데이터 | 시스템 인프라 |
| 기반 기술 | 지식 기반 | 공개키 암호화 | 토큰 | 수학적 알고리즘 | 자격증명 쌍 |
| 털리면 | ‘계정’이 뚫립니다. | ‘특정 사이트/기기 간 인증’만 뚫립니다. | ‘서비스 간 연동’이 뚫립니다. | ‘데이터 자체’가 노출됩니다. | ‘전체 인프라’가 뚫립니다. |
- 비밀번호 (Password)
- 기능: 사용자가 본인임을 증명하는 가장 기본적인 지식 기반 인증 수단입니다.
- 목적: 계정의 소유주를 확인하여 시스템에 대한 최초 접근 권한을 부여합니다.
- 특징: 사용자가 기억할 수 있어야 하므로 인간 친화적인 문자열(영문, 숫자, 특수문자 조합)로 구성됩니다.
- 사례: OS 로그인, 서비스 웹사이트 접속, 은행 계좌 비밀번호.
- 패스키 (Passkey)
- 기능: 비밀번호 없이 공개키 암호화 기반으로 인증을 수행합니다.
- 목적: 비밀번호 유출로 인한 계정 탈취를 방지하고 사용자 편의성를 향상시킵니다.
- 특징: 피싱 방지, 기기 내 안전한 저장, 생체 인증 연동, 서비스 간 독립성을 보장합니다.
- 사례: 구글, 애플, 마이크로소프트, GitHub 등의 서비스 로그인
- 인증키 (Auth Key / API Key / Token)
- 기능: 특정 시스템이 다른 시스템에 “나는 허가받은 서비스다”라고 증명하기 위한 티켓입니다.
- 목적: 사람의 개입 없이(Machine-to-Machine) 안전한 서비스 연동을 위해 사용합니다.
- 특징: 긴 무작위 문자열로 구성되며, 보안을 위해 주기적으로 교체하거나 유효기간(TTL)을 설정합니다.
- 사례: 지도 API 호출 시 사용하는 API Key, 웹 서비스의 JWT(JSON Web Token).
- 암호키 (Encryption Key)
- 기능: 평문 데이터를 암호문으로 바꾸거나, 반대로 복호화하는 수학적 연산의 핵심 값입니다.
- 목적: 데이터의 기밀성 보장. 키 없이는 데이터를 열어볼 수 없게 만듭니다.
- 특징: 데이터 자체를 보호하는 데 집중합니다. 대칭키(같은 키로 암/복호화)와 비대칭키(공개키/개인키 쌍)로 나뉩니다.
- 사례: DB 컬럼 암호화(AES 등), HTTPS 통신 시 사용되는 세션 키, 파일 암호화.
- Access Key
- 기능: 클라우드 서비스(AWS, GCP 등)나 인프라 관리 도구에 대해 관리자급 권한을 행사하기 위한 식별자입니다.
- 목적: 서버 설정 변경, 데이터 삭제, 인프라 확장 등 인프라 레벨의 제어권을 획득합니다.
- 특징: 일반적으로 Access Key ID와 Secret Access Key 쌍으로 존재합니다. 보안 사고 시 가장 피해가 큰 항목입니다.
- 사례: AWS CLI 실행, Terraform을 이용한 클라우드 리소스 생성.
