BTC
ETH
HTX
SOL
BNB
ดูตลาด
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Merkle Pollard คืออะไร?

星球君的朋友们
Odaily资深作者
บทความนี้มีประมาณ 2552 คำ การอ่านทั้งหมดใช้เวลาประมาณ 4 นาที
หลักการของ Merkle Tree เป็นส่วนหนึ่งของการสิ้นเชิง
สรุปโดย AI
หลักการของ Merkle Tree เป็นส่วนหนึ่งของการสิ้นเชิง

พิมพ์ซ้ำโดย Odaily โดยได้รับอนุญาตmediumพิมพ์ซ้ำโดย Odaily โดยได้รับอนุญาต

ชื่อเรื่องรอง

ฟังก์ชันแฮช

คำอธิบายภาพ

-กัญชา-

ต้นเมิร์กเคิล

ต้นเมิร์กเคิล

ต้นไม้ Merkle หมายถึงการรวมกันของค่าอินพุตหลายค่าและค่าแฮชเพื่อบีบอัดเป็นค่าความยาวคงที่

คำอธิบายภาพ

-ต้นแมร์เคิล-

ต้นไม้ Merkle ที่แสดงด้านบนมีค่าอินพุต 8 ค่าและแบ่งออกเป็น 4 ชั้น โหนดรูทคือ 0xd576...ffd9 ที่ส่วนท้ายสุด

คำอธิบายภาพ

-ผลกระทบของการเปลี่ยนแปลงต่อต้น Merkle ทั้งหมด (ดังที่แสดงในส่วนสีเทา)-

ชื่อเรื่องรอง

เส้นทาง Merkel

คำอธิบายภาพ

-"Peach"ชื่อเรื่องรอง

หลักฐานของ Merkel

คำอธิบายภาพ

-เมอร์เคล พรู๊ฟ-

การพิสูจน์ของ Merkle ต้องการสามสิ่ง: ค่าอินพุต (ทำเครื่องหมายด้วยสีแดง), แฮชของสาขาระดับกลาง (ทำเครื่องหมายด้วยสีเขียว) และโหนดรากของ Merkle (ทำเครื่องหมายด้วยสีน้ำเงิน) ชุดของค่าแฮชสาขาระดับกลางที่สอดคล้องกับค่าอินพุตแต่ละค่านั้นแตกต่างกัน

ระบบบล็อกเชนมักใช้การพิสูจน์ของ Merkle เพื่อพิสูจน์ว่ามีค่าอินพุตบางอย่างอยู่ในชุดข้อมูล ดังนั้นชุดข้อมูลทั้งหมดจึงไม่จำเป็นต้องเก็บไว้ในบล็อกเชน สมมติว่ามีรายการที่อนุญาตพิเศษในสัญญา Ethereum และมีเพียงบัญชีในรายการเท่านั้นที่ได้รับอนุญาตให้ซื้อ Ethereum หากข้อมูลของแต่ละบัญชีในรายการที่อนุญาตถูกจัดเก็บไว้ในบล็อกเชน จะต้องเสียค่าใช้จ่ายสูง ในกรณีนี้ เพียงสร้าง Merkle tree และจัดเก็บรูทโหนดบนบล็อกเชน

ตัวอย่างเช่น หากรูทโหนดถูกเก็บไว้ในสัญญาอัจฉริยะ สัญญาอัจฉริยะสามารถพิสูจน์ได้อย่างง่ายดายว่าบัญชีรวมอยู่ในรายการที่อนุญาต: บัญชีจำเป็นต้องระบุแฮชสาขาระดับกลาง (จัดทำโดยเจ้าของสัญญาผ่านวิธีการนอกเครือข่ายบางอย่าง ) ไปยังเจ้าของบัญชี) สัญญาอัจฉริยะจะทำการคำนวณค่าแฮชของบัญชีนี้และค่าแฮชของสาขาระดับกลางตามลำดับ หากผลลัพธ์สุดท้ายสอดคล้องกับโหนดรากของ Merkel แสดงว่าบัญชีนั้นอยู่ในรายการที่อนุญาตจริง

สังเกตความสัมพันธ์ระหว่างเส้นทาง Merkle และแฮชของการพิสูจน์ Merkle ในสองตัวเลขสุดท้าย ในระดับเดียวกันของแผนผังเดียวกัน ค่าแฮชของการพิสูจน์ Merkle มีความสัมพันธ์กับค่าแฮชของเส้นทาง Merkle จากนี้ จะเห็นได้ว่าการพิสูจน์ของ Merkle สามารถปรับรูปร่างเส้นทาง Merkle ของค่าอินพุตใหม่ได้ ซึ่งเป็นสาเหตุที่ผลลัพธ์สุดท้ายคือโหนดรากของ Merkle

จนถึงปัจจุบัน จะเห็นได้ว่าหลักฐาน Merkle มีลักษณะดังต่อไปนี้:


  • การจัดเก็บหลักฐาน Merkle บนเครือข่ายต้องการพื้นที่น้อยกว่าการเก็บค่าอินพุตโดยตรง

  • การจัดเก็บหลักฐานของ Merkle บนเครือข่ายแบบสาธารณะจะไม่เปิดเผยค่าอินพุตทั้งชุด

  • ชื่อเรื่องรอง

พิสูจน์ซ้ำ

ในตัวอย่างข้างต้น แต่ละบัญชีจำเป็นต้องส่งใบรับรองของ Merkle เพื่อตรวจสอบว่าอยู่ในรายการที่อนุญาตหรือไม่

นอกจากนี้ ต้นไม้ Merkle ยังสามารถใช้เป็นหลักฐานพิสูจน์ความน่าจะเป็นของความรู้ (มักเรียกว่า STARK) การพิสูจน์ความรู้แต่ละครั้งสามารถทำให้เรา (เช่น "ผู้ยืนยัน ผู้ท้าชิง") มั่นใจมากขึ้น: ผู้สร้าง Merkle tree (เช่น "ผู้พิสูจน์" ) รู้ค่าองค์ประกอบทั้งหมด ในกรณีนี้ ผู้พิสูจน์มักจะสร้างการพิสูจน์หลายร้อยรายการโดยอิงตามต้นไม้ Merkle ที่มีค่าอินพุตหลายสิบหรือแม้แต่หลายร้อยรายการ การพิสูจน์เหล่านี้จะถูกส่งไปยังตัวตรวจสอบความถูกต้องพร้อมกับโหนดรากของ Merkle เพื่อตรวจสอบความถูกต้อง

คำอธิบายภาพ

-หลักฐานซ้ำของ Merkle Root เดียวกัน-

จะเห็นได้ว่ามีการส่ง Merkle root node ทั้งหมด 1 รายการและใบรับรอง 3 รายการ โดยเพิ่มค่าแฮชได้สูงสุด 10 ค่า: หนึ่งรายการสำหรับโหนดรูทและสามรายการสำหรับแต่ละใบรับรองที่เหลืออีกสามรายการ

คำอธิบายภาพ

-พิสูจน์ซ้ำของโหนด Merkle Root แบบขยาย-

ชื่อเรื่องรอง

ต้นไม้ Merkle ถูกตัด

คำอธิบายภาพ

- ลำดับที่ 1 การตัดทอน Merkel -

คำอธิบายภาพ

- ลำดับที่ 2 การตัดทอน Merkel -

คำอธิบายภาพ

-ข้อดีจากการตัดต้นไม้ Merkle ของคำสั่งต่างๆ-

ชื่อเรื่องรอง

ตัวอย่างการใช้งาน

https://github.com/wealdtech/go-merkletree/ ให้การตัดต้นไม้ Merkle ใช้งานในภาษา Go

ETH
ยินดีต้อนรับเข้าร่วมชุมชนทางการของ Odaily
กลุ่มสมาชิก:
https://t.me/Odaily_News
กลุ่มสนทนา:
https://t.me/Odaily_GoldenApe
บัญชีทางการ:
https://twitter.com/OdailyChina
สารบัญบทความ
อันดับบทความร้อน
Daily
Weekly
ดาวน์โหลดแอพ Odaily พลาเน็ตเดลี่
ให้คนบางกลุ่มเข้าใจ Web3.0 ก่อน
IOS
Android