ผู้เขียนต้นฉบับ: Vitalik Buterin
ผู้แปล: Odaily Azuma

เมื่อวันที่ 9 มีนาคม Vitalik Buterin ผู้ร่วมก่อตั้ง Ethereum ได้ตีพิมพ์บทความสั้น ๆ ใน Ethereum Research Forum (ethresear.ch) ในหัวข้อ วิธีช่วยเหลือเงินทุนของผู้ใช้จากการโจมตีควอนตัมอย่างกะทันหันผ่าน Hard Forks
ในบทความ Vitalik สรุปวิธีที่ Ethereum สามารถลดการสูญเสียเงินทุนของผู้ใช้ในกรณีฉุกเฉินได้ หากการโจมตีควอนตัมมาถึงพรุ่งนี้ และขั้นตอนใดที่ควรใช้เพื่อเปลี่ยนไปใช้รูปแบบต้านทานควอนตัม จากนั้นจึงกลับมาดำเนินการตามปกติ

ต่อไปนี้เป็นเนื้อหาทั้งหมดของ Vitalik เรียบเรียงโดย Odaily
เราจะทำอย่างไรถ้าคอมพิวเตอร์ควอนตัมพร้อมใช้งานในวันพรุ่งนี้และผู้ไม่ประสงค์ดีได้เข้าถึงคอมพิวเตอร์ดังกล่าวและต้องการใช้คอมพิวเตอร์เพื่อขโมยเงินของผู้ใช้
เทคโนโลยีต้านทานควอนตัม เช่น ลายเซ็น Winternitz และ STARK ได้รับการพัฒนาเพื่อป้องกันไม่ให้สิ่งนี้เกิดขึ้น เมื่อนามธรรมบัญชีพร้อมแล้ว ผู้ใช้ทุกคนสามารถสุ่มสลับไปใช้โครงร่างลายเซ็นต้านทานควอนตัมได้แต่เราจะทำอย่างไรถ้าเราไม่มีเวลามากขนาดนั้น และหากการโจมตีควอนตัมเกิดขึ้นกะทันหันเกินกว่าที่ทุกคนคิด?
ฉันคิดว่า,ที่จริงแล้ว ขณะนี้เรามีเงื่อนไขเพียงพอที่จะแก้ไขปัญหานี้ผ่านทางทางแยกการกู้คืนที่ค่อนข้างง่ายด้วยโซลูชันนี้ เครือข่าย Ethereum จะต้องผ่านการฮาร์ดฟอร์ค และผู้ใช้จะต้องดาวน์โหลดซอฟต์แวร์กระเป๋าสตางค์ใหม่ แต่มีผู้ใช้เพียงไม่กี่รายเท่านั้นที่อาจสูญเสียเงินทุน
ภัยคุกคามหลักจากการโจมตีควอนตัมมีดังนี้ ที่อยู่ Ethereum ได้มาจากการใช้งานฟังก์ชัน keccak(priv_to_pub(k))[12:] โดยที่ k สอดคล้องกับคีย์ส่วนตัว และ priv_to_pub สอดคล้องกับการคูณเส้นโค้งรูปวงรี ซึ่งใช้ในการแปลงคีย์ส่วนตัวให้เป็นคีย์สาธารณะ .
เมื่อคอมพิวเตอร์ควอนตัมเกิดขึ้นจริง การคูณเส้นโค้งวงรีข้างต้นจะสามารถย้อนกลับได้ (เพราะจริงๆ แล้วนี่คือวิธีแก้ปัญหาลอการิทึมแบบไม่ต่อเนื่อง) แต่การดำเนินการแฮชยังคงปลอดภัย หากผู้ใช้ไม่ได้ทำธุรกรรมใด ๆ จะมีการเปิดเผยเฉพาะข้อมูลที่อยู่ซึ่งในกรณีนี้จะยังคงปลอดภัย แต่ตราบใดที่ผู้ใช้ทำธุรกรรมแม้แต่รายการเดียวลายเซ็นธุรกรรมจะเปิดเผยรหัสสาธารณะซึ่งเป็นไปไม่ได้ ในคอมพิวเตอร์ควอนตัมมีความเป็นไปได้ที่จะเปิดเผยคีย์ส่วนตัว ดังนั้นในกรณีนี้ ผู้ใช้ส่วนใหญ่จะมีความเสี่ยง
แต่จริงๆ แล้ว เรามีวิธีในการบรรเทาภัยคุกคามนี้ ประเด็นสำคัญคือ ในทางปฏิบัติ คีย์ส่วนตัวของผู้ใช้ส่วนใหญ่ถูกสร้างขึ้นผ่านชุดการดำเนินการแฮช ตัวอย่างเช่น คีย์ส่วนตัวจำนวนมากถูกสร้างขึ้นโดยใช้ข้อกำหนด BIP-32 ซึ่งสร้างขึ้นผ่านชุดของการดำเนินการแฮชตามชุดคำช่วยจำ วิธีการสร้างคีย์ส่วนตัวที่ไม่ใช่ BIP-32 หลายวิธีเกือบจะคล้ายกัน เช่น ถ้า ผู้ใช้ใช้ มันเป็นกระเป๋าสมองซึ่งมักจะสร้างขึ้นโดยชุดการดำเนินการแฮช (หรือฟังก์ชันการรับคีย์ที่ยากปานกลาง) ของรหัสผ่าน
ซึ่งหมายความว่าการแก้ปัญหาการโจมตีควอนตัมอย่างฉับพลันผ่านทางส้อมบูรณะจะต้องทำตามขั้นตอนต่อไปนี้:
ขั้นแรก ย้อนกลับบล็อกทั้งหมดหลังจากการโจมตีขนาดใหญ่
ประการที่สอง ปิดใช้งานโหมดธุรกรรมแบบเดิมตามที่อยู่ EOA
ประการที่สาม (หากยังไม่ได้ดำเนินการ) ให้เพิ่มประเภทธุรกรรมใหม่เพื่อให้สามารถทำธุรกรรมผ่านกระเป๋าเงินสัญญาอัจฉริยะ (เช่น ส่วนของ RIP-7560)
ประการที่สี่ เพิ่มประเภทธุรกรรมหรือรหัสการดำเนินการใหม่ซึ่งผู้ใช้สามารถให้หลักฐาน STARK ได้ หากผ่านการพิสูจน์รหัสที่อยู่ของผู้ใช้จะถูกเปลี่ยนเป็นรหัสที่ตรวจสอบแล้วใหม่จากนั้นผู้ใช้สามารถใช้ที่อยู่รหัสใหม่ได้ เป็นกระเป๋าเงินสัญญาอัจฉริยะ .
ประการที่ห้า เพื่อจุดประสงค์ในการประหยัดแก๊สและเนื่องจากมีข้อมูลจำนวนมากที่จำเป็นสำหรับการพิสูจน์ STARK เราจะสนับสนุนการพิสูจน์ STARK แบบกลุ่มเพื่อดำเนินการการพิสูจน์ STARK หลายประเภทที่กล่าวข้างต้นในเวลาเดียวกัน
โดยหลักการแล้ว พรุ่งนี้เราสามารถเริ่มการพัฒนาโครงสร้างพื้นฐานที่จำเป็นในการดำเนินการทางแยกการฟื้นฟูนี้ ซึ่งจะทำให้ระบบนิเวศ Ethereum สามารถเตรียมพร้อมในกรณีที่มีการโจมตีควอนตัมอย่างกะทันหัน


