머클 패트리시아 트라이 (Merkle Patricia Trie)

머클 트리와 패트리시아 트라이를 결합한 이더리움의 하이브리드 데이터 구조입니다.

머클 트리(무결성 검증용)와 패트리시아 트라이(키 검색용)를 결합합니다. 이를 통해 이더리움은 전역 상태를 변조 방지 및 빠른 액세스가 가능한 방식으로 저장할 수 있습니다. 모든 블록 헤더에는 루트 해시가 포함됩니다.

        graph LR
  Center["머클 패트리시아 트라이 (Merkle Patricia Trie)"]:::main
  Rel_ethereum["ethereum"]:::related -.-> Center
  click Rel_ethereum "/terms/ethereum"
  Rel_merkle_tree["merkle-tree"]:::related -.-> Center
  click Rel_merkle_tree "/terms/merkle-tree"
  Rel_data_structure["data-structure"]:::related -.-> Center
  click Rel_data_structure "/terms/data-structure"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 5살도 이해할 수 있게 설명

Generated ELI5 content

🤓 Expert Deep Dive

Generated expert content

❓ 자주 묻는 질문

Why does Ethereum use this instead of a regular Merkle Tree?

Because Ethereum's state changes constantly, and a Patricia Trie is more efficient for updating and looking up specific keys.

Is this different from a Merkle Tree?

Yes, it's a hybrid. It adds the 'path' compression of Patricia Tries to standard Merkle Trees.

Where is it stored?

It is stored in Ethereum's LevelDB database, with the root hash included in every block header.

📚 출처