หากคุณเคยลองอัปเดตโค้ดเบสที่ใช้งานมาหลายปีโดยไม่ให้ทุกอย่างพังทลาย คุณคงรู้ความรู้สึกนั้นดี ลองนึกภาพว่าโค้ดเบสนั้นควบคุมสภาพคล่องใน DeFi มูลค่าหลายล้านดอลลาร์ นักพัฒนา Vyper เพิ่งเปิดตัวเครื่องมือที่ออกแบบมาเพื่อทำให้กระบวนการนั้นน่ากลัวน้อยลงอย่างมีนัยสำคัญ
เครื่องมือนี้มีชื่อว่า vyupgrade และเวอร์ชัน v0.2 ได้เปิดตัวเมื่อวันที่ 29 พฤษภาคม สร้างขึ้นเป็นหลักโดย banteg ผู้มีส่วนร่วมในโครงการ Vyper โดยจะทำการเขียนสัญญาอัจฉริยะ Vyper แบบเก่าใหม่โดยอัตโนมัติให้เป็นซินแทกซ์สมัยใหม่ที่รองรับเวอร์ชันคอมไพเลอร์ถึง v0.4.3 รองรับสัญญาที่เขียนตั้งแต่ซีรีส์ 0.1b* ซึ่งหมายความว่าแม้แต่โค้ด Vyper ยุคแรกสุดก็สามารถนำมาอัปเดตให้ทันสมัยได้
Vyupgrade รับมือกับความเสี่ยงในการย้ายระบบโดยการคอมไพล์สัญญาทั้งเวอร์ชันดั้งเดิมและเวอร์ชันที่แก้ไขใหม่ จากนั้นจึงรันการตรวจสอบความเท่าเทียมกันหลายชุด โดยเปรียบเทียบ ABI ตัวระบุเมธอด และโครงร่างพื้นที่เก็บข้อมูลระหว่างสองเวอร์ชัน หากมีสิ่งใดไม่ตรงกัน หรือหากการเขียนใหม่อาจเปลี่ยนแปลงพฤติกรรม เครื่องมือจะแจ้งเตือนอย่างชัดเจน การเขียนใหม่ที่ถือว่าอาจไม่ปลอดภัยจะถูกชี้ให้เห็นแทนที่จะปล่อยผ่านไปอย่างเงียบๆ
อินเทอร์เฟซนั้นเรียบง่าย นักพัฒนาสามารถรันจาก command line ด้วยคำสั่งเช่น uvx vyupgrade contracts/ โดยมีตัวเลือกรวมถึง –check สำหรับการทดสอบแบบ dry run และ –target-version เพื่อระบุเวอร์ชันคอมไพเลอร์เป้าหมาย
Vyupgrade v0.2 ได้รันทดสอบกับสัญญาจาก Curve, Yearn และ Yield Basis แล้ว นอกจากนี้ยังได้รับการยืนยันความเข้ากันได้กับสัญญายุคแรกอย่าง Uniswap v1 ซึ่งย้อนกลับไปถึงยุคเริ่มต้นของการเทรดบนเชน
สำหรับ Curve โดยเฉพาะนั้น บริบทนี้มีความสำคัญอย่างยิ่ง สัญญาอัจฉริยะของ Curve เป็นที่รู้จักกันดีว่าเขียนด้วย Vyper แทนที่จะเป็น Solidity ซึ่งเป็นทางเลือกที่กลายเป็นดาบสองคมในเดือนกรกฎาคม 2023 เมื่อช่องโหว่ของคอมไพเลอร์ Vyper นำไปสู่การโจมตีหลาย Curve pool เครื่องมือที่ช่วยให้ Curve และโปรโตคอลที่คล้ายกันรักษาสัญญาให้สอดคล้องกับคอมไพเลอร์เวอร์ชันล่าสุดและปลอดภัยที่สุดนั้น ไม่ใช่แค่สิ่งที่มีก็ดี แต่เป็นการตอบสนองโดยตรงต่อบทเรียนจากความเจ็บปวดในอดีต
Vyper ได้รับการออกแบบให้เรียบง่ายและตรวจสอบได้ง่ายกว่า Solidity โดยมีซินแทกซ์แบบ Pythonic ที่จงใจจำกัดสิ่งที่นักพัฒนาทำได้เพื่อลดพื้นที่การโจมตี คอมไพเลอร์ Vyper เองได้รับการพัฒนาอย่างต่อเนื่อง โดย v0.4.x ได้นำการเปลี่ยนแปลงที่มีความหมายมาสู่ภาษา แต่การอัปเกรดคอมไพเลอร์แต่ละครั้งสร้างภาระในการย้ายระบบให้กับสัญญาที่มีอยู่ เครื่องมือที่ทำให้การย้ายระบบนั้นเป็นอัตโนมัติและตรวจสอบความถูกต้องจะขจัดหนึ่งในจุดที่สร้างแรงเสียดทานมากที่สุดในการรักษาโปรโตคอลบน Vyper ให้ทันสมัย
ช่องโหว่ของสัญญาอัจฉริยะยังคงเป็นแหล่งที่มาของการสูญเสียเงินทุนที่ใหญ่ที่สุดใน DeFi และเวอร์ชันคอมไพเลอร์ที่ล้าสมัยเป็นเวกเตอร์การโจมตีที่เป็นที่รู้จักกัน เครื่องมือที่ทำให้การรักษาสัญญาให้อยู่บนเวอร์ชันคอมไพเลอร์ที่ได้รับการแพตช์ล่าสุดเป็นเรื่องง่ายขึ้น จะลดโอกาสของการโจมตีที่สามารถทำให้ TVL ของโปรโตคอลดิ่งลงชั่วข้ามคืนได้โดยตรง
สำหรับโปรโตคอลอย่าง Curve และ Yearn ที่ได้ทดสอบ vyupgrade ไปแล้ว การนำไปใช้อาจเป็นสัญญาณแห่งความน่าเชื่อถือ การประกาศดังกล่าวได้รับความสนใจจากสื่อในวงจำกัด โดยเผยแพร่เป็นหลักผ่าน X และ GitHub repository ของโครงการ แม้ว่าปฏิกิริยาจากชุมชนจะเป็นไปในเชิงบวกอย่างล้นหลาม
The post Vyper Developers Release Vyupgrade for Safe Contract Rewrites appeared first on TheCryptoUpdates.


