ผู้เขียนต้นฉบับ:เครื่องวิญญาณ; วิดีโอสนับสนุนสำหรับบทความนี้:https://v.qq.com/x/page/f07704nx4iq.html
ชื่อระดับแรก
ขั้นตอนวิธีแคสเปอร์ FFG
คำอธิบายภาพ
กระบวนการ PoW
คนงานเหมืองสีเหลืองในภาพด้านบนก็เพิ่มการคำนวณของพวกเขาอย่างกะทันหันและเริ่มทำสิ่งที่ไม่ดี เริ่มจากบล็อกเก่า โซ่ใหม่ถูกแยกออกและขุดต่อไป หากยาวเกินทางซ้าย โซ่ใหม่จะขาด หากสามารถเปลี่ยนห่วงโซ่เก่าได้สำเร็จบล็อกเก่าก่อนหน้านี้จะถูกเพิกถอนและธุรกรรมทั้งหมดภายในจะถูกเขียนทับและเขียนใหม่
บนพื้นฐานของ PoW ปัจจุบัน Casper FFG เพิ่มชั้นของกระบวนการลงคะแนน PoS ซึ่งปรับปรุง Finality ให้ดียิ่งขึ้น และเป็นไปไม่ได้ในทางทฤษฎีที่บล็อกเก่าจะถูกเพิกถอน Casper FFG เป็นอัลกอริทึมที่ไม่บุกรุก มันไม่ได้เปลี่ยนอัลกอริทึม Ethereum PoW ปัจจุบัน แต่เพิ่ม PoS สไตล์ BFT ในชั้น PoW นี้ กล่าวคือ บล็อกทั้งหมดถูกขุดโดยนักขุด PoW แกนหลักนี้ กระบวนการคือ เก็บรักษาไว้ บนพื้นฐานนี้ ทุกครั้งที่ขุดได้ 100 บล็อก โหนดการตรวจสอบ PoS จะลงคะแนนให้กับบล็อกสุดท้าย หลังจากผ่านไป 2/3 บล็อกสุดท้ายจะเรียกว่าจุดตรวจสอบ (ด่านตรวจ)ด่านใด ๆ ที่เสร็จสิ้นแล้วจะไม่สามารถยกเลิกได้กล่าวโดยสรุป กลไกของการสร้างบล็อก PoW จะยังคงอยู่ และในขณะเดียวกัน PoS จะโหวตทุกๆ 100 บล็อก ซึ่งจะช่วยเพิ่มความปลอดภัย (ความปลอดภัยหรือขั้นสุดท้าย) ของ Ethereum
ฟิลด์ของข้อความลงคะแนนมีดังนี้:
ดังที่แสดงในตารางด้านบน แต่ละข้อความลงคะแนนมี 5 ฟิลด์ s หมายถึงบล็อกแฮชของจุดตรวจสอบต้นทาง t หมายถึงบล็อกแฮชของจุดตรวจเป้าหมาย h(s) หมายถึงความสูงของบล็อก s h( t) หมายถึง ความสูงบล็อกของ t และ S แสดงถึงลายเซ็น จาก 5 ฟิลด์นี้ มีเพียง 3 ฟิลด์เท่านั้นที่เป็นแกนหลักจริงๆ ได้แก่ h(s), t, h(t)
ข้อความการลงคะแนนเสียงของ Casper FFG รวมสองขั้นตอนอย่างชาญฉลาดเป็นขั้นตอนเดียว โดยพื้นฐานแล้ว มันยังคงเทียบเท่ากับการลงคะแนนสองขั้นตอนใน pBFT และ Tendermint คือ เตรียมล่วงหน้า -> เตรียม, ลงคะแนนล่วงหน้า -> ก่อนตัดสินใจ
ภาพด้านล่างอธิบายว่าทำไมการลงคะแนนต้องมีสองขั้นตอน
ในขณะเดียวกัน ข้อความลงคะแนนของ Casper FFG ก็มีผลคล้ายกับกลไกการล็อคใน Tendermint
ต่อไปนี้เป็นคำจำกัดความของคำศัพท์ต่างๆ ที่มักพบในอัลกอริทึม Casper FFG:
หนึ่งชิ้นsupermajority linkเขียนว่า a→b หมายความว่าหากมากกว่า 2/3 ของข้อความลงคะแนนเริ่มต้นจากจุดตรวจสอบ a และชี้ไปยังจุดตรวจสอบ b แสดงว่ามีการเชื่อมโยงเสียงส่วนใหญ่ระหว่าง a และ b ลิงก์เสียงส่วนใหญ่สามารถครอบคลุมหลายจุดตรวจสอบ กล่าวคือ h(b)>h(a)+1 นั้นถูกกฎหมาย
สองจุดตรวจสอบ a และ b ร่วมกันขัดแย้งซึ่งหมายความว่า a และ b อยู่คนละสาขา กล่าวคือ a และ b ไม่ได้อยู่บนเส้นทางเดียวกัน
ด่าน c จะกลายเป็นjustifiedจุดตรวจต้องตรงตามเงื่อนไขข้อใดข้อหนึ่งต่อไปนี้ (1) เป็นบล็อกการกำเนิด (2) หรือมีลิงก์หลักที่ชี้ไปที่จุดนั้น
ด่าน c จะกลายเป็นfinalizedด่าน จะต้องได้รับการพิสูจน์และมีการเชื่อมโยงที่สำคัญมากจากมัน c→c' และ c' คือลูกโดยตรงนั่นคือ ความสูงของ c' คือความสูงของ c เพิ่มขึ้น 1
ตัวอย่างเช่น ดังที่แสดงในรูปต่อไปนี้:
ชื่อระดับแรก
เงื่อนไขจุดโทษ (SlashCondition)
หาก Validator ละเมิดเงื่อนไขข้อใดข้อหนึ่งในสองข้อต่อไปนี้ จะถูกลงโทษและยึดเงินมัดจำทั้งหมด
1. No double vote: t1=t2. ไม่สามารถลงคะแนนให้บล็อกสองบล็อกที่ความสูงเท่ากันได้ สิ่งนี้ค่อนข้างเข้าใจง่าย ที่ความสูงพอ ๆ กัน การลงคะแนนสำหรับสองช่วงตึกที่แตกต่างกันเป็นพฤติกรรมการเก็งกำไรทั่วไปของการเดิมพันแบบ Nothingat ซึ่งจะถูกลงโทษ
2. No surround vote.t2 < t1 < s1 < s2 ตัวอย่างเช่น ผู้ตรวจสอบความถูกต้องจะลงคะแนนเสียงก่อน s1 -> t1 หลังจากผ่านไปสองสามช่วงตึก ให้ลงคะแนนต่อไป s2 -> t2 เนื่องจากความสูงของบล็อกเพิ่มขึ้นตามเวลา จึงเห็นได้ชัดว่า s2> e1 และอันดับสองถ้า t2< t1,มันต่ำกว่าบล็อกเป้าหมายของการโหวตครั้งก่อน ซึ่งเป็นปัญหา เนื่องจากคุณโหวต s1 -> t1 ก่อนหน้านี้ ซึ่งหมายความว่าคุณทราบแล้วว่าบล็อคทั้งหมดระหว่าง s1 และ t1 นั้นถูกต้อง แต่การโหวตครั้งที่สอง s2 ->t2 ช่วงเวลาน้อยกว่า s1->t1 ซึ่งครอบคลุมโดย s1->t1 ทั้งหมด การโหวตนี้ตกลงซ้ำๆ กับบล็อกระหว่าง s2 และ t2 ราวกับว่าคุณลืมการโหวตครั้งก่อน พฤติกรรมการลืมดังกล่าวจะถูกลงโทษด้วย
ภาพด้านล่างแสดงตัวอย่างการละเมิดการโหวต Nodouble
ในระหว่างการขุด PoW เป็นเรื่องปกติที่ส้อมจะเกิดขึ้นที่ความสูงเท่ากัน ในขณะนี้ ในบรรดาโหนดตรวจสอบความถูกต้องทั้ง 4 โหนด มีโหนดที่เป็นอันตราย 2 โหนดที่โหวตให้ Fork ทั้งสองพร้อมกัน ซึ่งจะทำให้บล็อกใหม่ทั้งสองบล็อกกลายเป็นธรรม ในกรณีนี้ โหนดที่เป็นอันตรายทั้งสองจะถูกลงโทษ เงินฝาก จะถูกทำลายและผู้ที่รายงานจะได้รับรางวัล (ค่าค้นหา)
ภาพด้านล่างแสดงตัวอย่างการละเมิด No surround vote
ในบางจุด มีลิงก์ที่มีความสำคัญยิ่งยวดสองลิงก์คือ A->B และ A->C ดังนั้น A จึงได้รับการสรุปผล และทั้ง B และ C เป็นบล็อกที่ถูกต้อง ในกรณีนี้ หมายความว่ามากกว่า 1/3 ของโหนดการยืนยันโหวตให้ B และ C พร้อมกัน ซึ่งถูกกฎหมายและไม่ละเมิดกฎการโหวตโนดับเบิลหรือกฎการโหวตโนเซอร์ราวด์
ชื่อระดับแรก
บทพิสูจน์ความปลอดภัยและความมีชีวิตชีวาที่น่าเชื่อถือ
ในส่วนนี้ เราจะพิสูจน์ความปลอดภัย (ขั้นสุดท้าย) และความมีชีวิตชีวาของ Casper FFG
ประการแรก Casper FFG อ้างว่ามีความปลอดภัยที่รับผิดชอบได้และมีชีวิตที่น่าเชื่อถือ Accountable หมายความว่าโหนดที่ตรวจสอบความถูกต้องจำเป็นต้องจ่ายเงินมัดจำจำนวนมาก ด้วยเงินฝาก ทำให้มีความน่าเชื่อถือเริ่มต้นและสามารถนับได้ (รับผิดชอบได้)
ความมีชีวิตชีวาที่เป็นไปได้จริง ๆ แล้วไม่มีอะไรใหม่ มันเหมือนกับความมีชีวิตชีวาของ Bitcoin ทุกประการ หมายความว่าเมื่อเครือข่ายแยก (พาร์ติชั่น) ทั้งระบบยังสามารถเขียนธุรกรรมใหม่และสร้างบล็อกได้
หลักฐานโดยละเอียดเริ่มต้นที่ด้านล่าง
ความปลอดภัยที่รับผิดชอบได้: จุดตรวจที่ขัดแย้งกันสองจุด (จุดตรวจ), am และ bn ไม่สามารถสรุปได้ (สรุปผล)
พิสูจน์:ใช้วิธีการโต้แย้งหลักฐาน สมมติว่า am และ bn ขัดแย้งกัน (นั่นคือในสองสาขา ไม่ใช่สาขาเดียวกัน) และการสรุปผลเสร็จสิ้น และแต่ละรายการมีบล็อกย่อย am+1 ที่เป็นธรรม และพันล้าน +1
หากความสูง m และ n เท่ากัน โหนดการตรวจสอบความถูกต้องจะต้องลงคะแนนให้จุดตรวจสอบทั้งสองพร้อมกัน 1/3 โหนดเหล่านี้ละเมิดกฎ No double vote และเงินฝากทั้งหมดจะถูกทำลาย สูญเสีย 1/3 ไม่สามารถสรุปโหนดการตรวจสอบ am และ bn ได้
ถ้าความสูง m และ n ไม่เท่ากัน ให้ n > m(n< m พิสูจน์กระบวนการเดียวกัน) เส้นทางจากบล็อกการกำเนิดไปยัง bn คือการกำเนิด→b1→b2→...→bi→bj→...→bn, bi เป็นบล็อกแรกที่มีความสูงน้อยกว่าหรือเท่ากับ am นั่นคือ i≤m bj เป็นบล็อกแรกที่มีความสูงมากกว่าหรือเท่ากับ am+1 นั่นคือ j≥m+1 สิ่งต่อไปนี้พิสูจน์ว่า:
ถ้า i==m, 1/3 ของโหนดการตรวจสอบละเมิดกฎ no double vote และจะถูกลงโทษ ทำให้เป็นไปไม่ได้ที่ am และ bn จะเสร็จสิ้น
ถ้า j==m+1 เหมือนด้านบน;
ถ้าฉัน
m+1 หมายความว่ามีลิงก์เสียงส่วนใหญ่ bi→bj ซึ่งล้อมรอบ am->am+1 โดยสมบูรณ์ ซึ่งละเมิดกฎการโหวตแบบไม่มีเสียงรอบทิศทาง และ 1/3 ของโหนดจะถูกลงโทษ ทำให้ am และ bn เป็นไปไม่ได้ จะได้รับการสรุป บางคนอาจถามว่า bi และ bj อาจไม่ได้รับการสรุป ถึงกระนั้น อย่างน้อย Genesis→bn ก็ล้อมรอบ am->am+1 ซึ่งยังคงละเมิดกฎการไม่ล้อมรอบ
กล่าวโดยสรุป เป็นไปไม่ได้ที่ am และ bn จะได้รับการสรุปไม่ว่าในกรณีใด ๆ และการพิสูจน์ก็เสร็จสมบูรณ์
ความมีชีวิตชีวาที่น่าเชื่อถือ: ตราบใดที่โหนดผู้ตรวจสอบความถูกต้องมากกว่า 2/3 โหวตโดยใช้บล็อกที่สมเหตุสมผลเป็นจุดเริ่มต้น บล็อกที่สรุปผลใหม่จะสามารถสร้างได้เสมอ
พูดง่ายๆ ก็คือ จะใช้บล็อกที่มีเหตุผลเป็นจุดเริ่มต้นและคุณสามารถโหวตให้โหนดใดก็ได้ที่สูงกว่านั้น ตัวอย่างเช่น มีบล็อกใหม่สองบล็อก หนึ่งบล็อกที่ความสูง m และหนึ่งพันล้านที่ความสูง n (รวมจุดเริ่มต้น , สามช่วงตึกต้องอยู่บนเส้นเดียวกัน) จากนั้นคุณสามารถโหวตให้กับทั้งสองหรือแม้แต่ทั้งสอง โดยไม่ละเมิดกฎการโหวตโนดับเบิ้ลและโนเซอร์ราวด์ กล่าวคือ คุณสามารถข้ามบล็อกหลาย ๆ บล็อกและโยนบล็อกที่สูงขึ้นได้โดยตรง บล็อกที่สมเหตุสมผลถัดไปอาจเป็น am หรือ bn หรือทั้งสองอย่าง (ทั้งคู่ได้รับคะแนนโหวตมากกว่า 2/3 ในเวลานี้ต้องมีโหนดมากกว่า 1/3 ที่โหวตให้ทั้งคู่) นั่นคือเหตุผล เหตุผลที่เรียกว่ามีเหตุผล
แม้ว่าเครือข่ายจะแยกออกจากกัน PoW สามารถสร้างบล็อกทั้งสองฝั่งต่อไปได้ แต่ในเวลานี้ โหนด Validators ไม่สามารถได้รับคะแนนเสียงถึง 2/3 ในจุดตรวจสอบใด ๆ ได้อีกต่อไป เนื่องจากครึ่งหนึ่งของฝั่งหนึ่งไม่สามารถสื่อสารได้ ถึงกระนั้น chain ก็ไม่สามารถ ได้รับการสรุปให้เติบโตต่อไป เมื่อเครือข่ายแบ่งออกเป็นสองซีกก็ยังสามารถทำงานได้ (Tendermint สามารถรอได้อย่างไม่มีกำหนดเมื่อเครือข่ายถูกแยกออก) ความมีชีวิตชีวาที่แข็งแกร่งแบบนี้อาจเป็นอีกความหมายหนึ่งที่เป็นไปได้
Casper FFG สามารถอนุมานได้จากความมีชีวิตชีวาที่เป็นไปได้กฎ ForkChoice: เลือกโซ่ที่ยาวที่สุดบนจุดตรวจสอบที่สมเหตุสมผลด้วยค่าสูงสุดเสมอนั่นคือการค้นหาบล็อกที่ถูกต้องที่สุดก่อน แล้วจึงเริ่มจากบล็อกนี้เพื่อเลือกเชนที่ยาวที่สุด เมื่อเปรียบเทียบกับการเลือกสายโซ่ที่ยาวที่สุดในอัลกอริทึม PoW แล้ว ยังมีข้อกำหนดเบื้องต้นอีกข้อหนึ่ง
ตัวอย่างเช่น ดังที่แสดงด้านล่าง:
ในรูปด้านบน จากลิงค์สูงสุดที่สรุปแล้ว มีลิงค์ supermajority สองลิงค์ที่ชี้ไปยังจุดตรวจสอบที่สมเหตุสมผล 2 จุด ในเวลานี้ เครือข่ายแยกออกในช่วงเวลาหนึ่ง ตัวอย่างเช่น สายเคเบิลออปติคัลใต้น้ำขาดซึ่งแยกเครือข่ายทั่วโลกออกเป็น สอง. ในเวลานี้ PoW ทั้งสองฝั่งจะยังคงสร้างบล็อกตามปกติ แต่เมื่อแต่ละด่านลงคะแนนจะสามารถรับคะแนนเสียงได้มากสุดเพียงครึ่งเดียวเนื่องจากโหนดตรวจสอบความถูกต้องมีเพียงครึ่งเดียวแม้ว่า 100% จะเห็นด้วยกับจุดตรวจใหม่ก็ตาม ไม่เกิน 2/3 ดังนั้นหลังจากแยกเครือข่ายแล้ว PoW จะขยายห่วงโซ่ต่อไป แต่บล็อกใหม่ทั้งหมดไม่สามารถสรุปและพิสูจน์ได้
ชื่อระดับแรก
ชุดไดนามิกของตัวตรวจสอบความถูกต้อง
ชื่อระดับแรก
ไม่มีอะไรที่ Stack Attack
บล็อก PoS บริสุทธิ์และการลงคะแนนไม่ต้องการพลังการประมวลผล และไม่มีค่าใช้จ่าย (ใน PoW หากคุณขุดบนเชนสั้น คุณจะไม่ได้รับรางวัลหากคุณขุดมัน และพลังการประมวลผลจะสูญเปล่า และมีค่าใช้จ่าย ) ดังนั้น เมื่อ blockchain แยกออก โหนดตรวจสอบความถูกต้องจะไม่รู้ว่าสาขาใดถูกต้อง เพื่อรับรางวัล กลยุทธ์ที่ดีที่สุดคือการโหวตให้แต่ละสาขา เพื่อลงโทษพฤติกรรมประเภทนี้ โดยทั่วไป PoS กำหนดให้โหนดการยืนยันต้องจ่ายเงินมัดจำก่อนลงคะแนนเสียง เมื่อพบว่า มีคนเก็งกำไรในแต่ละสาขา เงินมัดจำนั้นจะถูกยึด
ชื่อระดับแรก
การโจมตีระยะไกล
การโจมตีระยะไกลหมายถึงสามสถานการณ์ต่อไปนี้:
ในกรณีของ PoS บริสุทธิ์ เนื่องจากไม่มีค่าใช้จ่ายในการสร้างบล็อกใน PoS บริสุทธิ์ จึงเป็นเรื่องง่ายที่จะสร้างโซ่แยกที่ยาวกว่าโซ่จริง
ในกรณีของ PoW สมมติว่าโหนดที่เป็นอันตรายมีอำนาจการประมวลผลมากกว่า 51% โหนดเหล่านี้สามารถสร้างห่วงโซ่แยกที่ยาวกว่าห่วงโซ่จริงได้ สถานการณ์แบบนี้ค่อนข้างหายากเพราะมีค่าใช้จ่ายสำหรับการผลิตบล็อก PoW ด้วยพลังการประมวลผลที่มากขนาดนี้ อย่างไรก็ตาม หากโหนดที่เป็นอันตรายมีการทำธุรกรรมเป็นจำนวนมากเมื่อนานมาแล้ว โดยได้รับแรงหนุนจากกำไร โหนดที่เป็นอันตรายยังมีแรงจูงใจที่จะแยกใหม่และใช้จ่ายเงินเป็นสองเท่า ในกรณีนี้ โหนดที่เป็นอันตรายจะเปิดตัว การโจมตีระยะไกล
กรณีที่สามใช้ได้กับ PoS และ PoW หากโหนดแบบเต็มใหม่เพิ่งออนไลน์ จะมีการเชื่อมต่อกับโหนดที่เป็นอันตรายหลายโหนดเพื่อเริ่มซิงโครไนซ์บล็อก สายโซ่ยังคงยาว ในเวลานี้ แม้ว่าโหนดแบบเต็มที่ซื่อสัตย์จะเป็น การเชื่อมต่อในภายหลัง ห่วงโซ่ที่ส่งโดยโหนดเต็มจะสั้นลงและจะถูกปฏิเสธโดยโหนดใหม่ ที่น่าอาย
สำหรับกรณีที่ 1 และ 3 ปัญหาจะเหมือนกันทุกประการ เมื่อได้รับ chain ที่ยาวขึ้น จะตัดสินได้อย่างไรว่าจริงหรือเท็จ? Vitalik ในโพสต์นี้Proof of Stake: How I Learned toLove Weak Subjectivity อธิบายวิธีแก้ปัญหาเรายังต้องแนะนำความรู้เล็กน้อยและความไว้วางใจจากโลกภายนอกซึ่งเรียกว่าความเป็นส่วนตัวที่อ่อนแอ V God เชื่อว่าความไว้วางใจที่อ่อนแอแบบนี้ง่ายต่อการบรรลุดังนั้นจึงไม่ทำให้ความปลอดภัยของ บล็อกเชน เมื่อโหนดใหม่ออนไลน์ จำเป็นต้องได้รับและเชื่อถือความรู้ต่อไปนี้จากโลกภายนอก:
1. คำจำกัดความของโปรโตคอล ง่ายต่อการจัดการ โปรโตคอลของ blockchain มีอยู่ในรหัส เวอร์ชันของรหัสที่โหนดใหม่เรียกใช้หมายความว่าโหนดนั้นเชื่อถือรหัสตามค่าเริ่มต้น
2. บล็อกที่ถูกต้องล่าสุด บล็อกนี้ต้องไม่เก่าเกินไป ต้องอยู่ภายใน N สุดท้าย N สามารถกำหนดล่วงหน้าได้ตราบเท่าที่ยังใหม่เพียงพอ ตัวอย่างเช่น สำหรับ Bitcoin บล็อกใด ๆ ภายใน 6 บล็อกล่าสุดถือว่าใหม่พอ สำหรับ Ethereum บล็อก 12 บล็อกล่าสุดค่อนข้างใหม่ขึ้น
สำหรับ 2 ปัญหาใหญ่มาก เมื่อโหนดเต็มใหม่ออนไลน์ฉันจะรับบล็อกที่ถูกต้องล่าสุดได้ที่ไหน จำเป็นต้องแนะนำความรู้ด้านความน่าเชื่อถือเพิ่มเติมที่นี่ ตัวอย่างเช่น สำหรับ CasperFFG เมื่อโหนดใหม่ออนไลน์ ควรเชื่อถือเฉพาะโหนดเต็มรูปแบบที่ชำระเงินมัดจำ และเป็นการดีที่สุดที่จะเชื่อมต่อหลาย ๆ โหนดเพื่อรับบล็อกสุดท้ายที่เสร็จสมบูรณ์ เมื่อคุณได้รับบล็อกสุดท้ายที่เสร็จสิ้นแล้ว คุณสามารถเริ่มการซิงโครไนซ์ได้อย่างมั่นใจ แม้ว่าคุณจะได้รับเชนที่ยาวขึ้นจากโหนดที่เป็นอันตราย เนื่องจากค่าแฮชของบล็อกของโหนดที่เป็นอันตรายจะต้องแตกต่างกันที่ความสูงเดียวกัน มันสามารถ ถูกตัดสินว่าต้องเป็นโซ่ปลอม โยนโซ่นี้ทิ้งไป
กล่าวโดยสรุป เพื่อจัดการกับการโจมตีระยะไกล จำเป็นต้องอาศัยความรู้เล็กน้อยจากโลกภายนอกเพื่อป้องกันการโจมตีดังกล่าว
ชื่อระดับแรก
กรณีของการชนครั้งใหญ่ (การชนแบบภัยพิบัติ)
หากมากกว่า 1/3 ของโหนดการตรวจสอบขัดข้องในเวลาเดียวกัน หรือเครือข่ายมีปัญหาที่ทำให้ออฟไลน์ หรือเครือข่ายแยก เป็นไปไม่ได้ที่จะรวบรวมคะแนนเสียงมากกว่า 2/3 เมื่อลงคะแนนที่นี่ เวลา กล่าวคือ จากนี้ไป จะไม่สามารถสร้าง supermajoritylink ใหม่ได้ นั่นคือไม่สามารถปิดบล็อกใหม่ใดๆ ได้
กระดาษแนะนำวิธีการที่เรียกว่า Inactivity leak เคล็ดลับคือการทำให้เครือข่ายย่อยทั้งสองทำงานแยกกัน โหวตต่อไปโดยอิสระ และจบการบล็อกใหม่
สรุป
สรุป
อัลกอริทึม Casper FFG ประกอบด้วย 3 ส่วน: 2 เงื่อนไขการลงโทษ (เงื่อนไขเครื่องหมายทับ) กฎการเลือกทางแยก (กฎการเลือกทางแยก) และชุดโหนดการตรวจสอบแบบไดนามิก Casper FFG ใช้ได้กับอัลกอริธึม PoW ใดๆ ก็ตาม ปรับปรุงความปลอดภัยของอัลกอริทึม PoW
กลไกการสร้างบล็อกของ Casper FFG คือ PoW (กลไกการนำเสนอบล็อกตาม PoW) ในอนาคต กลไกการสร้างบล็อกจะถูกแทนที่ด้วย PoS ซึ่งเป็น PoS บริสุทธิ์
เกี่ยวกับความซับซ้อนของการสื่อสารเครือข่าย ในขั้นตอน PoW จะเป็น O(n) และในขั้นตอนการลงคะแนนเสียง BFT จะเป็น O(n2) โดยทั่วไป เนื่องจากขีดจำกัดของทุน จำนวนโหนดการตรวจสอบจึงมีน้อยเมื่อเทียบกับโหนดเครือข่ายทั้งหมด ดังนั้นแม้ว่าจะเป็น O(n2) เนื่องจาก n มีขนาดเล็ก ปริมาณการสื่อสารก็ยังค่อนข้างน้อย
เกี่ยวกับความทนทานต่อข้อผิดพลาดสูงสุด ในขั้นตอน PoW พลังการประมวลผลของโหนดที่เป็นอันตรายสามารถทนได้น้อยกว่า 50% และในขั้นตอนการลงคะแนนเสียง BFT จำนวนเงินที่โหนดที่เป็นอันตรายต้องการจะน้อยกว่า 1/3 ใน สรุปอย่างง่ายๆ และคร่าวๆ ค่าความคลาดเคลื่อนสูงสุดที่ยอมรับได้คือ 1/3
สมมติฐานเครือข่ายเป็นแบบซิงโครนัสในขั้นตอน PoW และแบบอะซิงโครนัสในขั้นตอนการลงคะแนนเสียง BFT โดยทั่วไป สมมติฐานเครือข่ายเป็นแบบซิงโครนัส
เกี่ยวกับ Finality นั้นมีความน่าจะเป็นในขั้น PoW และจะกลายเป็นตัวกำหนดหลังจากการลงคะแนนเสียง BFT และโดยทั่วไปจะเป็นตัวกำหนด
อ้างอิง
อ้างอิง
Casper the Friendly Finality Gadget
EthereumPoS: Casper FFG In Depth - YouTube
Ethereum PoS Overview: Casper FFG
Casper FFG with one message type,and simpler fork choice rule
Ethereum Casper 101
A Simplified Look at Ethereum’sCasper
Consensus Compare: Casper vs.Tendermint - Medium
Proof of Stake: How I Learned toLove Weak Subjectivity
