คำเตือนความเสี่ยง: ระวังความเสี่ยงจากการระดมทุนที่ผิดกฎหมายในนาม 'สกุลเงินเสมือน' 'บล็อกเชน' — จากห้าหน่วยงานรวมถึงคณะกรรมการกำกับดูแลการธนาคารและการประกันภัย
ข่าวสาร
ค้นพบ
ค้นหา
เข้าสู่ระบบ
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
ดูตลาด
นับถอยหลัง 12 ชั่วโมง ทบทวนการเปลี่ยนแปลงเจ็ดปีในเลเยอร์โปรโตคอล Ethereum
PANews
特邀专栏作者
2022-09-14 14:00
บทความนี้มีประมาณ 4910 คำ การอ่านทั้งหมดใช้เวลาประมาณ 8 นาที
เมื่อมองย้อนกลับไปในประวัติศาสตร์ ทุกๆ ย่างก้าวสู่ "โลกคอมพิวเตอร์" ถูกพิมพ์ด้วยรหัสท

ชื่อเดิม:

ชื่อเดิม:ชื่อเรื่องรอง

อีเธอเรียมคืออะไร

อีเธอเรียมคืออะไร? ผู้คนนับพันมีคำตอบเป็นพันคำตอบ และสิ่งที่บทความนี้ต้องการพูดถึงคือคำตอบที่สอดคล้องกันมากที่สุด นั่นคือโปรโตคอลของ Ethereum คืออะไร? หรือในคำอธิบายทางเทคนิคเพิ่มเติม-หากฉันต้องการพัฒนาไคลเอ็นต์ Ethereum (PoW chain/ETH1) ฉันต้องปฏิบัติตามกฎอะไรบ้าง

ชื่อระดับแรก

ภาพรวม

ภาพรวม

การฮาร์ดฟอร์กก่อนหน้าของ Ethereum สามารถผ่านไปได้หน้านี้ตรวจสอบ. นับตั้งแต่เปิดตัวเมื่อวันที่ 30 กรกฎาคม 2015 มีการดำเนินการฮาร์ดฟอร์กทั้งหมด 14 ครั้ง รวมถึง EIP 39 ครั้ง ("คอนสแตนติโนเปิล" และ "ปีเตอร์สเบิร์ก" ถือว่าเหมือนกัน) Hard Fork สองอันที่อยู่ใกล้ที่สุดนั้นห่างกัน 26 วัน และ Hard Fork สองอันที่อยู่ไกลที่สุดนั้นห่างกัน 490 วัน

Hard Fork แบ่งออกเป็น "การอัปเกรดที่ใช้งานอยู่" และ "การอัปเกรดแบบพาสซีฟ" การอัปเกรดแบบแอ็คทีฟหมายถึงความคิดริเริ่มของทีมพัฒนาในการแก้ไขโปรโตคอล Ethereum ในขณะที่การอัปเกรดแบบพาสซีฟเป็นการกระทำที่ "ต้องทำ" เพื่อจัดการกับความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้น การอัปเกรดแบบพาสซีฟประกอบด้วยอย่างน้อย "DAO Fork", "Tangerine Whistle", "Spurious Dragon", "Muir Glacier", "Arrow Glacier" และ "Gray Glacier" ซึ่งจะจัดการกับการโจรกรรมของแฮ็กเกอร์ (DAO Fork) หรือจัดการกับ การโจมตี DDOS (Tangerine Whistle, Spurious Dragon) หรือเพียงแค่ทิ้งระเบิดความยากลำบาก (Muir Glacier, Arrow Glacier, Grey Glacier) "การอัปเกรดที่ใช้งานอยู่" เป็นไปตามแผนของสมุดปกขาว (อย่างน้อยในแง่ของการตั้งชื่อ), Frontier (Frontier, Frontier Thawing), Homestead, Metropolis (Byzantium, Constantinople/Petersburg, Istanbul) ในขณะที่เบอร์ลินและลอนดอน เกิดขึ้นหลังจากการเปลี่ยนแปลงแผนงานของ Ethereum การอัปเกรดเฉพาะกาล นอกจากนี้ การอัปเกรดเชิงรุกหลายรายการยังรวมตัวเลือกในการเลื่อนระเบิดความยากออกไปด้วย

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

การตีความตัวแทนฮาร์ดฟอร์ก

DAO ส้อม

  • DAO ส้อม

งาน DAO fork เป็นงานที่กว้างไกลที่สุดในการพัฒนา Ethereum เนื่องจากสัญญาอัจฉริยะของ DAO ถูกแฮ็ก แฮ็กเกอร์ขโมยอีเธอร์ประมาณ 3.6 ล้านรายการ แต่มีการหยุดทำงานเป็นเวลา 28 วัน ในช่วงเวลานี้ ด้วยความช่วยเหลือของ Carbonvote ผู้ถือโทเค็นแสดงความปรารถนาของพวกเขา และมูลนิธิ Ethereumตัดสินใจเงินส่วนนี้จะถูกโอนไปยังสัญญาอัจฉริยะใหม่ ทำให้นักลงทุนสามารถถอนออกได้ ทางแยกนี้สร้าง Ethereum Classic ซึ่งก่อให้เกิดการถกเถียงทางสังคมมากมาย

  • DOS เซี่ยงไฮ้

ในช่วง Devcon 2 นักพัฒนาหลักของ Ethereum รวมตัวกันที่เซี่ยงไฮ้ แต่เครือข่าย Ethereum ประสบปัญหาการรับส่งข้อมูลเครือข่ายจำนวนมากจู่โจมส่งผลให้เกิดการปฏิเสธการให้บริการ (DOS) เนื่องจากทรัพยากรระบบจริงที่ใช้โดยรหัสการดำเนินการ EXTCODESIZE นั้นสูงกว่าค่าธรรมเนียมการทำธุรกรรมที่ผู้โจมตีต้องจ่าย ผู้โจมตีจึงเรียกใช้รหัสการดำเนินการนี้ซ้ำๆ ทำให้โหนดส่วนใหญ่ในเครือข่ายทั้งหมดไม่สามารถติดตามบล็อกล่าสุดได้ ในขณะที่ประสานพูลการขุดและโหนดทั้งหมดเพื่อเปิดใช้งานไคลเอนต์ Parity ที่ได้รับผลกระทบน้อยลง นักพัฒนาได้เจรจาเพื่อลดก๊าซบล็อก (จาก 5 M เป็น 1.5 M) ในท้ายที่สุด ด้วยความช่วยเหลือของ Tangerine Whistle และ Spurious Dragon ด้วยความช่วยเหลือของ hard fork ราคาของ opcodes ที่เกี่ยวข้องจึงได้รับการปรับ และสถานะก็ได้รับการทำความสะอาดเพื่อบรรเทาผลกระทบจากการโจมตีของ DOS การฮาร์ดฟอร์กนี้ยังทำให้เกิดผลกระทบตามมา เนื่องจากการนำ EIP-161 ไปใช้อย่างไม่เหมาะสม (รวมอยู่ใน Spurious Dragon) (Go-ethereum และ Parity ต่างก็นำไปใช้อย่างไม่ถูกต้อง) ส่งผลให้เกิดการแยกเป็นเอกฉันท์

  • บุกสองปราสาท

ตาม

ตามรายงานของ ChainSecurityEIP-1283 จะแนะนำความเสี่ยงของการโจมตีซ้ำสำหรับบางสัญญา TrailOfBits ให้การวิเคราะห์ที่ละเอียดยิ่งขึ้นและจัดทำรายการสัญญาที่อาจได้รับผลกระทบ 32 ชั่วโมงก่อนการเปิดใช้งานฮาร์ดฟอร์ก Ethereum Foundation ได้ออกเอกสารเตือนโหนดให้อัปเกรดหรือดาวน์เกรดเพื่อเลื่อนการอัปเกรดคอนสแตนติโนเปิล จากนั้นจึงออกเวอร์ชันใหม่เพื่อแนะนำปีเตอร์สเบิร์กฮาร์ดฟอร์ก ฮาร์ดฟอร์กคอนสแตนติโนเปิลสูงหรือปิดใช้งาน

  • วิกฤตระเบิด

เหตุผลที่มีเวลาเพียง 26 วันระหว่างฮาร์ดฟอร์กทั้งสองของ Muir Glacier และอิสตันบูล เนื่องจากผู้พัฒนาหลักคำนวณเวลาการระเบิดของระเบิดความยากลำบากผิดพลาด ซึ่งส่งผลให้ข้อเสนอในการชะลอการระเบิดความยากลำบากไม่รวมอยู่ในอิสตันบูล เมื่อพบว่าระเบิดความยากกำลังจะส่งผลกระทบต่อเครือข่ายการประชุมนักพัฒนาหลักครั้งที่ 76EIP-2384 ได้รับการยอมรับอย่างรวดเร็วและรวมอยู่ในฮาร์ดฟอร์ก Muir Glacier

การเปลี่ยนแปลงกระบวนการตัดสินใจแบบฮาร์ดฟอร์ก

Hard Fork ตัดสินใจอย่างไร? ในความเป็นจริง Ethereum ขาดเอกสารที่เป็นลายลักษณ์อักษรมาเป็นเวลานานและอาศัย "ฉันทามติทางสังคม" มากกว่า (โปรดแก้ไขฉันหากฉันผิด) EIP-233 พยายามทำให้กระบวนการ Forking เป็นทางการ แต่ไม่ได้รับการยอมรับ

แม้ว่าบทความนี้จะไม่สามารถแสดงการอภิปรายเกี่ยวกับกระบวนการตัดสินใจแบบ Hard Fork ในชุมชน Ethereum ได้ แต่กระบวนการตัดสินใจแบบ Hard Fork ใน Ethereum ได้เปลี่ยนไปอย่างชัดเจน ก่อนการฮาร์ดฟอร์กของเบอร์ลิน นักพัฒนาซอฟต์แวร์จะกำหนดเวลาของการฮาร์ดฟอร์กก่อน แล้วจึงตัดสินใจว่าจะรวม EIP ใด จากนั้นนำไปใช้และทดสอบ การฮาร์ดฟอร์กทุกครั้งก่อนถึงเบอร์ลินคือ Meta EIP ตัวอย่างเช่น การฮาร์ดฟอร์กของอิสตันบูลผ่านไปแล้วEIP-1679คำจำกัดความ (เรียกว่า HFM-1679)

Martin Holst Swende นำเสนอกระบวนการฮาร์ดฟอร์กที่เน้น EIP เป็นศูนย์กลางมุมมองหลักคือการแยกการยอมรับ EIP ออกจาก hard fork นักพัฒนาหลักมุ่งเน้นไปที่การอนุมัติ การนำไปใช้ และการทดสอบ EIP เดียว เมื่อยอมรับ EIP เดียว การ hard fork ที่ตามมาสามารถเลือกที่จะรวม EIP . Berlin hard fork เลิกใช้งาน แม้ว่าในขณะที่เขียนยังไม่พบว่ากระบวนการนี้ได้รับการยอมรับจาก Ethereum core devs อย่างไรHFM-2070, แต่การรับเป็นบุตรบุญธรรมมีการปฏิบัติตามกระบวนการที่เสนอโดยมาร์ติน

การเปลี่ยนแปลงในกระบวนการตัดสินใจเกิดขึ้นอย่างรวดเร็ว และสองสัปดาห์ก่อนการเปิดใช้งาน Berlin hard fork testnet นักพัฒนามีส่วนร่วมในการถกเถียงอย่างเผ็ดร้อนเกี่ยวกับการเลิกใช้ EIP-2315 และในที่สุดก็ลบ EIP-2315 เนื่องจากการนำกระบวนการใหม่มาใช้ การเปลี่ยนแปลงในนาทีสุดท้ายจึงไม่ส่งผลกระทบต่อฮาร์ดฟอร์กมากนัก และในที่สุดก็เกิดขึ้นตามกำหนดเวลา สำหรับรายละเอียดเพิ่มเติม โปรดดูที่ "การนำ EIP-2315 ออก: เบรกฉุกเฉินก่อนอัปเกรด Ethereum Berlin

ไม่เปลี่ยนแปลง

รายงานการวิจัยรายงานการวิจัย

การวิเคราะห์เชิงลึกของ EIP

EIP เหล่านี้มีผลกระทบอย่างไรต่อ Ethereum และใครบ้างที่มีอิทธิพลต่อการตัดสินใจของ Ethereum บทความนี้จะแยกแยะ EIP ทั้งหมดที่รวมอยู่ใน Ethereum hard fork (ไม่รวมข้อเสนอเมตา) โปรดดูรายละเอียดที่ลิงก์

https://primitiveslane.notion.site/cbd45cf0289c414b86715b8a9e71b28e?v=838baf2ac3a442a6b3fa03e58c5dc0ae

EIPs กำลังทำอะไรอยู่

ประเภทของ EIP ที่รวมอยู่ใน hard fork ส่วนใหญ่รวมถึงการเปลี่ยนแปลงรูปแบบการเรียกเก็บเงิน การแนะนำ opcodes ใหม่ ระเบิดความยาก แบบจำลองทางเศรษฐกิจ การรวบรวมล่วงหน้า การพิจารณาด้านความปลอดภัย เป็นต้น

  • การเปลี่ยนแปลงรูปแบบการเรียกเก็บเงิน

การเปลี่ยนแปลงรูปแบบการเรียกเก็บเงินคือจำนวน EIP ที่ใหญ่ที่สุด โดยมีทั้งหมด 10 รายการ คิดเป็น 25.6% โดยจะปรับสมดุลความไม่ลงตัวระหว่างปริมาณการใช้ก๊าซและทรัพยากรระบบจริงโดยการเพิ่มหรือลดราคาต่อหน่วยของรหัสการดำเนินการ ซึ่งสามารถขจัดอันตรายที่ซ่อนอยู่ของระบบที่ถูกโจมตีโดย DOS หรืออำนวยความสะดวกในการปรับใช้แอปพลิเคชันบางประเภท อันตรายที่ซ่อนอยู่ใน DOS บางอย่างเกิดจากการประเมินทรัพยากรระบบผิดพลาด EIP-150 และ EIP-160 ช่วยแก้ปัญหานี้ได้ ในขณะที่ อันตรายที่ซ่อนอยู่ใน DOS อีกส่วนหนึ่งเป็นลักษณะเฉพาะของระบบ ด้วยการเติบโตของข้อมูลสถานะ ทรัพยากรที่แท้จริงของสถานะการเข้าถึง ปริมาณการใช้ข้อมูลก็เพิ่มขึ้นตามไปด้วย ดังนั้นราคาต่อหน่วยของรหัส opcode ที่เกี่ยวข้องจึงจำเป็นต้องปรับเป็นระยะ โดยทั่วไปคือ EIP-1884 (หนึ่งใน EIP ที่เขียนได้ดีที่สุดในความคิดของฉัน)

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

  • เปิดตัว opcodes ใหม่

EIP ทั้งหมด 9 รายการแนะนำ opcodes ใหม่ให้กับ Ethereum Virtual Machine (ไม่รวม EIP-1884) ซึ่งคิดเป็น 23.08% สิ่งที่มีอิทธิพลมากกว่า ได้แก่ EIP-7 (DELEGATECALL), EIP-1014(CREATE2), EIP-3198(BASEFEE) เป็นต้น

  • ระเบิดความยากลำบาก

EIP ทั้งหมด 6 รายการกำลังเลื่อนการระเบิดความยาก คิดเป็น 15.4% มีการฮาร์ดฟอร์ก 2 ครั้งพร้อมกับการปรับรูปแบบเศรษฐกิจ นั่นคือ การลดรางวัลบล็อกใหม่ ส้อมสามอันเหล่านี้ถูกนำมาใช้เพื่อหน่วงเวลาระเบิดความยากเท่านั้น ส้อมแข็งที่มีชื่อ Glacier สำหรับประวัติของความยากลำบากระเบิด ดูแบบจำลองทางเศรษฐกิจ

  • แบบจำลองทางเศรษฐกิจ

มี 4 EIP ที่มีผลกระทบต่อโมเดลเศรษฐกิจ 2 ได้ลดรางวัลบล็อกใหม่ 1 ได้ปรับโมเดลการคำนวณความยาก (EIP-100) และ EIP-1559 ซึ่งทำให้เกิดข้อโต้แย้งมากขึ้น ได้ปรับตลาดค่าธรรมเนียม .

  • คอมไพล์ล่วงหน้า

มี 4 EIP ที่จะคอมไพล์การดำเนินการเข้ารหัสบางอย่างล่วงหน้า ดังนั้นจึงไม่จำเป็นต้องดำเนินการใน EVM เพื่อปรับปรุงประสิทธิภาพการทำงาน รวมถึง EIP-152, EIP-196, EIP-197, EIP-198

  • ข้อพิจารณาด้านความปลอดภัย

อื่น

  • อื่น

EIP อื่นๆ ยังรวมถึงการปรับปรุงโปรโตคอลเครือข่าย (EIP-8) การเพิ่มอินเทอร์เฟซสถานะการดำเนินการธุรกรรม (EIP-658) การเพิ่มประเภทธุรกรรมใหม่ (EIP-2718) เป็นต้น นอกจากนี้ EIP-2 ยังมีการอัปเดตทั้งหมดของ Homestead ซึ่งซับซ้อนกว่า

ใครมีส่วนร่วมใน EIP

มีทั้งหมด 43 คนและ 77 คนมีส่วนร่วมในการเขียน EIP เหล่านี้ ในจำนวนนี้ผู้เขียน 11 คนมีส่วนร่วมใน EIP มากกว่า 2 (รวม) Vitalik Buterin มีส่วนร่วมในการเขียนมากที่สุดโดยมีทั้งหมด 17 รายการคิดเป็น 43.6% Martin Swende และ Christian Reitwiessner เข้าร่วม 5 คน Alex Beregszaszi และ James Hancock เข้าร่วม 3 คน และที่เหลือเข้าร่วมไม่เกิน 2 คน

Martin Swende เป็นผู้อำนวยการด้านความปลอดภัยของ Ethereum Foundation, วิศวกรของ Go-ethereum และผู้เสนอกระบวนการ hard fork ที่มีศูนย์กลางอยู่ที่ EIP; Christian Reitwiessner เป็นผู้ประดิษฐ์ภาษา Solidity

สรุป

สรุป

บทความนี้จะแนะนำการ Hard Fork ก่อนหน้านี้ในประวัติศาสตร์ของ Ethereum ตีความเหตุการณ์ที่เกิดขึ้นเบื้องหลังการ Hard Fork หลายครั้ง และอธิบายรายละเอียดเกี่ยวกับการเปลี่ยนแปลงกระบวนการตัดสินใจ Hard Fork ของ Ethereum เป็น EIP เป็นศูนย์กลาง บทความนี้ยังให้การวิเคราะห์เชิงลึกเกี่ยวกับบทบาทของ EIP ในการฮาร์ดฟอร์กครั้งก่อนๆ และผู้มีส่วนร่วมที่อยู่เบื้องหลัง

Ethereum กำลังจะนำเข้าสู่ยุคใหม่และอดีตก็มาถึง ผู้อ่าน คุณรู้สึกอย่างไร?

การอ่านแบบขยาย

https://github.com/ethereum/execution-specs

https://github.com/ethereum/go-ethereum/blob/d10c28030944d1c32febba3f45ae8c175ab34063/params/config.go

https://www.ethereum.cn/the-history-of-ethereum-hard-forks

https://etherscan.io/chart/gaslimit

https://github.com/ethereum/go-ethereum/pull/3341/files#r89548312

https://blog.ethereum.org/2019/01/15/security-alert-ethereum-constantinople-postponement

https://ethereum-magicians.org/t/hardfork-meta-eip-2070-berlin-discussion/3561

https://notes.ethereum.org/@holiman/S1ELAYY7S?type=view

ข้อตกลงร่วมกัน

งานนี้ได้รับอนุญาตภายใต้ Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

ETH
ยินดีต้อนรับเข้าร่วมชุมชนทางการของ Odaily
กลุ่มสมาชิก
https://t.me/Odaily_News
กลุ่มสนทนา
https://t.me/Odaily_CryptoPunk
บัญชีทางการ
https://twitter.com/OdailyChina
กลุ่มสนทนา
https://t.me/Odaily_CryptoPunk
สรุปโดย AI
กลับไปด้านบน
เมื่อมองย้อนกลับไปในประวัติศาสตร์ ทุกๆ ย่างก้าวสู่ "โลกคอมพิวเตอร์" ถูกพิมพ์ด้วยรหัสท
ดาวน์โหลดแอพ Odaily พลาเน็ตเดลี่
ให้คนบางกลุ่มเข้าใจ Web3.0 ก่อน
IOS
Android