นักวิจัยออกแบบระบบ blockchain เผื่ออนาคต กรณีคอมพิวเตอร์ควอนตัมขุดเหมืองได้เร็วเกิน

by littletail
17 June 2017 - 16:14

ที่ผ่านมา วงการ cryptocurrency และ blockchain ได้รับความนิยมล้นหลาม ส่งผลให้ความต้องการการ์ดจอเพื่อเอาไปขุดเหมืองเพิ่มสูงขึ้น และเริ่มมีข่าวลือเกี่ยวกับการดัดแปลงการ์ดจอเพื่อใช้ขุดเหมืองโดยเฉพาะ ล่าสุดก็เริ่มมีบางคนปิ๊งไอเดียว่า แล้วถ้าเอาคอมพิวเตอร์ควอนตัมไปขุดเหมืองแทนล่ะ จะขุดเร็วขนาดไหน

คำตอบคือ ขุดเร็วกว่าการ์ดจอแน่ๆ แต่ “มันอาจจะเร็วเกินไปจนไปทำลายระบบ blockchain” ได้เลยทีเดียว

นอกจากนี้ การมาของคอมพิวเตอร์ควอนตัมจะทำให้ระบบ blockchain ไม่สามารถใช้งานต่อไปได้ เพราะมันสามารถทำลายกลไกการเข้ารหัสและรักษาความปลอดภัยของข้อมูลในระบบได้อีกด้วย

จากประเด็นข้างต้น ก็เลยมีกลุ่มนักวิจัยชาวรัสเซียนำโดย Enter Evgeny Kiktenko แห่ง Russian Quantum Center กรุง Moscow คิดเผื่อเอาไว้ว่า ถ้าคอมพิวเตอร์ควอนตัมมาถึง เราจะทำยังไงดีเพื่อที่จะยังคงรักษาระบบ blockchain ให้สามารถใช้งานต่อไปได้ ผลลัพธ์ที่ได้ก็คือเปเปอร์ที่ถูกตีพิมพ์ใน arXiv ครับ

ที่มาภาพ - Pexels

รากฐานสำคัญที่ทำให้ระบบ blockchain สามารถดำเนินการได้นั้นคือกระบวนการแฮชเพื่อตรวจสอบความถูกต้องของ transaction ที่เกิดขึ้นในแต่ละบล็อก รวมถึงใช้เป็น proof of work ของการสร้างบล็อกใหม่ และลายเซ็นดิจิทัลเพื่อยืนยันความเป็นเจ้าของบัญชี ซึ่งการทำลายเซ็นดิจิทัลส่วนมากก็มีพื้นฐานมาจากการเข้ารหัสด้วยอัลกอริทึม ECDSA หรือการเข้ารหัส RSA

แต่ถ้าสมมติมีใครสักคนสร้างคอมพิวเตอร์ควอนตัมขึ้นมาได้แล้วละก็ กระบวนการเข้ารหัสข้างต้นจะไม่สามารถใช้งานได้อีกต่อไป ผลกระทบที่เกิดขึ้นคือ ผู้ไม่ประสงค์ดีจะสามารถปลอมแปลงบัญชีของเหยื่อในระบบได้

ผลกระทบอีกอย่างหนึ่งคือคอมพิวเตอร์ควอนตัมมี Grover search algorithm ช่วยลดระยะเวลาในการทำ inverse hash function ด้วย (จากปกติใช้เวลา 1,000,000 รอบในการหาคำตอบ อาจจะเหลือแค่ 1,000 รอบเท่านั้น) ซึ่งจะทำให้ proof of work เสียประสิทธิภาพของมันไป และมีโอกาสเกิดเหตุการณ์ที่เรียกว่า 51% attack ได้ (มีคนเพียงไม่กี่กลุ่มที่สามารถขุดเหมืองหรือประกาศบล็อกใหม่ได้และกลายเป็นผู้ควบคุม transaction หลักของระบบ ซึ่งขัดกับหลักการของ blockchain ที่ระบบต้องกระจายออก ไม่มีใครสามารถเป็นศูนย์กลางได้)

อันที่จริง ทีมนักวิจัยทั่วโลกกำลังพัฒนากระบวนการเข้ารหัสแบบใหม่ที่ทนทานต่อคอมพิวเตอร์ควอนตัม เรียกว่า post-quantum cryptography ซึ่งสามารถเอาไปใช้ทำลายเซ็นดิจิทัลแทนการเข้ารหัสแบบเดิมได้ แต่ ณ ปัจจุบัน กระบวนการเหล่านี้ยังไม่ได้รับการพิสูจน์ว่าสามารถใช้งานได้จริง จึงยังไม่สามารถพึ่งพาได้ร้อยเปอร์เซ็นต์

ข้อเสนอของทีมนักวิจัย คือให้ใช้กระบวนการแลกเปลี่ยนกุญแจเข้ารหัสผ่านการสื่อสารแบบควอนตัมแทน (quantum key distribution หรือ QKD) โดยใช้ประโยชน์จากกลศาสตร์ควอนตัมโดยตรง กระบวนการนี้มีการทดสอบการใช้งานที่ระยะทางต่างๆ แล้ว คุณสมบัติหลักๆ ของการแลกเปลี่ยนกุญแจผ่านช่องทางควอนตัมคือ

  • ผู้ส่งสาร/รับสารสามารถตรวจสอบได้ว่ามีใครพยายามเข้าถึงข้อมูลคิวบิตหรือไม่ เป็นผลมาจากการที่ผู้ไม่ประสงค์ดีพยายามดักฟังด้วยการใช้เครื่องมืออ่านข้อมูลคิวบิตผิดแบบ ทำให้สถานะของมันเพี้ยนจนผู้รับสารอ่านค่าจากคิวบิตเพี้ยนไปด้วย
  • คิวบิตไม่สามารถคัดลอกตัวเองซ้ำได้ (no-cloning theorem) นั่นทำให้ผู้ไม่ประสงค์ดีไม่สามารถคัดลอกข้อมูลสถานะในคิวบิตเพื่อสำรองได้เลย

คลิปนี้ผมตั้งใจจะเอามาให้เห็นภาพคร่าวๆ ว่ากระบวนการ QKD สามารถตรวจพบ eavesdropper ได้อย่างไร ไม่ได้อธิบายขั้นตอนเชิงลึกของมัน ผู้ที่สนใจอยากจะศึกษาเพิ่ม ผมแนะนำให้เริ่มที่โปรโตคอล BB84 ครับ (ที่มา - Centre of Quantum Technologies มหาวิทยาลัย NUS)

ในการออกแบบระบบ blockchain นั้น จะกำหนดให้ทุกโหนดมีช่องทางการสื่อสาร 2 ช่อง คือ ช่องทางการสื่อสารปกติซึ่งใช้ในการส่งผ่านข้อมูล และช่องทางการสื่อสารควอนตัมซึ่งจะใช้เฉพาะตอนแลกเปลี่ยนกุญแจเข้ารหัส (เป็นการออกแบบทั่วๆ ไปของกระบวนการ QKD อยู่แล้ว)

สำหรับการสร้างบล็อก ทีมวิจัยเลือกใช้โปรโตคอล “broadcast” จากเปเปอร์ของ Shostak, Lamport, และ Pease มาใช้งาน (กำลังภายในผมหมด ไม่สามารถอธิบายมากกว่านี้ได้ แต่หากสนใจจริงๆ ให้อ่านในภาคผนวกของเปเปอร์) โปรโตคอลนี้รับประกันได้ว่าจะทำให้ระบบ blockchain ยังคงสามารถทำงานต่อไปได้ หากมีผู้ไม่ประสงค์ดีร่วมมือกันน้อยกว่า 1 ใน 3 ของผู้ใช้งานในระบบ

ทีมวิจัยยังเสนออีกว่า ควรจะเพิ่มความยาวแฮชของการเข้ารหัสบล็อก เพื่อป้องกันกรณีที่มีการใช้คอมพิวเตอร์ควอนตัมเพื่อปลอมแปลงข้อมูล transaction ภายในระบบด้วย

ที่มาภาพ - เปเปอร์ตีพิมพ์ใน arXiv

ทีมวิจัยทำการทดสอบระบบ blockchain ใหม่ โดยกำหนดให้มีโหนดใช้งานในระบบ 4 โหนด ได้แก่ A, B, C, D และให้โหนด D พยายามโอนเงินเข้าบัญชีที่เหลือพร้อมๆ กัน เพื่อให้เกิดสถานการณ์ double spending ผลคือ transaction ดังกล่าวถูกปฏิเสธ ไม่ได้รับการบันทึกในเวลาต่อมา (สำหรับคนที่สงสัย คอมพิวเตอร์ที่ทางทีมใช้มาจาก ID Quantique ครับ)

กระบวนการเหล่านี้ยังมีจุดอ่อนตรงที่ต้องมีผู้ไม่ประสงค์ดีร่วมมือกันน้อยกว่า 1 ใน 3 ของผู้ใช้งาน ระบบจึงจะมีเสถียรภาพได้ แต่อย่างน้อย นี่ก็เป็นการแสดงให้เห็นถึงผลกระทบที่เกิดขึ้นต่อระบบ blockchain หากคอมพิวเตอร์ควอนตัมเริ่มใช้งานได้จริง ซึ่งคงจะไม่ใช่เร็วๆ นี้แน่

แต่หากมันเกิดขึ้นจริง สิ่งที่น่ากลัวพอๆ กัน คือข้อมูลส่วนตัวของทุกคนจะไม่ปลอดภัยในทันทีหากยังใช้กระบวนการเข้ารหัสแบบเดิมๆ

ที่มา - MIT Technology Review, เปเปอร์ตีพิมพ์ใน arXiv

Blognone Jobs Premium