ข้อผิดพลาดในสัญญา Bitcoin ที่“ ล็อกเวลา” อาจทำให้คนงานขุดปล้นกันเองได้

ข้อผิดพลาดในสัญญา Bitcoin ที่ "ล็อกเวลา" อาจทำให้นักขุดสามารถปล้นกันได้ - Bitcoin Bug 1024x640ในรายงานที่เผยแพร่เมื่อปลายเดือนเมษายนวิศวกรที่รู้จักกันในชื่อ 0xb10c พบว่าธุรกรรมที่ล็อกเวลามากกว่าหนึ่งล้านรายการที่ทำระหว่างเดือนกันยายน 2019 ถึงมีนาคม 2020 ไม่ได้ดำเนินการอย่างถูกต้องบนเครือข่าย

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

ข้อบกพร่องที่ตรวจพบทำงานอย่างไร

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

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

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

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

ความเสี่ยงระยะยาว

“ ปัจจุบันการไม่ใช้ไทม์ล็อกไม่มีผลกระทบต่อธุรกรรมส่วนใหญ่ ในอีกไม่กี่ปีเมื่อรางวัลบล็อกจะประกอบด้วยค่าธรรมเนียมการทำธุรกรรมเป็นส่วนใหญ่อาจนำไปสู่การตัดค่าธรรมเนียมที่ทำกำไรได้” 0xb10c กล่าว

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

ตัวการหลักที่เกี่ยวข้องกับการแพร่กระจายของจุดบกพร่องพร้อมที่จะหาทางแก้ไข

ธุรกรรมผิดพลาดจำนวนมากที่ตรวจพบโดย 0xb10c ดำเนินการโดยเอนทิตีเดียวที่มีขนาดสำคัญซึ่งไม่ได้แต่งตั้ง วิศวกรกล่าวว่าเขาติดต่อเขาและได้รับคำตอบแบบ "มืออาชีพ" เขากล่าวว่ากำลังหาวิธีแก้ปัญหา

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