개인공부용
출처 : ChatGPT
🔐 ECDSA 한 줄 정의
ECDSA (Elliptic Curve Digital Signature Algorithm)
👉 공개키 암호 기반 전자서명 알고리즘
👉 “이 메시지를 누가 만들었는지” + “중간에 바뀌지 않았는지” 증명
🔍 MAC(CMAC/HMAC)과 가장 큰 차이
구분CMAC / HMAC ECDSA
| 키 구조 | 대칭키 (서로 같은 키) | 비대칭키 (개인키/공개키) |
| 목적 | 무결성 + 공유자 인증 | 서명자 증명 (부인 방지) |
| 제3자 검증 | ❌ 불가 | ✅ 가능 |
| 키 노출 영향 | 매우 큼 | 개인키만 보호하면 OK |
| 대표 사용처 | 내부 통신 | 펌웨어 서명, 인증서 |
📌 핵심 차이 한 줄
MAC은 “우리끼리 확인”, ECDSA는 “누가 했는지 증명”
1️⃣ ECDSA가 쓰는 수학적 기반



▶ ECC (타원곡선 암호)
- 수식:
y² = x³ + ax + b - 핵심 연산:
점 곱(Point Multiplication)
Private Key (d) ──► Public Key (Q = d·G)
- 🔑 개인키 d → 절대 외부 노출 ❌
- 🔓 공개키 Q → 누구나 배포 가능
2️⃣ ECDSA 서명(Sign) 과정
▶ 서명할 때 (개인키 필요)
- 메시지 M 해시 → h
- 랜덤 값 k 생성 (아주 중요!)
- 타원곡선 연산
- 서명 결과 (r, s) 생성
Signature = (r, s)
📌 중요
- k가 재사용되면 → 개인키 유출
- 그래서 HSM / TRNG / PUF 기반 k 생성이 중요
3️⃣ ECDSA 검증(Verify) 과정
▶ 검증할 때 (공개키만 필요)
- 메시지 해시
- 서명 (r, s)
- 공개키 Q로 수학적 검증
✔️ 서명이 맞으면
→ 이 개인키 소유자가 만든 게 맞다
4️⃣ 왜 ECDSA가 중요한가?
✅ 부인 방지 (Non-repudiation)
- 서명자는
❌ “내가 안 했음”
⭕ 불가능
✅ 제3자 검증
- 서버, 사용자, 법원도 검증 가능
5️⃣ 실무에서 ECDSA가 쓰이는 곳



분야사용 목적
| Secure Boot | 펌웨어 진위 검증 |
| OTA Update | 위조 펌웨어 차단 |
| TLS/HTTPS | 서버 신원 증명 |
| 인증서 | CA 서명 |
| 블록체인 | 트랜잭션 서명 |
🔁 ECDSA vs RSA vs MAC
구분ECDSARSACMAC/HMAC
| 키 구조 | 비대칭 | 비대칭 | 대칭 |
| 키 길이 | 짧음 (256bit) | 김 (2048bit↑) | 짧음 |
| 성능 | 빠름 | 느림 | 매우 빠름 |
| 서명 | ⭕ | ⭕ | ❌ |
| 무결성 | ⭕ | ⭕ | ⭕ |
📌 요즘 트렌드
RSA → ECDSA / EdDSA
'C.S. > Security' 카테고리의 다른 글
| LDAP (Lightweight Directory Access Protocol) (0) | 2026.01.13 |
|---|---|
| ECDSA & EdDSA (0) | 2026.01.08 |
| HMAC & CMAC (Message Authentication Code) (0) | 2026.01.08 |
| PUF 세부 특징 (0) | 2026.01.08 |
| PUF 분류 (0) | 2026.01.08 |