ยังไม่มีคอมพิวเตอร์ควอนตัมที่ทรงพลังพอจะทำลายบล็อกเชน Bitcoin ได้ อย่างไรก็ตาม นักพัฒนาซอฟต์แวร์ได้เริ่มพูดคุยถึงคลื่นการอัปเกรดเพื่อสร้างชั้นป้องกันรับมือกับภัยคุกคามที่อาจเกิดขึ้นนี้แล้ว—และนั่นก็มีเหตุผลอย่างยิ่ง เพราะความเสี่ยงนี้ตอนนี้ไม่ได้เป็นเพียงสมมติฐานล้วน ๆ อีกต่อไป
ในสัปดาห์นี้ นักวิจัยของ Google ได้เผยแพร่การศึกษา ซึ่งชี้ให้เห็นว่าคอมพิวเตอร์ควอนตัมที่ทรงพลังพออาจถอดรหัสลับทางคณิตศาสตร์หลักของ Bitcoin ได้ภายในเวลาไม่ถึง 9 นาที—เร็วกว่า 1 นาทีเมื่อเทียบกับเวลายืนยันเฉลี่ยของ 1 บล็อกในเครือข่าย Bitcoin นักวิเคราะห์บางส่วนเชื่อว่าภัยคุกคามลักษณะเช่นนี้อาจกลายเป็นความจริงในปี 2029

ความเสี่ยงนั้นสูงมาก: ประมาณ 6,5 ล้าน bitcoin ซึ่งมีมูลค่าเป็นหลายร้อยพันล้านดอลลาร์สหรัฐ อยู่ในที่อยู่ที่คอมพิวเตอร์ควอนตัมสามารถกำหนดเป้าหมายได้โดยตรง ส่วนหนึ่งของจำนวนดังกล่าวเป็นของ Satoshi Nakamoto ผู้ก่อตั้งที่ไม่เปิดเผยตัวตนของ Bitcoin นอกจากนี้ หากถูกบุกรุก นั่นจะกระทบต่อหลักการสำคัญของ Bitcoin—“เชื่อในซอร์สโค้ด” และ “เงินตราที่ดีต่อสุขภาพ”
ด้านล่างนี้คือวิธีที่ภัยคุกคามนี้ทำงาน รวมถึงข้อเสนอที่กำลังถูกพิจารณาเพื่อบรรเทามัน
ก่อนอื่น ให้เข้าใจช่องโหวีก่อนจะพูดถึงข้อเสนอ
ความปลอดภัยของ Bitcoin ถูกสร้างขึ้นจากความสัมพันธ์ทางคณิตศาสตร์ที่เป็นทางเดียว เมื่อคุณสร้างกระเป๋าเงิน (wallet) จะได้คีย์ส่วนตัว (private key) และความลับบางอย่าง จากนั้นจึงอนุมานคีย์สาธารณะ (public key)
เพื่อใช้จ่าย bitcoin คุณต้องพิสูจน์ว่าคุณเป็นเจ้าของคีย์ส่วนตัว—ไม่ใช่ด้วยการเปิดเผยมัน แต่ด้วยการใช้คีย์นั้นเพื่อสร้างลายเซ็นเชิงเข้ารหัส (cryptographic signature) ที่เครือข่ายสามารถตรวจสอบได้
ระบบนี้ปลอดภัยเพราะคอมพิวเตอร์สมัยใหม่จะต้องใช้เวลาหลายพันล้านปีในการทำลายการเข้ารหัสเส้นโค้งวงรี (elliptic curve) ที่ใช้ใน Bitcoin—โดยเฉพาะอัลกอริทึมลายเซ็นดิจิทัลเส้นโค้งวงรี (ECDSA)—เพื่ออนุมานคีย์ส่วนตัวจากคีย์สาธารณะ ดังนั้น บล็อกเชนจึงถูกมองว่าแทบจะเป็นไปไม่ได้ที่จะถูกบุกรุกในเชิงการคำนวณ
แต่ในอนาคต คอมพิวเตอร์ควอนตัมสามารถทำให้เส้นทางทางเดียวนี้กลายเป็นทางสองทาง โดยการอนุมานคีย์ส่วนตัวจากคีย์สาธารณะ แล้วกวาดเงินของคุณออกไป
คีย์สาธารณะถูกเปิดเผยได้ 2 วิธี: จากเหรียญที่อยู่นิ่งบนเชน (การโจมตีเพื่อเปิดเผยแบบระยะยาว) หรือจากเหรียญที่กำลังเคลื่อนที่ หรือธุรกรรมที่รออยู่ใน mempool ของธุรกรรม (การโจมตีเพื่อเปิดเผยแบบระยะสั้น)
ที่อยู่ Pay-to-Public-Key (P2PK)—ซึ่ง Satoshi และเหล่ามินเนอร์ยุคแรกใช้—รวมถึง Taproot (P2TR) ซึ่งเป็นรูปแบบที่อยู่ปัจจุบันที่เปิดใช้งานในปี 2021 ล้วนเปราะบางต่อการโจมตีเพื่อเปิดเผยแบบระยะยาว เหรียญในที่อยู่เหล่านี้ไม่จำเป็นต้องเคลื่อนย้ายเพื่อให้คีย์สาธารณะถูกเปิดเผย การเปิดเผยได้เกิดขึ้นแล้ว และทุกคนบนโลกก็สามารถอ่านได้ รวมถึงผู้โจมตีที่ใช้คอมพิวเตอร์ควอนตัมในอนาคตด้วย ประมาณ 1,7 ล้าน BTC อยู่ในที่อยู่ P2PK เก่า—รวมถึงเหรียญของ Satoshi
การโจมตีเพื่อเปิดเผยแบบระยะสั้นเกี่ยวข้องกับ mempool ซึ่งเป็น “ห้องรอ” ของธุรกรรมที่ยังไม่ได้รับการยืนยัน ระหว่างที่ธุรกรรมอยู่ที่นั่นเพื่อรอถูกนำเข้าไปในบล็อก คีย์สาธารณะและลายเซ็นของคุณจะถูกแสดงต่อทั้งเครือข่าย
คอมพิวเตอร์ควอนตัมสามารถเข้าถึงข้อมูลนั้นได้ แต่มีเวลาเพียงช่วงสั้นมาก—ก่อนที่ธุรกรรมจะถูกยืนยันและถูกฝังไว้ใต้บล็อกถัดไป—เพื่ออนุมานคีย์ส่วนตัวที่สอดคล้องกันและลงมือทำการ
ดังที่กล่าวไว้ข้างต้น ที่อยู่ Bitcoin ใหม่ทั้งหมดที่สร้างด้วย Taproot ในปัจจุบันจะเปิดเผยคีย์สาธารณะบนเชนอย่างถาวร มอบเป้าหมายที่ไม่มีวันหายไปให้แก่คอมพิวเตอร์ควอนตัมในอนาคต
ข้อเสนอปรับปรุง Bitcoin (BIP) 360 ที่ลบคีย์สาธารณะที่ฝังอยู่ถาวรบนเชน และเปิดให้ทุกคนเห็น โดยการแนะนำประเภทเอาต์พุตใหม่ที่เรียกว่า Pay-to-Merkle-Root (P2MR)
ให้จำไว้ว่าคอมพิวเตอร์ควอนตัมจะศึกษาคีย์สาธารณะ ย้อนกลับรูปแบบที่ถูกต้องของคีย์ส่วนตัว และสร้างสำเนาที่ใช้งานได้ หากเราตัดคีย์สาธารณะออกไป ผู้โจมตีก็จะไม่มีอะไรให้ยึดเกาะ ในขณะเดียวกัน สิ่งอื่น ๆ ทั้งหมด รวมถึงการชำระเงิน Lightning การตั้งค่าแบบหลายลายเซ็น และฟีเจอร์อื่น ๆ ของ Bitcoin ยังคงเหมือนเดิม
อย่างไรก็ตาม หากมีการนำไปใช้งานจริง ข้อเสนอนี้จะปกป้องเฉพาะเหรียญชุดใหม่ในอนาคตเท่านั้น 1,7 ล้าน BTC ที่ปัจจุบันอยู่ในที่อยู่ที่เปิดเผยคีย์แล้วนั้น เป็นอีกประเด็นหนึ่ง ซึ่งจะได้รับการจัดการด้วยข้อเสนออื่น ๆ ด้านล่าง
SPHINCS+ เป็นกลไกการลงลายเซ็นยุคหลังควอนตัมที่สร้างบนแฮช ช่วยหลีกเลี่ยงความเสี่ยงเชิงควอนตัมที่การเข้ารหัสเส้นโค้งวงรีซึ่ง Bitcoin ใช้อยู่ต้องเผชิญ ในขณะที่อัลกอริทึมของ Shor ที่คุกคาม ECDSA ถูกมองว่าเอื้อต่อการโจมตีแบบเดียวกัน การออกแบบที่อาศัยแฮช เช่น SPHINCS+ ไม่ได้ถูกพิจารณาว่าเปราะบางในลักษณะเดียวกัน
โครงสร้างแบบนี้ได้รับการทำให้เป็นมาตรฐานโดยสถาบันมาตรฐานและเทคโนโลยีแห่งชาติของสหรัฐอเมริกา (NIST) ในเดือน 8/2024 ภายใต้ชื่อ FIPS 205 (SLH-DSA) หลังจากหลายปีของการพิจารณาอย่างเปิดเผย
การแลกเปลี่ยนกับชั้นความปลอดภัยที่สูงขึ้นคือขนาดที่ใหญ่ขึ้น ในขณะที่ลายเซ็น Bitcoin ปัจจุบันยาวเพียง 64 ไบต์ ลายเซ็น SLH-DSA มีขนาด 8 กิโลไบต์ (KB) หรือมากกว่า ดังนั้น หากนำ SLH-DSA มาใช้ ความต้องการพื้นที่ในบล็อกจะเพิ่มขึ้นอย่างมาก และค่าธรรมเนียมธุรกรรมก็จะสูงขึ้นด้วย
ด้วยเหตุนี้ จึงได้มีการเสนอแนะอย่าง SHRIMPS (ซึ่งเป็นอีกหนึ่งรูปแบบลายเซ็นยุคหลังควอนตัมที่อาศัยแฮช) และ SHRINCS เพื่อช่วยลดขนาดลายเซ็น โดยไม่เสียสละความปลอดภัยยุคหลังควอนตัม ทั้งสองแบบสร้างบน SPHINCS+ แต่มีเป้าหมายที่จะคงไว้ซึ่งการรับประกันด้านความปลอดภัยของมันในรูปแบบที่ “ใช้งานได้จริง” มากกว่า ประหยัดพื้นที่สำหรับบล็อกเชนได้มากกว่า
ข้อเสนอนี้ ซึ่งเป็นซอฟต์ฟอร์กที่ Tadge Dryja ผู้ร่วมก่อตั้ง Lightning Network เสนอ มีเป้าหมายเพื่อปกป้องธุรกรรมใน mempool จากผู้โจมตีด้วยควอนตัมในอนาคต มันทำได้ด้วยการแยกการดำเนินการของธุรกรรมออกเป็นสองช่วง: Commit และ Reveal
ลองจินตนาการว่าคุณบอกกับคู่หูว่าคุณจะส่งอีเมลให้เขา แล้วคุณก็ส่งอีเมลจริง ๆ ประโยคแรกคือช่วง commit ส่วนการลงมือส่งอีเมลคือช่วง reveal
บนบล็อกเชน นั่นหมายความว่าก่อนอื่นคุณจะประกาศ “ลายนิ้วมือ” ที่ปิดผนึกของเจตนาคุณ—ซึ่งเป็นเพียงแฮช ไม่ได้เปิดเผยอะไรเกี่ยวกับธุรกรรม—Blockchain จะประทับเวลาให้กับลายนิ้วมือนั้นอย่างถาวร จากนั้น เมื่อคุณส่งธุรกรรมจริงออกไป คีย์สาธารณะจะถูกเปิดเผย—และใช่แล้ว เครื่องคอมพิวเตอร์ควอนตัมที่กำลังเฝ้าดูเครือข่ายสามารถอนุมานคีย์ส่วนตัวจากนั้น และสร้างธุรกรรมแย่งชิงเพื่อขโมยเงินของคุณ
แต่ธุรกรรมแย่งชิงนั้นจะถูกปฏิเสธทันที เครือข่ายจะตรวจสอบ: การใช้จ่ายธุรกรรมนี้มีการบันทึก commit ไว้ก่อนหน้าบนเชนหรือไม่? ของคุณมี ส่วนของผู้โจมตีไม่มี—เพราะเขาเพิ่งสร้างมันไม่กี่นาทีที่ผ่านมา ลายนิ้วมือที่ได้ลงทะเบียนไว้ก่อนหน้าคือหลักฐานแก้ข้อกล่าวหาของคุณ
ปัญหาคือค่าใช้จ่ายจะเพิ่มขึ้น เพราะธุรกรรมถูกแบ่งเป็นสองช่วง ดังนั้น จึงถูกมองว่าเป็นสะพานชั่วคราวที่พอใช้งานได้จริง เพื่อให้สามารถนำไปใช้ในระหว่างที่ชุมชนยังคงสร้างมาตรการป้องกันควอนตัมต่อไป
ด้วยข้อเสนอของนักพัฒนา Hunter Beast, Hourglass V2 มุ่งเป้าไปที่ช่องโหว่เชิงควอนตัมที่เกี่ยวข้องกับประมาณ 1,7 ล้าน BTC ที่อยู่ในที่อยู่เก่า และถูกเปิดเผยต่อสาธารณะแล้ว
ข้อเสนอนี้ยอมรับว่าเหรียญดังกล่าวอาจถูกขโมยในการโจมตีด้วยควอนตัมในอนาคต และพยายามทำให้กระบวนการสูญเสียช้าลง โดยจำกัดการขายออกไว้ที่ระดับหนึ่ง bitcoin ต่อหนึ่งบล็อก เพื่อหลีกเลี่ยงคลื่นการชำระบัญชีจำนวนมากในชั่วข้ามคืน ที่อาจทำให้ตลาดทรุดลง
ตัวอย่างที่คล้ายกันคือการถอนเงินจำนวนมาก: คุณไม่สามารถหยุดไม่ให้ทุกคนถอนเงินได้ แต่คุณสามารถจำกัดอัตราการถอน เพื่อให้ระบบไม่ล่มสลายในชั่วข้ามคืน ข้อเสนอนี้เป็นที่ถกเถียงกัน เพราะแม้เพียงข้อจำกัดขั้นต่ำดังกล่าว ก็ยังถูกมองโดยบางส่วนของชุมชน Bitcoin ว่าเป็นการละเมิดหลักการที่ว่า ไม่มีใครควรเข้าไปแทรกแซงสิทธิในการใช้จ่ายเหรียญของคุณได้
ข้อเสนอเหล่านี้ยังไม่ได้เปิดใช้งาน และกลไกการกำกับดูแลแบบกระจายอำนาจของ Bitcoin—ซึ่งรวมถึงนักพัฒนา ผู้ขุด และผู้ให้บริการโหนด—หมายความว่า การอัปเกรดใด ๆ ก็จำเป็นต้องใช้เวลาเพื่อให้กลายเป็นความจริง
อย่างไรก็ตาม คลื่นของข้อเสนอที่ปรากฏขึ้นอย่างสม่ำเสมอก่อนรายงานของ Google ในสัปดาห์นี้ แสดงให้เห็นว่าปัญหานี้อยู่ในสายตาของนักพัฒนามานานแล้ว ซึ่งอาจช่วยลดความกังวลของตลาดได้