Дерево Меркла-Патриции
Гибридная структура данных в Ethereum, объединяющая деревья Меркла и деревья Патриции.
Объединяет дерево Меркла (для проверки целостности) и дерево Патриции (для поиска ключей). Позволяет Ethereum хранить глобальное состояние (балансы, код, хранилище) защищенным от подделок способом. Каждый блок содержит корневой хеш.
graph LR
Center["Дерево Меркла-Патриции"]:::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;
🧒 Простыми словами
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.
📚 Источники
2. Ethereum