비밀번호에서 휴대 가능한 증명으로: 2025 빌더를 위한 Web3 아이덴티티 가이드
대부분의 앱은 여전히 아이디, 비밀번호, 중앙 집중식 데이터베이스에 아이덴티티를 고정합니다. 이 모델은 취약(침해), 누출(데이터 재판매), 그리고 번거로움(끝없는 KYC 반복)이라는 문제를 안고 있습니다. 분산 식별자(DID), 검증 가능한 증명(VC), 그리고 어태스테이션을 중심으로 떠오르는 새로운 스택은 다른 미래를 제시합니다: 사용자는 자신에 대한 암호학적 증명을 휴대하고, 필요한 것만 공개합니다—그 이상도 이하도 아닙니다.
이 글은 현황을 정리하고 오늘 바로 적용할 수 있는 실용적인 청사진을 제공합니다.
변화: 계정에서 증명으로
이 새로운 아이덴티티 스택의 핵심은 두 가지 기본 W3C 표준 위에 구축됩니다. 이는 사용자 데이터를 다루는 방식을 근본적으로 바꿉니다.
- 분산 식별자(DIDs): 중앙 레지스트리(예: 도메인 네임 시스템)가 필요 없는 사용자 제어 식별자입니다. DID는 영구적인, 자체 소유 주소와 같습니다. DID는 공개키와 서비스 엔드포인트를 포함한 서명된 “DID 문서”로 해석되어 안전하고 분산된 인증을 가능하게 합니다.
v1.0표준은 2022년 7월 19일에 공식 W3C 권고안이 되었으며, 생태계에 중요한 이정표를 세웠습니다. - 검증 가능한 증명(VCs): “나이 18세 이상”, “X 대학 학위 보유”, “KYC 통과”와 같은 클레임을 변조 방지 디지털 형식으로 표현합니다. VC Data Model 2.0은 2025년 5월 15일에 W3C 권고안이 되어, 증명의 발행 및 검증 방식에 현대적인 기반을 마련했습니다.
개발자에게 어떤 변화가 있나요? 민감한 개인식별정보(PII)를 데이터베이스에 저장하는 대신, 사용자의 지갑이 제공하는 암호학적 증명을 검증합니다. 선택적 공개(selective disclosure)와 같은 강력한 프리미티브 덕분에, 필요한 특정 정보(예: 특정 국가 거주)만 요청하고 원본 문서는 보지 않을 수 있습니다.
기존 로그인 방식과의 접점
새로운 세계가 기존 로그인 경험을 포기하도록 요구하지는 않습니다. 오히려 보완합니다.
- 패스키 / WebAuthn: 피싱에 강한 인증 방식입니다. 패스키는 기기 또는 바이오메트릭(예: Face ID, 지문)과 결합된 FIDO 자격증명이며, 주요 브라우저와 운영체제에서 널리 지원됩니다. 앱이나 지갑에 비밀번호 없는 원활 한 로그인 경험을 제공합니다.
- Sign-In with Ethereum (SIWE / EIP-4361): 사용자가 블록체인 주소를 제어하고 이를 애플리케이션 세션에 연결함을 증명합니다. 간단한 nonce 기반 서명 메시지를 통해 작동하며, 전통적인 Web2 세션과 Web3 제어 사이의 깔끔한 다리를 만듭니다.
베스트 프랙티스는 두 가지를 함께 사용하는 것입니다: 패스키는 일상적인 로그인에, SIWE는 암호화폐와 연관된 흐름에 적용합니다.
증명 발행 및 검증을 위한 레일
증명을 유용하게 만들려면 표준화된 발행 및 제시 방법이 필요합니다. OpenID Foundation이 두 가지 핵심 프로토콜을 제공합니다.
- 발행: OpenID for Verifiable Credential Issuance (OID4VCI) – 발행자(정부 기관, KYC 제공자 등)로부터 사용자의 디지털 지갑으로 증명을 가져오는 OAuth 보호 API를 정의합니다. 다양한 증명 형식을 지원하도록 설계되었습니다.
- 제시: OpenID for Verifiable Presentations (OID4VP) – 애플리케이션이 “증명 요청”을 만들고 사용자의 지갑이 응답하는 방식을 표준화합니다. 기존 OAuth 리다이렉트나 최신 브라우저 API를 통해 동작합니다.
구현 시 마주하게 될 주요 증명 형식:
- W3C VC with Data Integrity Suites (JSON‑LD): 보통 BBS+ 암호와 결합돼 강력한 선택적 공개를 지원합니다.
- VC‑JOSE‑COSE 및 SD‑JWT VC (IETF): JWT와 CBOR 기반 생태계에 맞춰 설계됐으며, 역시 선택적 공개 기능을 갖추고 있습니다.
상호운용성은 빠르게 개선되고 있습니다. OpenID4VC High Assurance 프로파일은 기술 옵션을 좁혀 개발자가 벤더 간 통합을 더 쉽게 할 수 있게 돕습니다.
DID 메서드: 올바른 주소 체계 선택
DID는 단순히 식별자일 뿐이며, “DID 메서드”는 신뢰 근원을 정의합니다. 흔히 쓰이는 두 가지를 지원하는 것이 좋습니다.
- did:web: 도메인에 기반한 DID입니다. 배포가 매우 쉽고, 기존 웹 인프라를 신뢰 근원으로 활용하려는 기업, 발행자, 조직에 최적입니다.
- did:pkh: 블록체인 주소(예: 이더리움 주소)에서 직접 파생되는 DID입니다. 이미 암호화폐 지갑을 보유한 사용자와 온체인 자산을 연결할 때 유용합니다.
원칙: 최소 두 가지 메서드—did:web은 조직용, did:pkh는 개인 사용자용—를 지원하세요. 표준 DID resolver 라이브러리를 사용해 조회하고, 새로운 메서드를 추가하기 전 공식 레지스트리에서 보안·지속성·거버넌스를 검토합니다.