블록체인

[블록체인] 블록체인의 핵심 기술 - 보안 알고리즘

iemxl 2025. 4. 23. 13:34

해시 → 개인키로 서명 → 공개키로 검증(부인 방지/ 인증 가능)

 

RSA 공개키 / 개인키

* 공개키 : 누구나 공개키를 가질 수 있다. = 송금 가능

* 개인키 : 하지만 개인키는 본인(소유자)만이 갖고 있다. = 열람 가능

  • RSA 암호화 수식 

RSA 기반 암호화 수식

  • e (공개키) = 공개 지수, n = p * q (두 소수의 곱)
  • 복호화 수식 

RSA 기반 복호화 수식

  • d (개인키) = 비밀 지수, n = p * q
  • mod : 나머지 구하는 연산

 

생성과정

  1. p ≠ q 인 두 소수 p, q 설정
  2. n = p * q 인 n 생성
  3. 공개키 = (e, n),  개인키 = (d, n)
  4. φ(n) = (p-1)(q-1)
  5. 1<e<20 이면서, φ(n)과 서로소인 e를 선택
  6. (d*e) mod φ(n) = 1인 d 값 구함
  7. 공개키(e)와 개인키(d)를 모두 구할 수 있음

 

ECDSA (Elliptic Curve Digital Signature Algorithm)

  • 타원 곡선 기반의 전자서명 알고리즘 
  • 작은 키 크기로도 강력한 보안성 제공
  • 256bit ECDSA ≒ 3072bit RSA 보안 수준
  • 비트코인, 이더리움 = ECDSA256
  • 타원곡선 위의 연산을 기반으로 함(일방향성: 한쪽 계산은 쉬운데 역산은 어려움 → 안정성 확보)

ECDSA 타원 곡선