Solana: สถาปัตยกรรมใหม่สำหรับบล็อกเชนประสิทธิภาพสูง
Abstract
บทความนี้นำเสนอสถาปัตยกรรมใหม่สำหรับบล็อกเชนที่มีประสิทธิภาพสูง Solana ใช้กลไกการบอกเวลาแบบใหม่ที่เรียกว่า Proof of History (PoH) ซึ่งเป็นข้อพิสูจน์ในการตรวจสอบลำดับและการผ่านของเวลาระหว่างเหตุการณ์ต่างๆ PoH ใช้เพื่อเข้ารหัสเวลาที่ผ่านไปอย่างไม่ไว้วางใจใน ledger สร้างบันทึกทางประวัติศาสตร์ที่พิสูจน์ว่ามีเหตุการณ์เกิดขึ้นในช่วงเวลาหนึ่งโดยเฉพาะ
นวัตกรรมที่สำคัญคือ PoH ช่วยให้โหนดในเครือข่ายสร้างลำดับเหตุการณ์ชั่วคราวโดยไม่จำเป็นต้องสื่อสารระหว่างกัน ด้วยการใช้ฟังก์ชันหน่วงเวลาที่ตรวจสอบได้ซึ่งนำมาใช้เป็นสายโซ่แฮชตามลำดับ ระบบจะสร้างนาฬิกาเข้ารหัสที่ให้วิธีการตรวจสอบการผ่านของเวลาระหว่างเหตุการณ์ สิ่งนี้ทำให้เครือข่ายสามารถประมวลผลธุรกรรมหลายพันรายการต่อวินาทีในขณะที่ยังคงการกระจายอำนาจและความปลอดภัยไว้
PoH ถูกรวมเข้ากับกลไกฉันทามติ Proof of Stake (PoS) การรวมกันนี้ทำให้เกิดสถาปัตยกรรมบล็อกเชนที่ได้รับการปรับให้เหมาะสมที่สุด โดยที่ validators สามารถตรวจสอบธุรกรรมแบบขนานและบรรลุฉันทามติได้อย่างมีประสิทธิภาพ ระบบได้รับการออกแบบให้ปรับขนาดตามกฎของมัวร์ โดยใช้ประโยชน์จากการเพิ่มประสิทธิภาพฮาร์ดแวร์เพื่อปรับปรุงปริมาณงานโดยไม่กระทบต่อการรับประกันความปลอดภัยของเครือข่ายแบบกระจายอำนาจ
Introduction
ความท้าทายพื้นฐานในระบบบล็อกเชน">บล็อกเชนคือการบรรลุปริมาณธุรกรรมที่สูงในขณะที่ยังคงรักษาการกระจายอำนาจและความปลอดภัยไว้ การใช้งานบล็อกเชนในปัจจุบันถูกจำกัดด้วยกลไกที่เป็นเอกฉันท์ ซึ่งจำเป็นต้องมีการสื่อสารที่กว้างขวางระหว่างโหนดเพื่อให้ตกลงเรื่องเวลาและการเรียงลำดับของเหตุการณ์ ค่าใช้จ่ายในการประสานงานนี้ทำให้เกิดปัญหาคอขวดที่ป้องกันไม่ให้บล็อกเชนที่มีอยู่ขยายขนาดเพื่อตอบสนองความต้องการของแอปพลิเคชันระดับโลก
ปัญหาหลักคือเวลา ในระบบแบบกระจาย โหนดไม่สามารถพึ่งพานาฬิกาภายนอกได้ เนื่องจากไม่สามารถเชื่อถือได้ว่าการประทับเวลาของโหนดอื่นนั้นแม่นยำ โปรโตคอลฉันทามติบล็อคเชนแบบดั้งเดิมจะแก้ปัญหานี้โดยให้โหนดสื่อสารอย่างกว้างขวางเพื่อตกลงกับสถานะปัจจุบันและลำดับของธุรกรรม ค่าใช้จ่ายในการสื่อสารนี้จำกัดปริมาณงานโดยพื้นฐาน เนื่องจากเครือข่ายสามารถประมวลผลธุรกรรมได้เร็วเท่ากับที่โหนดสามารถบรรลุความเห็นพ้องต้องกันในการสั่งซื้อเท่านั้น
Solana แนะนำ Proof of History เพื่อเป็นแนวทางแก้ไขปัญหาเรื่องเวลานี้ PoH จัดเตรียมวิธีการเข้ารหัสเพื่อพิสูจน์ว่าระยะเวลาหนึ่งผ่านไประหว่างเหตุการณ์ต่างๆ โดยไม่ต้องอาศัยการประทับเวลาจากผู้ที่อาจเป็นอันตราย ด้วยการสร้างบันทึกประวัติที่ตรวจสอบได้ PoH ช่วยให้โหนดสามารถประมวลผลธุรกรรมได้อย่างอิสระ ในขณะที่ยังคงสามารถพิสูจน์ลำดับของเหตุการณ์ที่เกิดขึ้นได้ ความก้าวหน้าครั้งนี้ทำให้เครือข่ายสามารถประมวลผลธุรกรรมแบบขนานและเพิ่มปริมาณงานได้อย่างมาก
ข้อมูลเชิงลึกที่สำคัญคือ ถ้าเราสามารถสร้างแหล่งที่มาของเวลาที่ไม่น่าไว้วางใจ เราก็สามารถขจัดปัญหาคอขวดของการประสานงานออกจากฉันทามติได้ ด้วย PoH ที่มีนาฬิกาเข้ารหัส validators สามารถประมวลผลธุรกรรมแบบขนาน และจำเป็นต้องสื่อสารเพื่อสรุปลำดับตามรูปแบบบัญญัติเท่านั้น การเปลี่ยนแปลงทางสถาปัตยกรรมนี้ช่วยให้ Solana บรรลุระดับประสิทธิภาพที่ก่อนหน้านี้คิดว่าเป็นไปไม่ได้ในบล็อกเชนแบบกระจายอำนาจ
Outline
เอกสารนี้จะอธิบายสถาปัตยกรรมทางเทคนิคของ Solana โดยเน้นไปที่วิธีที่ Proof of History ช่วยให้การดำเนินงานบล็อกเชน">บล็อกเชนมีประสิทธิภาพสูงได้อย่างไร ในขั้นแรกเอกสารจะอธิบายกลไก PoH เองว่า hash chain แบบต่อเนื่องสร้างการเรียงลำดับเหตุการณ์ชั่วคราวที่ตรวจสอบได้อย่างไร เราให้รายละเอียดเกี่ยวกับคุณสมบัติการเข้ารหัสที่ทำให้ PoH ปลอดภัย และสาธิตวิธีที่ validators สามารถตรวจสอบลำดับ PoH ได้อย่างมีประสิทธิภาพ
จากนั้น บทความนี้จะสำรวจว่า PoH ผสานรวมกับฉันทามติ Proof of Stake ได้อย่างไร เราอธิบาย Tower BFT ซึ่งเป็นอัลกอริทึม PoS ที่ออกแบบมาโดยเฉพาะเพื่อใช้ประโยชน์จากคุณสมบัติชั่วคราวของ PoH การผสานรวมช่วยให้ validators ลงคะแนนสถานะของ ledger ณ เวลาประทับ PoH ที่เฉพาะเจาะจง สร้างกลไกที่เป็นเอกฉันท์ที่ทั้งรวดเร็วและปลอดภัย นอกจากนี้เรายังอธิบายเงื่อนไขการตัดเฉือนที่ป้องกันพฤติกรรมที่เป็นอันตรายด้วย
ต่อไป เราจะนำเสนอการออกแบบเครือข่ายและโปรโตคอลการเผยแพร่ข้อมูลของ Solana โปรโตคอล Gulf Stream ช่วยให้สามารถส่งต่อธุรกรรมได้โดยไม่จำเป็นต้องใช้ mempool ช่วยให้ลูกค้าส่งธุรกรรมโดยตรงไปยังผู้นำที่กำลังจะมาถึง เราอธิบายวิธีการทำงานของการหมุนเวียนผู้นำ และวิธีที่เครือข่ายรักษาปริมาณงานที่สูง แม้ว่าผู้นำจะเปลี่ยนไปก็ตาม
สุดท้ายนี้ เราจะพูดถึงสถาปัตยกรรมระบบ รวมถึงหน่วยประมวลผลธุรกรรม (TPU), รันไทม์แบบขนาน Sealevel และ Proof of Replication สำหรับการตรวจสอบการจัดเก็บข้อมูล การคาดการณ์ประสิทธิภาพแสดงให้เห็นว่า Solana สามารถประมวลผลธุรกรรมได้มากกว่า 700,000 รายการต่อวินาทีบนเครือข่ายกิกะบิตมาตรฐาน โดยมีการปรับขนาดปริมาณงานเมื่อฮาร์ดแวร์ได้รับการปรับปรุง
Network Design
การออกแบบเครือข่ายของ Solana มีศูนย์กลางอยู่ที่ระบบผู้นำแบบหมุนเวียน โดยที่ validators ผลัดกันสร้างบล็อก ผู้นำมีหน้าที่รับผิดชอบในการจัดลำดับธุรกรรมขาเข้าลงในสตรีม PoH และเผยแพร่บล็อกผลลัพธ์ไปยังเครือข่าย ผู้นำจะถูกเลือกผ่านอัลกอริธึมแบบถ่วงน้ำหนักเดิมพัน และทราบกำหนดการหมุนเวียนล่วงหน้า ช่วยให้เครือข่ายเพิ่มประสิทธิภาพการส่งต่อธุรกรรมได้

โปรโตคอลกัลฟ์สตรีมช่วยลดความจำเป็นในการใช้ mempool แบบเดิม โดยช่วยให้ลูกค้าสามารถส่งต่อธุรกรรมโดยตรงไปยังผู้นำที่กำลังจะมาถึงได้ เมื่อลูกค้าส่งธุรกรรม มันจะถูกส่งต่อไปยังผู้นำที่คาดหวังตามกำหนดการหมุนเวียน หากผู้นำปัจจุบันไม่สามารถประมวลผลธุรกรรมได้ ก็จะส่งต่อไปยังผู้นำที่คาดหวังคนถัดไป การออกแบบนี้ช่วยลดเวลาแฝงในการยืนยัน และอนุญาตให้ validators ดำเนินธุรกรรมล่วงหน้า เพิ่มประสิทธิภาพปริมาณงานให้ดียิ่งขึ้น
การเผยแพร่ธุรกรรมใช้วิธีการแบบหลายชั้น ลูกค้าส่งธุรกรรมไปที่ validators ซึ่งส่งต่อไปยังผู้นำปัจจุบันหรือที่กำลังจะมาถึง ผู้นำจัดลำดับธุรกรรมลงในสตรีม PoH สร้างการเรียงลำดับทั้งหมด เมื่อจัดลำดับแล้ว ผู้นำจะส่งสตรีม PoH และข้อมูลธุรกรรมไปยัง validators ซึ่งจะตรวจสอบลำดับ PoH และดำเนินธุรกรรมแบบขนาน
การออกแบบเครือข่ายยังรวมถึงโปรโตคอลการแพร่กระจายบล็อกกังหันที่แบ่งบล็อกออกเป็นแพ็คเก็ตขนาดเล็กและกระจายไปทั่วเครือข่ายในโครงสร้างแบบต้นไม้ วิธีการนี้จะช่วยลดความต้องการแบนด์วิธสำหรับ validators แต่ละรายการให้เหลือน้อยที่สุด ในขณะเดียวกันก็รับประกันการแพร่กระจายของบล็อกอย่างรวดเร็ว เมื่อรวมกับความสามารถของ PoH ในการตรวจสอบลำดับของธุรกรรม สถาปัตยกรรมนี้ช่วยให้ Solana บรรลุปริมาณงานสูงโดยไม่ต้องเสียสละการกระจายอำนาจ
Proof of History
Proof of History เป็นฟังก์ชันหน่วงเวลาที่ตรวจสอบได้ซึ่งใช้งานเป็นห่วงโซ่แฮชตามลำดับโดยใช้ SHA-256 ตัวสร้าง PoH คำนวณแฮช SHA-256 อย่างต่อเนื่อง โดยใช้แต่ละเอาต์พุตเป็นอินพุตสำหรับแฮชถัดไป สิ่งนี้จะสร้างลำดับลูกโซ่โดยที่แต่ละแฮชสามารถคำนวณได้หลังจากแฮชก่อนหน้าเท่านั้น สร้างการเรียงลำดับชั่วคราวที่ตรวจสอบได้ ข้อกำหนดในการคำนวณเพื่อสร้างแต่ละแฮชบังคับให้มีการหน่วงเวลาขั้นต่ำระหว่างเหตุการณ์

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

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

ลำดับ PoH ทำหน้าที่เป็นนาฬิกาเข้ารหัสสำหรับทั้งเครือข่าย เนื่องจากห่วงโซ่แฮชเป็นแบบต่อเนื่องและตรวจสอบได้ โหนดใดๆ จึงสามารถพิสูจน์ได้ว่าระยะเวลาหนึ่งผ่านไประหว่างสองเหตุการณ์ เพียงแค่แสดงแฮชที่ถูกคำนวณในช่วงเวลานั้น ซึ่งช่วยลดความจำเป็นที่โหนดจะต้องเชื่อถือการประทับเวลาภายนอกหรือประสานงานซึ่งกันและกันเพื่อสร้างลำดับชั่วคราว ซึ่งช่วยขจัดปัญหาคอขวดพื้นฐานในฉันทามติบล็อกเชนแบบดั้งเดิม

Proof of History Sequence
ลำดับ Proof of History คือสายโซ่ต่อเนื่องของแฮช SHA-256 โดยแต่ละแฮชขึ้นอยู่กับเอาต์พุตก่อนหน้า ลำดับเริ่มต้นด้วยค่าเริ่มต้น ซึ่งถูกแฮชเพื่อสร้างเอาต์พุตแรก เอาต์พุตนี้จะกลายเป็นอินพุตสำหรับแฮชถัดไป และกระบวนการจะทำซ้ำอย่างไม่มีกำหนด ตัวสร้างยังรักษาตัวนับที่ติดตามจำนวนแฮชทั้งหมดที่คำนวณ ซึ่งทำหน้าที่เป็น "การประทับเวลา" ของ PoH สำหรับเหตุการณ์ใน ledger

เมื่อจำเป็นต้องแทรกข้อมูลลงในลำดับ (เช่น แฮชของธุรกรรมหรือลายเซ็น validator) ข้อมูลจะรวมกับสถานะแฮชปัจจุบันโดยใช้ฟังก์ชันผสมที่กำหนดขึ้น ตัวอย่างเช่น หากสถานะแฮชปัจจุบันคือ hash_n และเราต้องการแทรกข้อมูล D เราจะคำนวณ hash_{n+1} = SHA256(hash_n || D) โดยที่ || หมายถึงการต่อข้อมูลเข้าด้วยกัน จุดแทรกจะถูกบันทึกพร้อมกับค่าตัวนับ เพื่อพิสูจน์ว่ามีข้อมูล D อยู่ที่จุดเฉพาะนั้นในลำดับ
การตรวจสอบลำดับ PoH สามารถดำเนินการแบบขนานได้โดยการแยกสายโซ่ออกเป็นส่วนต่างๆ ตัวอย่างเช่น validator อาจได้รับจุดตรวจสอบ PoH ทุกๆ 10,000 แฮช ในการตรวจสอบลำดับระหว่างจุดตรวจสอบ validator สามารถแบ่งแฮช 10,000 รายการออกเป็น 100 ส่วน ส่วนละ 100 แฮช ตรวจสอบแต่ละส่วนแยกจากกันในแบบคู่ขนาน จากนั้นตรวจสอบว่าส่วนต่างๆ เชื่อมต่อกันอย่างถูกต้อง ซึ่งช่วยให้การตรวจสอบขยายขนาดในแนวนอนตามจำนวนคอร์ CPU ที่มีอยู่ได้
ลำดับยังสนับสนุนการพิสูจน์ที่มีประสิทธิภาพว่าเหตุการณ์สองเหตุการณ์เกิดขึ้นในลำดับเฉพาะ ด้วยการแทรกข้อมูลสองครั้งที่ค่าตัวนับ n และ m โดยที่ n m ใครๆ ก็สามารถตรวจสอบได้ว่าเหตุการณ์ที่ n เกิดขึ้นก่อนเหตุการณ์ที่ m โดยการตรวจสอบสายโซ่แฮชระหว่างจุดเหล่านั้น คุณสมบัตินี้ช่วยให้ Solana สร้างบันทึกประวัติที่ตรวจสอบได้ของเหตุการณ์ทั้งหมดในเครือข่าย โดยไม่ต้องกำหนดให้โหนดออนไลน์อย่างต่อเนื่องหรือเชื่อถือแหล่งเวลาภายนอก
Timestamp
Proof of History ทำหน้าที่เป็นนาฬิกากระจายอำนาจที่กำหนดเวลาให้กับเหตุการณ์โดยไม่ต้องอาศัยเวลาของนาฬิกาแขวน แฮช PoH แต่ละรายการแสดงถึง "เครื่องหมายถูก" ที่ไม่ต่อเนื่องของนาฬิกาเข้ารหัส และค่าตัวนับจะทำหน้าที่เป็นการประทับเวลา เนื่องจากสายแฮชเป็นแบบต่อเนื่องและตรวจสอบได้ การประทับเวลาเหล่านี้จึงไม่น่าเชื่อถือ ผู้สังเกตการณ์ทุกคนสามารถตรวจสอบได้ว่าการประทับเวลานั้นถูกต้องโดยการตรวจสอบสายแฮช
ใน Solana แต่ละ validator สามารถสร้างลำดับ PoH ของตัวเองได้เมื่อทำหน้าที่เป็นผู้นำ เมื่อ validators หมุนเวียนผู้นำ พวกเขาจะซิงโครไนซ์ลำดับ PoH ของตนโดยใช้จุดตรวจสอบที่ยืนยันล่าสุดจากผู้นำคนก่อน สิ่งนี้ทำให้มั่นใจถึงความต่อเนื่องของบันทึกชั่วคราว แม้ว่า validators ที่แตกต่างกันจะผลัดกันสร้างบล็อกก็ตาม เครือข่ายสร้างไทม์ไลน์ตามรูปแบบบัญญัติโดยบรรลุข้อตกลงร่วมกันว่าลำดับ PoH ใดที่จะยอมรับเป็นส่วนหนึ่งของ ledger อย่างเป็นทางการ
ระบบจะจัดการกับการเลื่อนของสัญญาณนาฬิกาและความแปรปรวนในประสิทธิภาพของฮาร์ดแวร์ผ่านการผสมผสานระหว่างการหมุนเวียนผู้นำและความเห็นพ้องต้องกัน หากผู้นำที่เป็นอันตรายหรือผิดพลาดพยายามสร้างการประทับเวลา PoH ในอัตราที่ไม่ถูกต้อง (เร็วเกินไปหรือช้าเกินไป) validators สามารถตรวจจับสิ่งนี้ได้โดยการเปรียบเทียบอัตราเห็บ PoH กับตัวสร้าง PoH ในพื้นที่ของตนเอง การเบี่ยงเบนอย่างมีนัยสำคัญจากอัตราที่คาดไว้บ่งบอกถึงปัญหา และ validators สามารถปฏิเสธบล็อกจากผู้นำที่มีลำดับ PoH แตกต่างจากค่ามัธยฐานของเครือข่ายมากเกินไป
กลไกการประทับเวลานี้แก้ปัญหาพื้นฐานประการหนึ่งในระบบแบบกระจาย: การสร้างแนวคิดทั่วไปเกี่ยวกับเวลาโดยไม่มีหน่วยงานกลางที่เชื่อถือได้ ด้วยการใช้ PoH เป็นนาฬิกากระจายอำนาจ Solana ช่วยให้ validators ประมวลผลธุรกรรมแบบขนานในขณะที่ยังคงรักษาลำดับที่สอดคล้องกันทั่วโลก การประทับเวลายังจัดเตรียมรากฐานสำหรับฟีเจอร์ตามเวลา เช่น การหมดอายุของธุรกรรม การดำเนินการตามกำหนดการ และการวัดประสิทธิภาพ
Proof of Stake Consensus
กลไกฉันทามติของ Solana ที่เรียกว่า Tower BFT เป็นอัลกอริธึม Proof of Stake ที่ออกแบบมาโดยเฉพาะเพื่อใช้ประโยชน์จากคุณสมบัติชั่วคราวของ Proof of History ผู้ตรวจสอบจะเดิมพันโทเค็น SOL เพื่อเข้าร่วมฉันทามติและรับรางวัลจากการตรวจสอบความถูกต้องของบล็อก ระบบการลงคะแนนแบบถ่วงน้ำหนักหุ้นทำให้มั่นใจได้ว่า validators ที่มีผลประโยชน์ทางเศรษฐกิจมากกว่าในเครือข่ายจะมีอิทธิพลเหนือการตัดสินใจที่เป็นเอกฉันท์ตามสัดส่วนมากกว่า
นวัตกรรมหลักใน Tower BFT คือการใช้ระยะเวลาล็อคที่เพิ่มขึ้นแบบทวีคูณเมื่อมีการโหวตแต่ละครั้งติดต่อกัน เมื่อ validator โหวตให้กับแฮช PoH พวกเขายอมรับการแยกของ ledger สำหรับขีด PoH จำนวนหนึ่ง หากพวกเขาโหวตบล็อกถัดไปในทางแยกนั้น ระยะเวลาการล็อคจะเพิ่มเป็นสองเท่า สิ่งนี้สร้างแรงจูงใจทางเศรษฐกิจที่แข็งแกร่งสำหรับ validators ที่จะลงคะแนนเสียงบนส้อมเดิมต่อไป เนื่องจากการสลับส้อมจะต้องรอให้การล็อคก่อนหน้านี้หมดอายุ
โดยเฉพาะอย่างยิ่ง หาก validator โหวตบนบล็อกที่ประทับเวลา PoH t พวกเขาจะไม่สามารถลงคะแนนใน fork ที่ขัดแย้งกันจนกว่าเครื่องหมาย 2^n จะผ่านไป โดยที่ n คือจำนวนการโหวตติดต่อกันที่พวกเขาได้ทำบน fork ปัจจุบัน กลไกการล็อคแบบเอกซ์โปเนนเชียลนี้ทำให้ระบบปลอดภัยจากการโจมตีระยะไกล ในขณะเดียวกันก็ทำให้สามารถสรุปผลได้อย่างรวดเร็ว เมื่อเสียงข้างมากของเดิมพันได้ลงคะแนนในบล็อกที่มีความลึกเพียงพอ บล็อกนั้นก็จะได้รับการสรุปผลอย่างมีประสิทธิภาพ
เงื่อนไขที่รุนแรงบังคับใช้พฤติกรรมที่ซื่อสัตย์ หาก validator โหวตให้กับส้อมสองอันที่ขัดแย้งกันในช่วงเวลาที่ควรถูกล็อค โทเค็นเหล่านั้นจะถูกเฉือน — โทเค็นที่เดิมพันจะถูกทำลายบางส่วนและจะถูกลบออกจากชุด validator ซึ่งทำให้ไม่สมเหตุสมผลในเชิงเศรษฐกิจที่จะพยายามคลุมเครือหรือพฤติกรรม Byzantine อื่นๆ การผสมผสานระหว่างการประทับเวลาที่ตรวจสอบได้ของ PoH และการล็อกเอาท์แบบเอ็กซ์โปเนนเชียลของ Tower BFT ทำให้เกิดกลไกที่เป็นเอกฉันท์ที่ทั้งรวดเร็วและปลอดภัย โดยบรรลุผลขั้นสุดท้ายในไม่กี่วินาที ขณะเดียวกันก็รักษาการรับประกันความปลอดภัยของระบบ BFT แบบดั้งเดิม
Streaming Proof of Replication
Proof of Replication (PoRep) เป็นกลไกที่ช่วยให้ validators พิสูจน์ได้ว่ากำลังจัดเก็บข้อมูล ledger โดยไม่ต้องเปิดเผยข้อมูลหรือต้องใช้การคำนวณอย่างเข้มข้น Solana ใช้ PoRep เวอร์ชันสตรีมมิ่ง โดยที่ validators แสดงให้เห็นอย่างต่อเนื่องว่ากำลังจำลองสถานะบล็อกเชน">บล็อกเชน นี่เป็นสิ่งสำคัญสำหรับการรักษาความปลอดภัยเครือข่าย เนื่องจากช่วยให้แน่ใจว่าข้อมูล ledger มีการกระจายอย่างเหมาะสมทั่วทั้ง validators และไม่กระจุกตัวอยู่ในตำแหน่งบางแห่ง
กลไก PoRep ทำงานโดยให้ validators เข้ารหัสเซ็กเมนต์ของ ledger โดยใช้การเข้ารหัสโหมด CBC (Cipher Block Chaining) พร้อมด้วยคีย์เฉพาะ validator ที่ได้มาจากข้อมูลระบุตัวตน กระบวนการเข้ารหัสนั้นทำให้แต่ละบล็อกที่เข้ารหัสนั้นขึ้นอยู่กับบล็อกก่อนหน้า สร้างสายโซ่ที่ไม่ซ้ำกันสำหรับแต่ละ validator การทำเช่นนี้จะป้องกันไม่ให้ validators คัดลอกข้อมูลที่เข้ารหัสจากกัน โดย validator แต่ละตัวจะต้องจัดเก็บและประมวลผลข้อมูล ledger ดั้งเดิมเพื่อสร้างเวอร์ชันที่เข้ารหัสที่ไม่ซ้ำกัน

เครือข่ายจะออกคำถามท้าทาย validators เป็นระยะ โดยขอให้จัดเตรียมบล็อกที่เข้ารหัสเฉพาะ เนื่องจากการเข้ารหัสเป็นแบบลูกโซ่ validator จะต้องจัดเก็บบล็อกก่อนหน้าทั้งหมดเพื่อสร้างการตอบสนองที่ถูกต้อง validator ส่งบล็อกที่เข้ารหัสพร้อมกับหลักฐาน Merkle ที่แสดงตำแหน่งใน ledger ที่เข้ารหัส เครือข่ายสามารถตรวจสอบหลักฐานนี้ได้อย่างรวดเร็วโดยไม่จำเป็นต้องถอดรหัสหรือเข้ารหัสข้อมูลอีกครั้ง

วิธีการสตรีมไปยัง PoRep นี้มีค่าใช้จ่ายต่ำเมื่อเทียบกับระบบพิสูจน์การจัดเก็บแบบดั้งเดิม เครื่องมือตรวจสอบสามารถเข้ารหัสข้อมูลเมื่อมาถึงและตอบสนองต่อความท้าทายโดยมีเวลาแฝงน้อยที่สุด ระบบยังเปิดใช้งานการกู้คืนในกรณีที่ข้อมูลสูญหาย หาก validator สูญเสียส่วนหนึ่งของ ledger ก็สามารถดาวน์โหลดใหม่จาก validators อื่นและเข้ารหัสอีกครั้งได้ การผสมผสานระหว่าง PoRep กับการประทับเวลา PoH จะสร้างระบบความรับผิดชอบที่สมบูรณ์ ซึ่งเครือข่ายสามารถตรวจสอบทั้งเมื่อมีการสร้างข้อมูลและจัดเก็บอย่างเหมาะสมผ่านเครือข่าย validator
System Architecture
สถาปัตยกรรมระบบของ Solana ได้รับการออกแบบให้เป็นไปป์ไลน์ที่ขั้นตอนต่างๆ ของการประมวลผลธุรกรรมเกิดขึ้นพร้อมกัน หน่วยประมวลผลธุรกรรม (TPU) เป็นองค์ประกอบหลักที่รับผิดชอบในการจัดการธุรกรรมที่เข้ามา TPU ประกอบด้วยหลายขั้นตอน: ดึงข้อมูล (รวบรวมธุรกรรม) การตรวจสอบลายเซ็น การธนาคาร (การดำเนินการธุรกรรม) และการเขียน (ยินยอมที่จะจัดเก็บข้อมูล) แต่ละขั้นตอนดำเนินการแบบขนานในธุรกรรมที่แตกต่างกัน คล้ายกับการวางท่อ CPU

การตรวจสอบลายเซ็นจะถูกเร่งให้เร็วขึ้นโดยใช้ GPU ซึ่งมีประสิทธิภาพสูงในการดำเนินการเข้ารหัสแบบเส้นโค้งวงรี ซึ่งจำเป็นในการตรวจสอบลายเซ็นของธุรกรรม ด้วยการถ่ายงานที่ต้องใช้การคำนวณสูงนี้ไปยัง GPU ทำให้ Solana สามารถตรวจสอบลายเซ็นในอัตราที่เกิน 900,000 ต่อวินาทีบนฮาร์ดแวร์สินค้าโภคภัณฑ์ การตรวจสอบลายเซ็นแบบขนานนี้ช่วยป้องกันการตรวจสอบการเข้ารหัสไม่ให้กลายเป็นคอขวด แม้จะมีอัตราการทำธุรกรรมที่สูงมากก็ตาม

รันไทม์ Sealevel คือกลไกการดำเนินการสัญญาอัจฉริยะแบบขนานของ Solana ต่างจากบล็อกเชน">บล็อกเชนแบบดั้งเดิมที่ดำเนินธุรกรรมตามลำดับ Sealevel วิเคราะห์ธุรกรรมเพื่อระบุบัญชีที่พวกเขาเข้าถึง และดำเนินธุรกรรมที่ไม่ขัดแย้งในแบบคู่ขนานบนแกน CPU หลายตัว ธุรกรรมที่เข้าถึงบัญชีเดียวกันจะได้รับการดำเนินการตามลำดับเพื่อรักษาความสอดคล้อง แต่ธุรกรรมที่เข้าถึงบัญชีที่แตกต่างกันสามารถดำเนินการพร้อมกันได้ ความขนานนี้เป็นไปได้เนื่องจาก PoH สร้างการเรียงลำดับทั่วโลก — validators สามารถทำธุรกรรมในลำดับใดก็ได้ ตราบใดที่ธุรกรรมเหล่านั้นใช้กับสถานะในลำดับที่ระบุ PoH

สถาปัตยกรรมยังรวมถึงส่วนประกอบที่ได้รับการปรับปรุงสำหรับการแพร่กระจายและการจัดเก็บข้อมูลแบบบล็อก โปรโตคอลการแพร่กระจายบล็อกกังหันใช้การเข้ารหัสการลบข้อมูลเพื่อแบ่งบล็อกออกเป็นแพ็กเก็ตขนาดเล็กที่กระจายไปทั่วเครือข่ายในโครงสร้างแบบต้นไม้ ช่วยลดความต้องการแบนด์วิดท์ให้เหลือน้อยที่สุด เครือข่าย Archivers มอบพื้นที่จัดเก็บข้อมูลแบบกระจายอำนาจสำหรับข้อมูลประวัติ ledger โดยใช้ PoRep เพื่อรับรองความพร้อมใช้งานของข้อมูล ส่วนประกอบเหล่านี้ร่วมกันสร้างระบบที่สามารถประมวลผลธุรกรรมนับแสนรายการต่อวินาที ในขณะที่ยังคงรักษาคุณสมบัติการกระจายอำนาจและความปลอดภัยของบล็อกเชน
Performance
สถาปัตยกรรมของ Solana ได้รับการออกแบบมาเพื่อให้บรรลุระดับประสิทธิภาพที่ปรับขนาดได้ด้วยการปรับปรุงฮาร์ดแวร์ตามกฎของมัวร์ สำหรับการเชื่อมต่อเครือข่ายมาตรฐาน 1 กิกะบิต ปริมาณงานสูงสุดตามทฤษฎีจะอยู่ที่ประมาณ 710,000 ธุรกรรมต่อวินาที โดยถือว่า 176 ไบต์ต่อธุรกรรม (รวมลายเซ็นและข้อมูลเมตา) การคำนวณนี้อิงตามแบนด์วิดท์เครือข่ายที่เป็นคอขวดหลัก โดยที่คอขวดในการคำนวณจะถูกลบออกผ่านการทำขนาน
การตรวจสอบลายเซ็นซึ่งมักเป็นปัจจัยจำกัดในประสิทธิภาพของบล็อกเชน">บล็อกเชน จะถูกเร่งให้เร็วขึ้นโดยใช้ GPU แบบขนาน GPU ตัวเดียวสามารถตรวจสอบลายเซ็น ed25519 ได้มากกว่า 900,000 รายการต่อวินาที ซึ่งเกินขีดจำกัดปริมาณงานของเครือข่าย ซึ่งหมายความว่าการตรวจสอบลายเซ็นไม่ได้จำกัดประสิทธิภาพของระบบ — คอขวดจะเปลี่ยนไปที่แบนด์วิดท์เครือข่ายและการดำเนินการธุรกรรม สำหรับธุรกรรมง่ายๆ ที่โอนเฉพาะมูลค่าโดยไม่มีตรรกะของสัญญาอัจฉริยะที่ซับซ้อน ขั้นตอนการธนาคารสามารถประมวลผลธุรกรรมในอัตราที่ตรงกับอัตราอินพุตของเครือข่าย
ตัวสร้าง PoH ทำงานบนแกน CPU เฉพาะ ซึ่งสร้างแฮชประมาณ 4,000 ต่อมิลลิวินาทีบนโปรเซสเซอร์ 4GHz ในอัตรานี้ ลำดับ PoH จะให้การประทับเวลาที่มีความละเอียด 0.25 ไมโครวินาที ซึ่งเพียงพอสำหรับการสั่งซื้อธุรกรรมหลายล้านรายการต่อวินาที ลักษณะตามลำดับของการสร้าง PoH หมายความว่าส่วนประกอบนี้ไม่สามารถขนานกันได้ แต่ปริมาณงานสูงพอที่จะไม่จำกัดประสิทธิภาพโดยรวมของระบบ
เมื่อฮาร์ดแวร์ได้รับการปรับปรุง ปริมาณงานของ Solana ก็จะปรับขนาดตามไปด้วย เครือข่ายที่เร็วขึ้น GPU ที่ทรงพลังยิ่งขึ้น และ CPU ที่ได้รับการปรับปรุง ล้วนส่งผลให้อัตราการทำธุรกรรมสูงขึ้น ระบบได้รับการออกแบบมาเพื่อใช้ประโยชน์จากการปรับปรุงเหล่านี้โดยไม่ต้องเปลี่ยนโปรโตคอล วิธีการขยายขนาดนี้แตกต่างกับบล็อกเชนที่ถูกจำกัดโดยพื้นฐานโดยกลไกฉันทามติตามลำดับ ซึ่งช่วยให้ Solana บรรลุระดับประสิทธิภาพที่ก่อนหน้านี้คิดว่าเป็นไปไม่ได้ในระบบกระจายอำนาจ ในขณะที่ยังคงรักษาความปลอดภัยและการรับประกันการกระจายอำนาจ
Conclusion
Proof of History แสดงถึงความก้าวหน้าขั้นพื้นฐานในสถาปัตยกรรมบล็อกเชน">บล็อกเชนโดยการแก้ปัญหาเรื่องเวลาที่จำกัดความสามารถในการปรับขนาดของ ledgers แบบกระจาย ด้วยการสร้างนาฬิกาเข้ารหัสลับที่ตรวจสอบได้ PoH ช่วยให้ validators สร้างการเรียงลำดับเหตุการณ์ชั่วคราวโดยไม่มีค่าใช้จ่ายด้านการสื่อสารที่ครอบคลุมซึ่งกำหนดโดยกลไกฉันทามติแบบดั้งเดิม นวัตกรรมนี้ช่วยขจัดปัญหาคอขวดที่สำคัญและช่วยให้การประมวลผลธุรกรรมสามารถขนานกันทั่วทั้งเครือข่ายได้
การบูรณาการ PoH เข้ากับส่วนประกอบของระบบที่ได้รับการปรับปรุง - การตรวจสอบลายเซ็นที่เร่งด้วย GPU การดำเนินการธุรกรรมแบบขนานผ่าน Sealevel และโปรโตคอลการแพร่กระจายบล็อกที่มีประสิทธิภาพ - สร้างบล็อกเชนที่สามารถประมวลผลธุรกรรมนับแสนรายการต่อวินาทีบนฮาร์ดแวร์สินค้าโภคภัณฑ์ ที่สำคัญกว่านั้น สถาปัตยกรรมได้รับการออกแบบให้ปรับขนาดได้ด้วยการปรับปรุงฮาร์ดแวร์ ซึ่งหมายความว่าประสิทธิภาพจะเพิ่มขึ้นอย่างต่อเนื่องเมื่อโปรเซสเซอร์เร็วขึ้นและเครือข่ายมีความสามารถมากขึ้น
การออกแบบของ Solana แสดงให้เห็นว่าประสิทธิภาพสูงและการกระจายอำนาจไม่ได้แยกจากกัน ด้วยการใช้ประโยชน์จาก PoH เป็นรากฐานสำหรับความเห็นพ้องต้องกันและการประสานงานของระบบ เครือข่ายบรรลุระดับการรับส่งข้อมูลที่เทียบได้กับฐานข้อมูลแบบรวมศูนย์ ในขณะที่ยังคงรักษาคุณสมบัติด้านความปลอดภัยและการต้านทานการเซ็นเซอร์ของบล็อกเชนแบบกระจายอำนาจ กลไกฉันทามติ Tower BFT แบบถ่วงน้ำหนักเดิมพันช่วยให้แน่ใจว่าเครือข่ายยังคงปลอดภัยจากนักแสดง Byzantine ในขณะที่บรรลุผลขั้นสุดท้ายอย่างรวดเร็ว
การนำสถาปัตยกรรมนี้ไปใช้ถือเป็นแนวทางปฏิบัติสำหรับเทคโนโลยีบล็อกเชนเพื่อขยายไปสู่การนำไปใช้ทั่วโลก แอปพลิเคชันที่ต้องการทรูพุตธุรกรรมสูง เช่น การแลกเปลี่ยนแบบกระจายอำนาจ แพลตฟอร์มเกม และระบบทางการเงิน สามารถสร้างบนโครงสร้างพื้นฐานแบบกระจายอำนาจอย่างแท้จริง โดยไม่กระทบต่อประสิทธิภาพการทำงาน Proof of History เปิดประตูสู่แอปพลิเคชันบล็อกเชนรุ่นใหม่ที่ก่อนหน้านี้ไม่สามารถทำได้เนื่องจากข้อจำกัดด้านความสามารถในการขยาย
Related Whitepapers
XRP
The Ripple Protocol Consensus Algorithm
19 shared concepts · 2014
Bitcoin Cash
Bitcoin Cash: Peer-to-Peer Electronic Cash for the World
25 shared concepts · 2017
Ethereum
Ethereum: A Next-Generation Smart Contract and Decentralized Application Platfo…
25 shared concepts · 2013
Tether
Tether: Fiat currencies on the Bitcoin blockchain
20 shared concepts · 2016
Bitcoin
Bitcoin: A Peer-to-Peer Electronic Cash System
13 shared concepts · 2008
Related Stories
Solana Whitepaper: How Proof of History Enables 400ms Blocks
Exploring Anatoly Yakovenko's novel clock mechanism that lets Solana achieve sub-second finality and process tens of th…
Origin StorySolana's Genesis: An Engineer's Obsession with Clock Synchronization
How Qualcomm engineer Anatoly Yakovenko realized that a verifiable clock could eliminate the communication overhead tha…
Technical ExplainerProof of Stake Explained: Validators, Staking, and Slashing
Understanding how PoS blockchains replace energy-intensive mining with economic staking, and the mechanisms that keep v…
Impact & LegacyThe Merge and Beyond: How Proof-of-Stake Solved Crypto's Energy Problem
Ethereum's switch from PoW to PoS cut its energy consumption by 99.95%. What this means for the industry's environmenta…
คำถามที่พบบ่อย
- Solana whitepaper คืออะไร?
- Solana whitepaper เขียนโดย Anatoly Yakovenko ในปี 2017 แนะนำ Proof of History (PoH) ซึ่งเป็นกลไกการบันทึกเวลาแบบใหม่ที่ช่วยให้ blockchain สามารถประมวลผลธุรกรรมได้ปริมาณสูงโดยไม่เสียสละการกระจายอำนาจ
- Proof of History คืออะไร?
- Proof of History (PoH) คือนวัตกรรมหลักของ Solana มันสร้าง timestamp ทางการเข้ารหัสโดยใช้การแฮชต่อเนื่องแบบ SHA-256 ช่วยให้ผู้ตรวจสอบสามารถตกลงเรื่องลำดับและเวลาของเหตุการณ์ได้โดยไม่ต้องสื่อสารตลอดเวลา
- ใครเป็นผู้เขียน Solana whitepaper และเมื่อใด?
- Solana whitepaper เขียนโดย Anatoly Yakovenko วิศวกรอดีต Qualcomm ในเดือนพฤศจิกายน 2017 เขาใช้ประสบการณ์ด้านระบบกระจายและโทรคมนาคมในการออกแบบกลไก Proof of History
- กลไกฉันทามติของ Solana ทำงานอย่างไร?
- Solana รวม Proof of History (PoH) สำหรับการจัดลำดับเข้ากับ Tower BFT ซึ่งเป็นเวอร์ชัน Practical Byzantine Fault Tolerance ที่ปรับให้เหมาะกับ PoH ผู้ตรวจสอบใช้นาฬิกา PoH เพื่อลดค่าใช้จ่ายในการสื่อสาร ทำให้สามารถสร้างบล็อกได้ในเวลาต่ำกว่าหนึ่งวินาที
- Solana แตกต่างจาก Ethereum อย่างไร?
- Solana ให้ความสำคัญกับปริมาณธุรกรรมและค่าธรรมเนียมต่ำผ่านสถาปัตยกรรมเลเยอร์เดียวที่มีการประมวลผลธุรกรรมแบบขนาน (Sealevel) ในขณะที่ Ethereum อาศัย Layer 2 rollup ในการขยายขนาด Solana ประมวลผลธุรกรรมได้หลายพันรายการต่อวินาทีด้วยค่าธรรมเนียมต่ำกว่าหนึ่งเซ็นต์
- โมเดลอุปทานของ Solana เป็นอย่างไร?
- Solana เปิดตัวด้วยอุปทานเริ่มต้น ~500 ล้าน SOL มันใช้ตารางเงินเฟ้อลดลงเริ่มต้นที่ 8% ต่อปี ลดลง 15% ทุกปีจนถึงอัตราระยะยาวที่ 1.5% ค่าธรรมเนียมธุรกรรมบางส่วนจะถูกเผาทิ้ง
- Solana มีกรณีการใช้งานหลักอะไรบ้าง?
- Solana ถูกใช้สำหรับ DeFi ตลาด NFT โครงสร้างพื้นฐานทางกายภาพแบบกระจายอำนาจ (DePIN) การชำระเงิน เกม และแอปพลิเคชันสำหรับผู้บริโภค ความเร็วสูงและต้นทุนต่ำทำให้เป็นที่นิยมสำหรับการซื้อขายความถี่สูงและกรณีการใช้งานชำระเงินจำนวนน้อย
- Solana แก้ความท้าทายทางเทคนิคอะไร?
- Solana แก้คอขวดด้านปริมาณธุรกรรมของ blockchain โดยขจัดความจำเป็นที่ผู้ตรวจสอบต้องสื่อสาร timestamp Proof of History มอบการผ่านของเวลาที่ตรวจสอบได้ ช่วยให้ประมวลผลแบบขนานและมีปริมาณธุรกรรมสูงในเลเยอร์เดียว
- โมเดลความปลอดภัยของ Solana ทำงานอย่างไร?
- Solana ใช้ delegated proof-of-stake ที่ผู้ตรวจสอบ stake SOL และถูกเลือกตามน้ำหนักของ stake ความปลอดภัยอาศัยแรงจูงใจทางเศรษฐกิจ ผู้ตรวจสอบอาจถูก slash สำหรับพฤติกรรมที่เป็นอันตราย และนาฬิกา PoH ทำให้การปลอมแปลงลำดับธุรกรรมมีต้นทุนสูง
- สถานะปัจจุบันของระบบนิเวศ Solana เป็นอย่างไร?
- Solana กลายเป็นแพลตฟอร์ม smart contract ชั้นนำที่มีระบบนิเวศ DeFi และ NFT ที่คึกคัก โปรเจกต์สำคัญ ได้แก่ Jupiter (DEX aggregator) Marinade (liquid staking) Tensor (ตลาด NFT) และ Helium (เครือข่ายไร้สายแบบกระจายอำนาจ) Firedancer ซึ่งเป็น validator client ที่สองโดย Jump Crypto ยิ่งกระจายอำนาจของเครือข่ายมากขึ้น