본문 바로가기
넓고 얕은 블록체인 지식

머클루트(Murkle Root)와 머클트리(Merkle Tree) 1분 요약 정리

by 황원용 2023. 5. 3.
728x90

머클루트(Murkle Root)

http://wiki.hash.kr/index.php/머클루트

  • 블록이 보유하고 있는 거래 내역들의 해시값을 가장 가까운 거래내역끼리 쌍을 지어 해시화하고 쌍을 지을 수 없을 때까지 이 과정을 반복했을 때 얻게 되는 값
  • 머클해시라고도 함

 

 

머클루트의 생성 과정

  • 최초 데이터를 SHA256 형태의 해시값으로 변환한다.
  • 가장 가까운 노드 두 개를 한 쌍으로 묶어 합친 후 해시값으로 변환한다.
  • 계속해서 해시값으로 변환하여 마지막 하나가 남을 때까지 이 과정을 반복한다.

 

 

머클트리(Murkle Tree)

  • 머클루트를 구하기까지 반복하게 되는 과정에서 위의 그림과 같이 토너먼트 대진표처럼 모양이 만들어지는데 이를 머클트리라고 한다.
  • 이 구조를 이용하면 거래량이 기하급수적으로 늘어나더라도 특정 거래를 찾는 경로는 단순하다는 이점이 있다.
  • 블록에 있는 수많은 거래기록(데이터)는 모두 해싱하여 머클루트와 이어지게 된다. 만약 누군가 기록된 거래 내역을 바꾸면 변경된 머클루트의 해시값을 통해 블록 내 데이터 위변조가 이뤄진 것을 알 수 있다.
    • 해시값은 데이터가 변화되면 완전히 다른 데이터가 되고, 모든 데이터를 해시로 엮었기 때문에 최종 하나의 해시값인 머클트리의 해시값이 변경되기 때문이다.
  • 거래의 건수가 증가하더라도 경로를 찾는 경우의 수는 log₂N으로 늘어나기 때문이다.
  • 머클트리를 이용하면 블록에 담긴 거래 내역 데이터를 쉽게 검증하고, 필요한 정보를 쉽게 검색할 수 있다.

 

 

 

 

참고

https://velog.io/@hb707/블록체인-기초-1-블록-머클루트

 

 

 

 

728x90