질문:
중앙 집중식 네트워크에서 데이터는 단일 소스를 통해서만 액세스할 수 있는 경우가 많기 때문에 데이터의 단일 복사본을 구성하는 데 많은 작업이 필요하지 않으며 시스템을 신뢰할 수밖에 없습니다.
그러나 여러 노드가 있는 분산형 네트워크에서는 데이터를 효율적으로 구성하는 것이 중요합니다. 데이터를 분산하는 블록체인에서 문제는 먼저 데이터에 효율적으로 액세스하고 두 번째로 모든 노드에서 데이터의 정확한 복사본을 확인하고 배포하는 것입니다.
분산형 웹 기반 시스템에서 데이터를 공유하고 검증하기 위해 Merkle 트리를 구현합니다.
분산형 웹 기반 시스템에서 데이터를 공유하고 검증하기 위해 Merkle 트리를 구현합니다.
머클 트리는 다음을 통해 비용을 절감합니다.
공유 및 유효성 검사에 처리 능력이 필요하지 않은 방식으로 데이터를 구성합니다.
보조 제목
머클 트리의 개념
Bitcoin, Ethereum, IPFS, Git, Apache Cassandra 및 BitTorrent의 구현 중 공통 분모는 블록체인의 기본 구성 요소인 데이터 저장 기술인 Merkle 트리이며 대용량 데이터 구조를 효율적이고 안전하게 검증할 수 있습니다.
이미지 설명
이진 해시 트리
Merkle 트리는 내부 노드의 값이 리프 노드의 해시인 이진 해시 트리입니다. Merkle 트리의 루트에는 잎 노드 또는 자식 노드라고 하는 위의 다이어그램에서 H[A], H[B], H[C] 및 H[D]로 표시된 트랜잭션의 해시가 있습니다. 왼쪽 트리에서 H[A]와 H[B]는 각각 데이터 블록 L1과 L2의 해시 값이고, 오른쪽 트리에서 H[C]와 H[D]는 해시 값이다. 각각 L3 및 L4. 내부 노드 H[AB]는 리프 노드 H[A]와 H[B]의 연결이며, 유사하게 H[CD]는 H[C]와 H[D]의 연결입니다.
Merkle 트리의 각 잎/자식은 거래의 해시를 포함하고, 잎/자식의 "결합된 해시"("H[AB]" 및 "H[CD]" 중간 노드)를 포함하는 해시가 이어집니다. 위에서 설명한 것처럼 왼쪽 및 오른쪽 트리(H[ABCD])의 결합된 해시(Merkle 루트라고 함)를 포함하는 루트 노드.
흥미롭게도 특정 트랜잭션을 변경하려는 경우 중간 노드 해시가 변경되어 동시에 루트 해시가 변경됩니다. 즉 누군가 특정 트랜잭션을 변경하려고 하면 루트해시가 변경되고, 루트해시가 변경되면 이후에 존재하는 모든 블록의 해시가 서로 연결되어 있기 때문에 모두 변경된다는 뜻이다. 이렇게 하면 공격자가 데이터 조작을 시도할 수 없습니다. 그렇게 하려면 실제로 전체 체인의 트랜잭션 데이터를 변경해야 하기 때문에 이는 물론 불가능한 작업입니다. 이것이 Merkle 트리 설계의 아름다움으로 변조 방지 데이터 구조가 됩니다.
Merkle 트리는 데이터의 무결성을 담당하므로 검증 가능성을 확인하기 위해 전체 트랜잭션을 거칠 필요가 없습니다. 트리는 네트워크에서 트랜잭션의 유효성을 검사하는 데 사용할 수 있는 작은 데이터 청크로 나눌 수 있습니다. 이 개념을 Merkle Proof라고 하며 분산 시스템에서 매우 유용합니다. Merkle Proofs는 전체 트리의 모든 정보를 확인할 필요가 없으며, 그것이 사실인지 확인하기 위해 소량의 데이터를 확인하는 데 충분한 컴퓨팅 성능만 있으면 됩니다.
응용 분야
머클 트리는 동일한 데이터가 여러 위치에 존재해야 하는 분산 및 분산 시스템에서 데이터를 동기화하는 데 사용됩니다.
또한 데이터의 불일치를 확인하고 데이터베이스 사본에서 불일치를 감지하는 데 사용됩니다.
주요 이점
머클 트리는 검증을 위해 작은 정보 덩어리로 나눌 수 있기 때문에 데이터를 여러 부분으로 나눌 수 있어 대규모 확장성이 향상됩니다.
데이터의 무결성을 효과적으로 검증합니다.
어떤 양의 데이터도 Merkle 트리에 저장할 수 있으며 항상 맨 위에 있는 루트 해시로 끝납니다.
고급 데이터 및 일관성 검증을 제공합니다.
보조 제목
Merkle Trees가 Umbrella Network에 미치는 영향
Merkle 트리는 데이터를 효율적으로 구성하여 검증 프로세스에서 컴퓨팅 성능을 덜 사용하기 때문에 Umbrella Network는 이를 사용하여 보안 및 데이터 무결성을 희생하지 않고 저렴한 비용으로 수천 개의 실제 데이터 포인트를 온체인으로 가져옵니다.
Umbrella Network 시스템에서 Merkle 트리의 각 리프는 오라클의 데이터 포인트를 나타냅니다. Merkle 루트 해시는 Merkle 트리의 전체 트랜잭션 블록에 대한 고유 식별자입니다. "지분 증명" 합의는 트리의 모든 데이터를 나타내는 Merkle 루트 해시에서 수행되며 최종적으로 검증된 트랜잭션 집합은 트랜잭션 수수료 비용으로 온체인에 기록됩니다.
원본 링크:
원본 링크:
https://medium.com/umbrella-network/merkle-trees-an-introduction-to-concepts-and-components-5d2ff2b939e2
저자: 슈비 티와리
번역: 베인
