블록체인에서 블록의 정체성을 띄는 데이터를 가지고 있는 블록 헤더에는 이전 블록 헤드 해시와
채굴 경쟁과 직접적인 연관이 되는 부분, 머클 루트를 지니고 있습니다.
머클 트리란 무엇일까요?
머클 트리는 이진트리라는 이름으로도 잘 알려져 있으며 블록에 대한 거래내역의 요약본입니다.
이 구조를 통해 무수히 많은 거래들의 내용을 뭉쳐서 요약할 수 있어 효율성을 높일 수 있습니다.
하위 노드는 상위 노드의 대한 정보를 해시함수를 통해 해시 값으로 가지고 있기 때문에
루트 노드에서는 하나의 데이터로 연결고리를 표현할 수 있습니다.
따라서 거래량이 무수히 늘어난다고 하더라도 특정 거래에 대한 경로를 쉽게 찾을 수 있습니다.
예를 들어 전체 8개에 대한 거래를 트리형 구조를 아래와 같이 구성되어 있는 경우,
특정 내역(7번 거래)을 찾기 위해서는 단 3번의 경로만 거치면 됩니다.
만약 거래가 8개가 아닌 2048개의 거래라고 할지라도 단지 11개의 경로만 찾아서 알아낼 수가 있습니다.
따라서 거래 내역을 위조하거나 변조하려는 시도가 있어도 머클 트리의 경로를 통해 해시 값을 찾아보면
경로가 다른 것을 알 수 있기 때문에 보안에 탁월합니다.
블록체인은 거래가 체인 형태로 이어지기 때문에 데이터의 양이 지속적으로 늘어날 수밖에 없습니다.
전체 노드의 양이 어마어마하다고 하더라도 이 머클트리 구조로 요약된 내용만 가지고 있다면
쉽고 빠르게 특정 거래를 찾을 수 있게 됩니다.
반응형
최근댓글