타원곡선 디지털서명 알고리즘 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 아이디(ID)으로 기록되고, 다른 장점도 있습니다.

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
11번째 줄: 11번째 줄:
  
 
==활용==
 
==활용==
대표적으로 [[비트코인]]과 [[이더리움]]에서 타원곡선 디지털서명 알고리즘을 사용한다. 이때 사용되는 타원곡선의 매개변수는 secp256k1으로 [[SEC]](Serticom Research)에 정의되어 있다. secp256k1은 비트코인이 인기를 끈 뒤, 급격히 사용되었으며 구현이 충분히 최적화되면 타곡선보다 30% 이상 속도가 빨라지는 경우가 많다. 정의된 것들은 이러하다.
+
대표적으로 [[비트코인]]과 [[이더리움]]에서 타원곡선 디지털서명 알고리즘을 사용한다. 이때 사용되는 타원곡선의 매개변수는 [[secp256k1]]으로 [[SEC]](Serticom Research)에 정의되어 있다. [[secp256k1]]은 비트코인이 인기를 끈 뒤, 급격히 사용되었으며 구현이 충분히 최적화되면 타곡선보다 30% 이상 속도가 빨라지는 경우가 많다. 정의된 것들은 이러하다.
  
 
  a = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
 
  a = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
53번째 줄: 53번째 줄:
 
  publick key는 공개 키이자 복구 키로 이더리움에서는 서명값이 아닌 정수 27 또는 28을 사용한다.
 
  publick key는 공개 키이자 복구 키로 이더리움에서는 서명값이 아닌 정수 27 또는 28을 사용한다.
  
:계산해낸 p의 x 좌표값과 서명 r의 값이 같다면 송신자의 서명이 맞다는 의미로 확인이 끝난다.<ref>그래비티Grabity, 〈[https://blog.naver.com/grabityio/221497780327 타원곡선 암호과 이더리움 전자서명 ( feat. 우주를 줄게 )]〉, 《네이버 블로그》, 2019-03-26</ref><ref>김훈일, 〈[https://brunch.co.kr/@nujabes403/13 타원곡선과 블록체인]〉, 《네이버 brunch》, 2018-08-18</ref>
+
:계산해낸 p의 x 좌표값과 서명 r의 값이 같다면 송신자의 서명이 맞다는 의미로 확인이 끝난다. <ref>그래비티Grabity, 〈[https://blog.naver.com/grabityio/221497780327 타원곡선 암호과 이더리움 전자서명 ( feat. 우주를 줄게 )]〉, 《네이버 블로그》, 2019-03-26</ref> <ref>김훈일, 〈[https://brunch.co.kr/@nujabes403/13 타원곡선과 블록체인]〉, 《네이버 brunch》, 2018-08-18</ref>
  
 
* '''난수생성기와 'K'값의 중요성'''
 
* '''난수생성기와 'K'값의 중요성'''
  
:타원곡선암호는 개인 키의 비트 수가 적기 때문에 [[난수 생성기]]의 난이도가 낮다면 개인 키를 예측할 수 있는 확률이 증가한다. 또한 비트코인 거래 시 [[암호화]]되지 않은 난수 생성기를 사용해 같은 'K'값으로 디지털서명을 한다면, 그것은 곧 (R, S) 중 R 값이 동일하다는 의미가 되며 그럴 경우 타인이 비트코인 지갑의 개인 키를 알아낼 수 있기 때문에 제대로 된 난수 'K'값을 만드는 것은 몹시 중요하다.<ref> snifikino,〈[https://www.instructables.com/id/Understanding-how-ECDSA-protects-your-data/ Understanding How ECDSA Protects Your Data]〉, 《instructables》</ref>
+
:타원곡선암호는 개인 키의 비트 수가 적기 때문에 [[난수 생성기]]의 난이도가 낮다면 개인 키를 예측할 수 있는 확률이 증가한다. 또한 비트코인 거래 시 [[암호화]]되지 않은 난수 생성기를 사용해 같은 'K'값으로 디지털서명을 한다면, 그것은 곧 (R, S) 중 R 값이 동일하다는 의미가 되며 그럴 경우 타인이 비트코인 지갑의 개인 키를 알아낼 수 있기 때문에 제대로 된 난수 'K'값을 만드는 것은 몹시 중요하다. <ref> snifikino,〈[https://www.instructables.com/id/Understanding-how-ECDSA-protects-your-data/ Understanding How ECDSA Protects Your Data]〉, 《instructables》</ref>
  
 
==규격==
 
==규격==

해시넷에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 해시넷:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 | 편집 도움말 (새 창에서 열림)