ทีมพัฒนาของ zkSync กล่าวว่าได้คิดค้นวิธีแก้ปัญหาเพื่อปลดล็อก 921 ETH (1.7 ล้านดอลลาร์) ที่ติดอยู่ใน Smart contract ที่ทีมชื่อ Gemholic ใช้บนเครือข่าย Era zkSync ซึ่งเป็นโซลูชันการปรับขนาด ZK-Rollup Layer 2 ที่พัฒนาโดย Matter Labs ซึ่งสามารถรองรับ Ethereum smart contracts
ในแถลงการณ์ zkSync อ้างว่า “เงินทุนปลอดภัย” และ “ได้ค้นพบวิธีการอันสวยงามเพื่อปลดล็อกเงินที่ถูกแช่แข็ง”
TLDR:
— zkSync ∎ (@zksync) April 7, 2023
1) Funds are safe. We found an elegant solution how to unfreeze the contract.
2) Era is not EVM equivalent. This is a deliberate design choice with specific upsides and trade-offs.
3) Following best practices would've prevented the issue:https://t.co/93M5ruljUP
ในวันพฤหัสบดี Eden Au ผู้อำนวยการฝ่ายวิจัยของ The Block เป็นคนแรกที่ทราบว่าโครงการระดมทุนได้ 921 ETH ($1.7 ล้าน) ผ่านการขายโทเค็นบน Era mainnet ของ zkSync แต่เงินกลับติดอยู่ใน Smart contract เนื่องจากปัญหาเกี่ยวกับการใช้ฟังก์ชัน .transfer()
A project on zkSync raised 921 ETH ($1.7M) in a token sale, but funds are stuck forever in the smart contract.
— Eden Au (@0xedenau) April 6, 2023
The transfer() function works on Ethereum and other EVM chains, but not on zkSync. pic.twitter.com/HQiOMrs8GT
โดยเมื่อใช้ฟังก์ชัน .transfer() เพื่อส่ง Ether ไปยัง Smart contract ฟังก์ชัน fallback() จะถูกเรียกใช้ และหากฟังก์ชัน fallback() ต้องการ gas ที่จัดสรรมากกว่า 2300 ธุรกรรมอาจล้มเหลว และเงินจะติด
เพื่อลดปัญหาเหล่านี้ zkSync จะใส่คำเตือนเกี่ยวกับฟังก์ชัน .transfer() ในคอมไพเลอร์โดยตรง โดยทีม zkSync กล่าวเพิ่มเติมว่า Gemholic ปรับใช้สัญญาบน Era mainnet โดยไม่มีการทดสอบบนเครือข่ายทดสอบหรือโหนดในเครื่อง
Unfortunately, the contracts were deployed on Era mainnet without having been tried on the testnet or local node, which would have immediately caught the problem.
— zkSync ∎ (@zksync) April 7, 2023
zkSync กำลังทำงานเพื่อแก้ไขปัญหาเกี่ยวกับการเปลี่ยนแปลงระดับโปรโตคอลเล็กน้อยเพื่อกู้คืนเงินทุนทั้งหมด และมีแผนที่จะเปิดเผยรายละเอียดในไม่ช้า
อ้างอิง : LINK