프로토콜 데모
NIST P-256 (secp256r1)
4부작 중 1부 · 키 생성
DID Auth: 키쌍 생성
DID Auth 데모의 서버용과 클라이언트용 P-256 키쌍을 생성한다. 공개 데모 키만 쓴다.
프로토콜 설명용 예제이며 실서비스에서 사용하지 마십시오. 표시된 키는 공개 데모 키입니다.

개요 및 암호학적 배경
이 워크플로우는 4부작 DID Auth 챌린지-응답 프로토콜 해설의 1부입니다(키쌍 → 클라이언트 → 서버 → 종단 간 데모). 타원곡선 기반 분산 식별자(DID) 인증에서는 검증하는 쪽(서버)과 증명하는 쪽(클라이언트)이 모두 NIST P-256(secp256r1) 곡선의 장기 키쌍 또는 임시 키쌍을 가집니다.
이 그래프를 실행하면 브라우저의 CSPRNG로 서로 독립된 P-256 키쌍 두 개를 만듭니다. 각 당사자는 32바이트 개인 스칼라와 65바이트 비압축 SEC 1 공개키(0x04 || X || Y)를 받습니다.
파이프라인 배선 구조와 단계별 흐름
ECC Keypair Generator (Server, P-256)
──►
Workflow Output (Server & Client Keys)
◄──
ECC Keypair Generator (Client, P-256)
- 서버 키 생성(
Server Key Pair):curve = "p256"으로 설정합니다.Server Private Key(32 B)와Server Public Key(65 B)를 내보냅니다. - 클라이언트 키 생성(
Client Key Pair):curve = "p256"으로 설정합니다.Client Private Key(32 B)와Client Public Key(65 B)를 내보냅니다. - 출력 수집(
Workflow Output): 네 키를 이름 붙은 출력 포트로 노출하므로 확인하거나 DID Auth: 클라이언트, DID Auth: 서버 워크플로우에 복사해 쓸 수 있습니다.
노드 구성 및 설정
| 노드 | 역할과 주요 매개변수 | 개수 |
|---|---|---|
| ECC Keypair Generator | curve = "p256"으로 설정한 두 인스턴스(Server Key Pair, Client Key Pair) | 2 |
| Workflow Output | 생성한 개인키와 공개키 4개 수집 | 1 |
출력 및 검증
검증 출처: random key pairs: nothing deterministic to compare; the keys are checked by the did-auth-client and did-auth-server examples
키쌍은 매번 무작위로 생성되므로 비교할 고정 값이 없습니다. 이 키들은 DID Auth 클라이언트·서버 예제가 검증합니다.
출력
| 이름 | 타입 | Format & Length |
|---|---|---|
Server Private Key | bytes | 32-byte P-256 secret scalar (random per run) |
Server Public Key | bytes | 65-byte uncompressed SEC 1 point 0x04 || X || Y |
Client Private Key | bytes | 32-byte P-256 secret scalar (random per run) |
Client Public Key | bytes | 65-byte uncompressed SEC 1 point 0x04 || X || Y |