암호화 해시 함수

암호화를 위한 해시 함수는 3가지 속성을 만족해야 한다.

  1. H(x)->y일 때 y로 x 찾기 어려울 것

  2. H(x) = y, H(x') = y일 때 x가 주어지면 x' 찾기 어려울 것

  3. H(x) == H(y)가 되도록 계산하기 어려울 것

또한 Avalache Effect(입력값에서 조금 바꿨을 때 출력값은 랜덤에 가깝게 바뀌는 것)가 일어나야 함

 

 

블록체인 기본 구조

block ID = BLOCKCHAIN HEADER = PREV BLOCK, NONCE, MERKLE ROOT

PREV BLOCK : 이전 블록 주소

NONCE : 답

MERKLE ROOT : 거래 정보를 담고 있는 트리 형식의 저장 구조

 

MERKLE ROOT 구성도

 

블록체인 기본 구조

 

퀴즈 맞추기 위해 경쟁. 답 맞추면 NONCE에 답 넣고 블럭 생성 가능 -> 인센티브 획득 & 독점 가능

 

 

H(PREV BLOCK HASH || NONCE || MERKLE ROOT) < target

target 값이 작을수록 답 찾기가 어려우며, 이는 일을 했다는 증명시 사용된다.

 

 

HASH PUZZLE

3가지 조건을 만족해야 한다.

1. 계산이 어려워야 한다.

2. 파라미터로 난이도 조정이 가능해야 한다.

3. 정답 유무를 쉽게 체크할 수 있어야 한다.

 

 

BLOCK DIFFICULTY

초반에 참여한 사람은 쉽게, 후에 참여하는 사람은 어렵게 난이도 조정

- 점점 어려워져 나중에 아무도 채굴할 수 없게 된다면? 거래시 수수료 지불 -> 채굴하는 사람에게 수수료 전달

 

마이닝

반복문을 이용해 답 찾는 방식. HD 성능이 좋을 수록 더 빨리 찾을 수 있음

'블록체인' 카테고리의 다른 글

ETHEREUM, SMART CONTRACT  (0) 2020.09.29
블록체인 역사  (0) 2020.09.13
비트 코인이란?  (0) 2020.09.05