개인공부용

출처 : 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) 과정

▶ 서명할 때 (개인키 필요)

  1. 메시지 M 해시 → h
  2. 랜덤 값 k 생성 (아주 중요!)
  3. 타원곡선 연산
  4. 서명 결과 (r, s) 생성
 
Signature = (r, s)

📌 중요

  • k가 재사용되면 → 개인키 유출
  • 그래서 HSM / TRNG / PUF 기반 k 생성이 중요

3️⃣ ECDSA 검증(Verify) 과정

▶ 검증할 때 (공개키만 필요)

  1. 메시지 해시
  2. 서명 (r, s)
  3. 공개키 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

+ Recent posts