การตรวจสอบบนเครือข่ายทดสอบไม่สามารถตรวจจับข้อผิดพลาดทั้งหมดที่อาจเกิดขึ้นในแอปบนเครือข่ายจริงได้ เกร็ก มาร์คู (Greg Markou) ผู้ร่วมก่อตั้งและ CEO ของสปรินเตอร์ (Sprinter) กล่าว พร้อมเรียกอีเธอเรียม (ETH) ว่าเป็น “ระบบขนาดมหึมาที่รวมเป็นก้อนเดียว”
Crypto Briefing รายงานเมื่อวันที่ 12 เวลา 07.43 น. ตามเวลาเกาหลี (KST) ว่ามาร์คูแสดงความเห็นในการอภิปรายสาธารณะของนักพัฒนา ซึ่งพูดถึงความท้าทายในการนำการเปลี่ยนแปลงโปรโตคอลของอีเธอเรียมไปใช้กับบริการจริง
เครือข่ายทดสอบเป็นสภาพแวดล้อมสำหรับให้นักพัฒนาตรวจสอบการเปลี่ยนแปลงของเครือข่ายล่วงหน้า โดยทดลองการทำงานของแอปและโปรโตคอลได้โดยไม่ต้องใช้สินทรัพย์จริง จึงมักใช้เตรียมความพร้อมก่อนอัปเกรด
มาร์คูยอมรับว่าเครือข่ายทดสอบมีประโยชน์ แต่ระบุว่าไม่สามารถจำลองทุกสถานการณ์บนเครือข่ายหลักที่เปิดใช้งานจริงได้ แอปจริงต้องทำงานร่วมกับวอลเล็ต ไลบรารี และสัญญาอื่น ๆ ในรูปแบบที่หลากหลาย
ฮาร์ดฟอร์กคือการอัปเกรดที่เปลี่ยนกฎหลักของเครือข่าย ซอฟต์แวร์ที่สร้างขึ้นโดยอิงกฎเดิมจึงอาจทำงานผิดไปจากที่คาดเมื่อกฎใหม่มีผล
มาร์คูดูแล web3.js ในช่วงการอัปเกรดลอนดอน (London Upgrade) เมื่อเดือนสิงหาคม 2021 โดย web3.js เป็นไลบรารี JavaScript ที่เว็บแอปใช้สื่อสารกับบล็อกเชนอีเธอเรียม การอัปเกรดครั้งนั้นมี EIP-1559 ซึ่งเปลี่ยนระบบค่าธรรมเนียมธุรกรรมรวมอยู่ด้วย
มาร์คูย้อนว่า การตรวจสอบก่อนอัปเกรดในเวลานั้นไม่พบเงื่อนไขการทำงานบางประการที่เกี่ยวข้องกับเมตาแมสก์ (MetaMask) ตามคำอธิบายของเขา แอปเกือบทั้งหมดที่พึ่งพา web3.js ได้รับผลกระทบ
เงื่อนไขคงสภาพ (invariant) คือคุณสมบัติที่นักพัฒนาคาดว่าจะยังคงเป็นจริงระหว่างที่โปรแกรมทำงาน หากสมมติฐานดังกล่าวไม่เป็นจริง แอปที่อาศัยเงื่อนไขนั้นก็อาจได้รับผลกระทบตามไปด้วย
เมื่อมาร์คูเรียกอีเธอเรียมว่า “ระบบขนาดมหึมาที่รวมเป็นก้อนเดียว” เขาหมายถึงเครือข่ายที่มีขนาดใหญ่และเชื่อมโยงองค์ประกอบหลายส่วนเข้าด้วยกัน ทำให้คาดการณ์ได้ยากว่าการเปลี่ยนแปลงส่วนหนึ่งจะกระทบแอปอื่นอย่างไร
มาร์คูร่วมก่อตั้งเชนเซฟ ซิสเต็มส์ (ChainSafe Systems) ซึ่งเขาเคยดูแล web3.js ส่วนสปรินเตอร์ก่อตั้งขึ้นจากเชนเซฟ และปัจจุบันเขาดำรงตำแหน่ง CEO ของบริษัท
ก่อนหน้านี้ มูลนิธิอีเธอเรียม (Ethereum Foundation) และ Verity ได้ตรวจสอบโค้ดการทำงานของสัญญาฝากและถอนตัวของ builder ใน EIP-8282 ด้วยวิธี formal verification โดยพบหลักประกันด้านพฤติกรรมสามข้อและความไม่สอดคล้องที่นักวิจัยต้องแก้ไข การตรวจสอบดังกล่าวครอบคลุมโค้ดและการทำงานของสัญญาเฉพาะ ไม่ใช่ข้อเสนอทั้งหมด
มูลนิธิอีเธอเรียมเคยแจ้งก่อนการอัปเกรด Glamsterdam ว่าการเปลี่ยนวิธีคิดค่าก๊าซอาจทำให้สมมติฐานที่สัญญาบางส่วนพึ่งพาอยู่ใช้ไม่ได้ มูลนิธิระบุว่ากำลังตรวจสอบร่วมกับบริษัทตรวจสอบหลายแห่งและดำเนินการตรวจสอบภายใน แต่ไม่สามารถตรวจโค้ดบนเชนและนอกเชนของทุกโครงการได้โดยตรง
มูลนิธิขอให้โครงการที่พบผลกระทบส่งรายละเอียดกรณีและวิธีทำซ้ำให้ตรวจสอบ ในรายงานที่เกี่ยวข้อง มูลนิธิระบุว่าจะนำความเห็นจากนักพัฒนาไปประกอบการหารือในการประชุมนักพัฒนาหลักครั้งถัดไป ว่าควรเปลี่ยน EIP-8037 และ EIP-8038 หรือไม่
การอภิปรายสาธารณะครั้งนี้ไม่มีการประกาศอัปเกรดใหม่หรือเปลี่ยนแปลงโปรโตคอล มาร์คูอ้างถึงประสบการณ์จากการอัปเกรดในอดีตเพื่อชี้ให้เห็นข้อจำกัดของการตรวจสอบบนเครือข่ายทดสอบ
Comment 0