วิทยาศาสตร์ยอดนิยม: การตีความ Ethereum Yellow Paper (3/7)
หมายเหตุบรรณาธิการ: บทความนี้มาจากผู้ที่ชื่นชอบ Ethereum (ID: Ethfans)ผู้ที่ชื่นชอบ Ethereum (ID: Ethfans)
, ผู้แต่ง: Lucas Saldanha, ผู้แปล & ผู้พิสูจน์อักษร: IAN LIU & A Jian, ทำซ้ำโดย Odaily โดยได้รับอนุญาต
เป็นเวลาที่น่าตื่นเต้นอีกครั้ง เรากลับมาพร้อมกับบล็อกโพสต์เกี่ยวกับ Ethereum Yellow Paper! ในบทความนี้ เราจะเรียนรู้เพิ่มเติมเกี่ยวกับก๊าซและการชำระเงินใน Ethereum ทำความเข้าใจเศรษฐศาสตร์ที่อยู่เบื้องหลัง Ethereum และอธิบายว่าทำไมค่าธรรมเนียมจึงมีความสำคัญในระบบนิเวศ Ethereum
หลังจากอ่านบล็อกโพสต์นี้ คุณจะรู้ว่าเหตุใดต้นทุนการทำธุรกรรมจึงเรียกว่า Gas เข้าใจความแตกต่างระหว่าง GasPrice และ GasLimit และเข้าใจกลยุทธ์ของโหนดขุดแร่เพื่อเลือกธุรกรรมที่จะบรรจุ (บล็อกโพสต์นี้อ้างถึงบทที่ 5 ของ Ethereum Yellow Paper)
ชื่อเรื่องรอง
แนะนำ
แนะนำ
เมื่อฉันเริ่มเรียนรู้ Ethereum ครั้งแรก ความสับสนแรกที่ฉันพบเกี่ยวข้องกับค่าธรรมเนียมการทำธุรกรรม คำถามของฉันคือ "ทำไมต้องจ่ายเงินซื้อ Dapp ถ้าฉันสามารถรับบริการแบบเดียวกับ Dapp ได้ฟรี" - ฉันเพิ่งรู้ว่าตัวเองงี่เง่าและไร้เดียงสาเพียงใด
ทีนี้ลองนึกถึงเครือข่าย Ethereum ว่าเป็นคอมพิวเตอร์ขนาดใหญ่ที่สามารถคำนวณและอ่านและเขียนข้อมูลได้ สิ่งนี้แตกต่างจากคอมพิวเตอร์ที่บ้านของคุณ คอมพิวเตอร์ขนาดมหึมา (Ethereum) นี้ถูกแบ่งปันโดยทุกคน ตราบใดที่มีบัญชี Ethereum ทุกคนสามารถโต้ตอบกับแพลตฟอร์มทั้งหมดได้ เช่น การถ่ายโอน Ethereum และปรับใช้สัญญาอัจฉริยะ เป็นต้น อย่างไรก็ตาม เนื่องจากข้อจำกัดโดยธรรมชาติของระบบแบบกระจาย คำถามที่ว่า "ใครจะเป็นผู้ชำระค่าบริการเหล่านี้" จึงตอบได้ยากกว่า
Gas
ชื่อเรื่องรอง
Gas เป็นหน่วยกำหนดราคาของการคำนวณทั้งหมดใน Ethereum และ Ethereum ใช้ Gas เพื่อแก้ปัญหา "ใครจ่ายค่าบริการ" คุณต้องการโอนเงินไปยังบัญชี Ethereum อื่นหรือไม่? คุณต้องการใช้สัญญาอัจฉริยะเพื่อจัดเก็บรายชื่อติดต่อทางโทรศัพท์หรือไม่? ไม่มีปัญหา โปรดชำระค่าน้ำมันก่อน
เป็นเรื่องง่ายที่จะนึกถึงความสัมพันธ์ระหว่างรถยนต์และเชื้อเพลิง: หากคุณต้องการขับรถจาก A ไป B คุณต้องใช้เชื้อเพลิงบางส่วน ในทำนองเดียวกัน หากคุณต้องการดำเนินการบางอย่างบน Ethereum EVM คุณต้องใช้เชื้อเพลิงด้วยเช่นกัน จ่ายค่าน้ำมัน. ยิ่งรถต้องการขับไปไกลเท่าไหร่ก็ยิ่งต้องการเชื้อเพลิงมากขึ้นเท่านั้น ยิ่งต้องการคำนวณบน Ethereum มากเท่าไหร่ ก็ยิ่งต้องจ่ายแก๊สมากขึ้นเท่านั้น
จากมุมมองอื่น Ethereum ใช้รูปแบบการชำระเงินของผู้ใช้ ซึ่งสามารถหลีกเลี่ยงการใช้ทรัพยากรในทางที่ผิด เมื่อคุณต้องจ่ายสำหรับการดำเนินการแต่ละครั้ง คุณจะเขียนโค้ดให้รัดกุมและมีประสิทธิภาพมากที่สุดเท่าที่จะเป็นไปได้ การมีอยู่ของ Gas ยังสามารถป้องกันผู้โจมตีไม่ให้น้ำท่วมเครือข่าย Ethereum ผ่านการดำเนินการที่ไม่ถูกต้อง (เว้นแต่ผู้โจมตียินดีจ่ายเงินจำนวนมากเพื่อดำเนินการที่ไม่ถูกต้อง)
ชื่อเรื่องรอง
แก๊สราคาและแก๊สลิมิต
ตอนนี้เราเข้าใจเรื่องแก๊สแล้ว ก็ถึงเวลาที่จะพูดถึงว่าควรตั้งราคาแก๊สอย่างไร อันดับแรก เราจะกลับไปที่ตัวอย่างรถยนต์และเชื้อเพลิง
ถ้าถังน้ำมันรถคุณจุได้ 50 ลิตร คุณจะจ่ายค่าเติมเท่าไหร่? มันขึ้นอยู่กับราคาต่อลิตรที่ปั๊มน้ำมันใช่ไหม? ราคาน้ำมันใน Ethereum เท่ากัน! หากคุณต้องการทำธุรกรรมที่มีค่าใช้จ่าย 10 Gas ค่าธรรมเนียมที่คุณจ่ายจะขึ้นอยู่กับราคาต่อหน่วยของ Gas
แล้วเราจะรู้ราคาต่อหน่วยของก๊าซได้อย่างไร? มีคำพูดที่ทำให้เข้าใจผิด: คุณสามารถสั่งได้มากเท่าที่คุณต้องการ แม้ว่าจะไม่มีอะไรผิดปกติจากมุมมองทางเทคนิค แต่เราต้องการความรู้เพิ่มเติมเพื่อเป็นข้อมูลเบื้องต้นในการทราบราคาของก๊าซ
หากคุณอ่านบทความก่อนหน้านี้ในชุดการวิเคราะห์ Ethereum คุณควรจำไว้ว่าโครงสร้างธุรกรรม Ethereum ประกอบด้วย gasPrice และ gasLimit ในส่วนอื่นๆ
gasPrice ระบุราคาที่ผู้ส่งธุรกรรมยินดีจ่ายต่อหน่วยของก๊าซ (หน่วยวัดเป็น Wei) ซึ่งหมายความว่าผู้ส่งธุรกรรมสามารถกำหนดราคาต่อหน่วยของก๊าซที่ผู้ส่งธุรกรรมยินดีจ่ายได้ สมมติว่าการทำธุรกรรมมีค่าใช้จ่าย 10 Gas และเรายินดีจ่าย 3 Wei/Gas ต้นทุนรวมของการส่งธุรกรรมนี้คือ 30 Wei (ไม่ใช่มูลค่าจริง เพื่อให้ทุกคนเข้าใจวิธีการคำนวณ)
gasLimit ระบุปริมาณแก๊สที่ผู้ส่งธุรกรรมยอมรับในการดำเนินการธุรกรรม เนื่องจากบางครั้งคุณไม่สามารถทราบได้แน่ชัดว่าต้องใช้ Gas เท่าใดในการทำธุรกรรม หรือมีข้อผิดพลาดวนซ้ำไม่สิ้นสุดในสัญญาอัจฉริยะของคุณ หากไม่มี GasLimit สิ่งนี้จะทำให้ยอดเงินในบัญชีของผู้ส่งผิด หมด gasLimit เป็นกลไกการรักษาความปลอดภัยเพื่อป้องกันไม่ให้ใครบางคนใช้อีเทอร์ทั้งหมดในบัญชีเนื่องจากการคำนวณผิดหรือข้อผิดพลาด
ชื่อเรื่องรอง
คนขุดแร่
คนขุดแร่
บล็อกเป็นโครงสร้างข้อมูลที่ประกอบด้วยชุดของธุรกรรม และโหนดขุดใน Ethereum มีหน้าที่สร้างบล็อกในห่วงโซ่ เมื่อสร้างบล็อก นักขุดจะเลือกธุรกรรมจากกลุ่มแคชของธุรกรรม (กองของธุรกรรมที่รอการบรรจุ) และเริ่มสร้างบล็อก
ฉันจะไม่ลงรายละเอียดเกี่ยวกับอัลกอริทึมการขุด Ethereum ในตอนนี้ (อาจจะกล่าวถึงในบทความถัดไป) ทุกคนต้องจำไว้ว่าการขุดเป็นกระบวนการที่มีราคาแพง ดังนั้นหากการขุดไม่ได้รางวัล จะต้องมี ไม่มีคนงานเหมืองคนใดเต็มใจที่จะทำ!
ใน Ethereum ทุกครั้งที่นักขุดสร้างบล็อกสำเร็จ เขาสามารถรับรางวัลบล็อกและรางวัลตามจำนวนที่กำหนดสำหรับอ้างอิงบล็อกลุง (ไม่ขยายที่นี่) และในขณะเดียวกันก็จะได้รับค่าธรรมเนียมการทำธุรกรรมทั้งหมดที่รวมอยู่ในบล็อกนี้ ดังนั้นยิ่งสูง ราคาน้ำมันถูกกำหนดไว้ในธุรกรรม ยิ่งนักขุดได้รับค่าธรรมเนียมการทำธุรกรรมมากเท่าไหร่ หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับรางวัลนักขุด โปรดดูที่นี่
ลองสมมติสถานการณ์ง่ายๆ Bob มี 200 wei ในบัญชี John มี 100 wei ในบัญชี และทั้งคู่ต้องการส่งธุรกรรมที่มีค่าใช้จ่าย 90 Gas
เมื่อเข้าสู่ลิงค์ของการเลือกธุรกรรมเพื่อบรรจุลงในบล็อก นักขุดมักจะเลือกธุรกรรมที่มีค่าธรรมเนียมการจัดการที่สูงกว่า ในตัวอย่างของเรา ราคาแก๊สของ Bob สูงกว่าของ John ถึงสองเท่า เนื่องจากธุรกรรมทั้งสองต้องใช้ 90 Gas นักขุดที่เลือกธุรกรรมของ Bob จะได้รับรางวัลราคาน้ำมันเป็นสองเท่า

คำอธิบายภาพ
-นักขุดจะเลือกธุรกรรมที่มีราคาน้ำมันสูงสุด-
กลไกการให้รางวัลแก่นักขุดโดยการจ่ายเงินให้กับผู้ส่งธุรกรรมก่อให้เกิดระบบเศรษฐกิจที่ควบคุมตนเองใน Ethereum ผู้ส่งธุรกรรมทำทุกวิถีทางเพื่อลดต้นทุนการทำธุรกรรม ในขณะที่นักขุดหวังว่าจะเพิ่มผลกำไรสูงสุดเสมอ และทั้งสองสร้างความสมดุล ในฐานะผู้ส่งธุรกรรม หากคุณกำหนดราคาแก๊สให้สูงขึ้น หมายความว่านักขุดมีแรงจูงใจมากขึ้นในการจัดแพ็คเกจธุรกรรมของคุณ และยิ่งธุรกรรมของคุณรวมอยู่ในบล็อกได้เร็วเท่าไร
ชื่อเรื่องรอง
สรุปแล้ว
สรุปแล้ว
จากบทความนี้ เราได้เรียนรู้ว่าการทำธุรกรรม Ethereum ต้องใช้น้ำมันเหมือนกับรถยนต์ที่ใช้เชื้อเพลิง ฉันหวังว่าบทความนี้จะให้แนวคิดเกี่ยวกับค่าใช้จ่ายในการคำนวณและเหตุผลที่เราต้องจ่ายเงินเพื่อรับบริการ Ethereum
นอกจากนี้ เรายังกล่าวถึงความสำคัญของ gasPrice และ gasLimit หากสัญญาอัจฉริยะมีข้อบกพร่องหรือการคำนวณผิดพลาด gasPrice สามารถปกป้องผู้ใช้จากการสูญเสียอีเทอร์โดยเปล่าประโยชน์
นอกจากนี้ เรายังศึกษากลไกทางเศรษฐกิจที่อยู่เบื้องหลังค่าธรรมเนียมการทำธุรกรรมและวิธีที่นักขุดเลือกธุรกรรมเพื่อเพิ่มรายได้สูงสุด ตอนนี้เรารู้วิธีปรับ gasPrice เพื่อทำให้ธุรกรรมที่เราส่งน่าสนใจยิ่งขึ้นสำหรับนักขุด เพื่อให้สามารถบรรจุธุรกรรมได้เร็วขึ้น


