Crypto

ECDSA란?

총알 2022. 11. 2. 12:49
728x90

ECDSA(Elliptic Curve Digital Signature Algorithm)란 타원곡선 디지털서명 알고리즘으로

타원곡선을 이용해 인증할 수 있는 암호화 방식이다.

비트코인과 이더리움에서도 ECDSA의 secp256k1커브방식(가장많이 사용하는 방식중 하나)을 채택하여 전자서명을 하고 있다.

 

특징으로는 기존 전자 서명에 비해 공개 키의 크기가 절반 수준이며 보안 수준은 4배정도의 동일한 안정성을 제공한다.

ECDSA의 비밀키 공유 방법은 아래와 같다.

보통 문서들은 앨리스와 밥이라는 이름을 활용하는데 나는 영희와 철수로 해야겠다...!

1. 영희와 철수는 개인키로 Pr1와 Pr2를 생성한다.

2. 타원곡선 연산을 통해해 계산된 결과값 R1, R2 값을 서로 교환한다.

3. 영희는 철수로부터 받은 R2에 개인키 Pr1을 타원곡선 연산해서 비밀키 S를 생성한다.

    (철수도 같은 방법으로 비밀키 S생성)

4. 따라서 별도의 키교환 없이 비밀키를 공유할 수 있다. 

 

추가로 무선 공인인증시스템은 한국인터넷진흥원(KISA)에서 정의한 sect163k1, c2pnb163v1, secp160r를 모두 구현해야 하며 커브는 아래와 같다.

o sect163k1 커브 (WTLS 3번 커브) sect163k1 : { iso(1) identified-organization(3) certicom(132) curve(0) 1}

o c2pnb163v1 커브 (WTLS 5번 커브) c2pnb163v1 : { iso(1) member-body(2) us(840) ANSI-X9-62(10045) curves(3) characteristicTwo(0) 1 }

o secp160r1 커브 (WTLS 7번 커브) secp160r1 : { iso(1) identified-organization(3) certicom(132) curve(0) 8 }

 

아래 정보는 한국인터넷진흥원(KISA)에서 참조하였다.

728x90

'Crypto' 카테고리의 다른 글

HASH에 관하여  (0) 2022.11.03
CCM(Counter with CBC-MAC) 과 GCM(Galois / Counter Mode)의 차이  (0) 2022.11.03
CBC와 ECB  (0) 2022.11.03
AES의 정의와 암호화 알고리즘 순서  (0) 2022.11.02
RSA란...?  (0) 2022.11.01