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

การทำงานของบล็อกเชนและระบบ Proof of work

   ก่อนที่จะทำความรู้จัก 51% attack เราจำเป็นต้องเข้าใจเกี่ยวกับบล็อกเชน และ ระบบ Proof of work กันก่อน

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

   บิตคอยน์มีระบบฉันทามติที่เรียกว่า Proof of work ซึ่งจะทำให้ผู้ที่มีสิทธิ์ตรวจสอบความถูกต้องและสามารถสร้างบล็อกใหม่ที่บรรจุข้อมูลธุรกรรม มีแค่นักขุดที่สร้าง Block hash ออกมาได้ถูกต้อง โดยผ่านการเห็นชอบโดยโนดส่วนใหญ่ในเครือข่าย (Block hash คือหลักฐานว่านักขุดได้ใช้กำลังประมวลผลไปกับการแก้สมการคณิตศาสตร์ที่บล็อกเชนสร้างขึ้นมา และได้คำตอบแล้วจริงๆ)

   นักขุดนั้นมีอยู่ทั่วโลกต่างคนต่างสร้างกำลังประมวลผลมาเพื่อแก้สมการของบล็อกเชนโดยมี block reward เป็นแรงจูงใจ ซึ่งหมายความว่ากำลังประมวลผลไม่ได้อยู่ในมือของใครคนใดคนหนึ่ง

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

51% attack คืออะไร ?

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

   อย่างเช่นทำการโอนบิตคอยน์เข้า exchange แล้วนำไปขายเป็น USD แล้วไปทำการแก้ไขบล็อกเชนว่าการทำธุรกรรมนั้นไม่เคยเกิดขึ้นมาก่อนหรือแก้ไขว่าโอนบิตคอยน์เข้ากระเป๋าตัวเองแทน ซึ่งทำให้เกิดปัญหาการใช้เงินซ้ำซ้อนและสร้างความเสียหายด้านการเงินให้กับคนที่โดน ซึ่ง 51% attack ไม่สามารถแก้ไขธุรกรรมของผู้ใช้งานคนอื่น, ไม่สามารถเปลี่ยนแปลง block reward, ไม่สามารถเสกเหรียญ และไม่สามารถขโมยเหรียญที่ไม่ใช่ของตัวเองได้

51% attack มีโอกาสเกิดแค่ไหน ?

   บล็อกเชนที่มีหัวใจหลักคือการกระจายศูนย์กลาง มีนักขุดที่ร่วมกันสร้างกำลังประมวลผลปริมาณมหาศาล นี่คือเหตุผลที่ทำให้เหตุการณ์ 51% attack นั้นเกิดขึ้นได้ยาก ยิ่งเครือข่ายขยายใหญ่ขึ้น กำลังขุดในระบบก็มากขึ้น ซึ่งทำให้การโจมตีนั้นต้องใช้ต้นทุนมหาศาลจนแทบเป็นไปไม่ได้

   และด้วยกลไกทางเศรษฐศาสตร์ของบิตคอยน์เอง เมื่อตอนบิตคอยน์ยังไม่มีมูลค่า คนที่เข้ามาเป็นนักขุดก็คือพวกผู้พัฒนาเอง และกลุ่มคนที่ชื่นชอบในศาสตร์การเข้ารหัส (cryptography) เรียกได้ว่ามาเข้าร่วมเพราะเห็นถึงประโยชน์ที่บิตคอยน์จะสามารถทำได้ในอนาคตมากกว่าเข้ามาเพราะหวังทำกำไร บิตคอยน์เลยเติบโตมาในวงแคบๆแต่ปลอดภัยจากการถูกโจมตี

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

   จนตอนนี้ต้นทุนในการโจมตีบิตคอยน์ด้วย 51% attack อย่างน้อยๆต้องมีเครื่องขุดมากพอที่จะสร้างกำลังประมวลผลได้มากกว่า 200 EH/s  ไฟฟ้าระดับหล่อเลี้ยงประเทศไทยได้ และพื้นที่อีกมหาศาล ซึ่งเป็นการป้องกันทางเศรษฐศาสตร์ของบิตคอยน์ ที่ทำให้โจมตีไปก็ไม่ได้อะไรกลับมา

   แต่ถึงอย่างนั้นก็มีคริปโทเคอร์เรนซีเหรียญอื่นๆ ที่สร้างมาทีหลังบิตคอยน์และเป็นเหยื่อของ 51% attack อย่างเช่น Bitcoin sv, Bitcoin Gold, ที่ไม่ได้มีโอกาสเติบโตให้แข็งแกร่ง แต่ต้องถูกโจมตีไปก่อนตั้งแต่เครือข่ายยังไม่ใหญ่พอ

วิธีป้องกัน 51 % attack

   หลังจากที่มีคริปโทเคอร์เรนซีและ Exchange หลายเจ้าโดนการโจมตีแบบนี้ไป ทำให้ต่อมาเวลาที่ผู้ใช้งานจะทำการโอนเข้ากระเป๋าของ Exchange ทาง Exchange จะต้องรอเวลายืนยันบล็อก ไม่ว่าจะเป็น 1, 2 หรือ12 บล็อกก็ว่าไป ซึ่งการรอยืนยันบล็อกแบบนี้จะทำให้การโจมตีด้วย 51% Attack นั้นยากขึ้นเป็นทวีคูณ

   สมมติถ้าเรารอ 2 บล็อก ก็หมายความว่าผู้โจมตีต้องขุดลึกไปถึง 2 บล็อกก่อนหน้าและขุดบล็อกปัจจุบันด้วยรวมเป็น 3 บล็อก ที่ขุดด้วยเวลาปกติก็ประมาณ 30 นาที ใช้กำลังไฟฟ้าที่ใช้หล่อเลี้ยงประเทศขนาดเท่าประเทศไทยได้ 3 ประเทศ กำลังขุดอีกมหาศาล ซึ่งไม่มีใครจะใช้ต้นทุนขนาดนั้นเพื่อโจมตี แล้วโจมตีไปก็ไม่คุ้มค่ากับต้นทุน

   ซึ่งผู้ใช้งานทั่วไปอย่างเรา ก็ต้องรอยืนยันบล็อกอย่างน้อย 1 บล็อกเวลาจะทำธุรกรรมกับใคร เพื่อป้องกันโอกาสที่จะโดนโจมตี ซึ่งโอกาสถูกโจมตีจะแทบไม่มีความเป็นไปได้(ถ้าเป็นบิตคอยน์)

Referrence 

https://academy.binance.com/en/articles/what-is-a-51-percent-attack