머클 트리
이더리움은 앞서 살펴본 것처럼 머클 트리를 사용하여 전체 어카운트 정보를 담고 있는 상태 (Root)와 트랜잭션(TxHash), 그리고 트랜잭션의 처리 결과 등을 알 수 있는 리시트(ReceiptHash)
의 값을 저장하고, 각 머클 루트를 Keccak256으로 암호 해싱한 후 이를 해당 블록 헤더에 포함한다.
머클 트리는 많은 양의 블록
체인 전체 데이터를 동기화하지 않고도 블록체인을 활용하게 해주는 중요한 수단이자 데이터
의 무결성을 유지할 수 있는 중요한 방법이다
머클 패트리샤트리(머클트리에 포인터를 줘서 찾기쉽게 하는느낌)
머클트리의 재계산을 막기위해 착안된 알고리즘
리프노드의 키값은 7이다 6아님 오타입니다
머클트리들의 깊이를 한정시킨다.
패트리샤트리가 머클루트를 고정시키는 숫자값을 줘서경로를 표시한다(색인)
경로는 rlp 인코딩 후 캐착256해시과정을통해 전체트리는 해시암호된상태가된다.
이전체트리의 해시값 =키 (색인한거 암호화)
키가 레벨 db에 저장되고 (암호화 한거 디비에 저장) 이키를통해 경로를찾을수있다.(헨젤과 그레텔)
이키를 이용해 마지막노드에 저장된경로값을찾는다.
'블록체인 > 코어 이더리움' 카테고리의 다른 글
코어이더리움8[블록전파와 포크] (0) | 2022.05.20 |
---|---|
[코어 이더리움7] 합의 계층 (0) | 2022.05.19 |
[코어 이더리움 6]가스비,전자서명,트랜잭션 처리과정 (0) | 2022.05.19 |
[코어 이더리움5]머클 상태 전이증명 (0) | 2022.05.13 |
[코어 이더리움 프로그래밍]어카운트끼리 통신하는 과정 (0) | 2022.05.06 |