Lỗ hổng biến dạng thời gian trong giao thức Bitcoin và phương án sửa chữa
Gần đây, các nhà phát triển Bitcoin đã đề xuất một đề xuất phân nhánh mềm mới nhằm khắc phục nhiều lỗ hổng và điểm yếu tồn tại lâu dài trong giao thức Bitcoin. Một trong những lỗ hổng nghiêm trọng hơn được gọi là "tấn công xuyên thời gian", bài viết này sẽ đi sâu vào vấn đề này.
Cơ chế bảo vệ dấu thời gian khối Bitcoin
Trước khi thảo luận về cuộc tấn công biến dạng thời gian, chúng ta cần hiểu các quy tắc bảo vệ thao tác thời gian trong giao thức Bitcoin hiện tại:
Thời gian trung vị đã qua (MPT) quy tắc: Dấu thời gian khối phải muộn hơn thời gian trung vị của 11 khối trước.
Quy tắc thời gian khối trong tương lai: Dấu thời gian khối không được vượt quá 2 giờ so với thời gian trung vị của các nút đồng đẳng. Sự khác biệt tối đa cho phép giữa thời gian của nút và đồng hồ hệ thống địa phương là 90 phút.
Những quy tắc này nhằm ngăn chặn thời gian dấu thời gian khối quá sai lệch so với thời gian thực, nhưng vẫn tồn tại một số lỗ hổng có thể bị khai thác.
Sai số tính toán của Satoshi Nakamoto
Chu kỳ điều chỉnh độ khó của Bitcoin là 2016 khối, khoảng hai tuần. Khi tính toán điều chỉnh độ khó khai thác, giao thức so sánh sự chênh lệch dấu thời gian của khối đầu tiên và khối cuối cùng trong cửa sổ 2016 khối. Tuy nhiên, Satoshi Nakamoto đã mắc một sai lầm nhỏ khi tính toán thời gian mục tiêu:
Tính toán đúng: 60 giây * 10 phút * 2015 khoảng = 1,209,000 giây
Sử dụng thực tế: 60 giây * 10 phút * 2016 = 1,209,600 giây
Sai số 0.05% này dẫn đến khoảng thời gian mục tiêu thực tế của Bitcoin là 10 phút 0.3 giây, thay vì 10 phút trọn vẹn. Mặc dù sai số này không ảnh hưởng lớn, nhưng khi kết hợp với một khiếm khuyết thiết kế khác, nó đã tạo ra những rủi ro an ninh nghiêm trọng hơn.
Nguyên lý tấn công biến dạng thời gian
Cuộc tấn công biến dạng thời gian khai thác lỗi trong việc tính toán độ khó của Satoshi Nakamoto. Kẻ tấn công thông qua việc thao túng dấu thời gian của khối, làm cho thời gian của blockchain chậm hơn nhiều so với thời gian thực, từ đó ảnh hưởng đến việc điều chỉnh độ khó. Các bước cụ thể như sau:
Hầu hết các dấu thời gian khối chỉ sớm hơn khối trước 1 giây, hoặc sớm hơn 1 giây cho mỗi 6 khối.
Khối cuối cùng của mỗi chu kỳ điều chỉnh độ khó sử dụng dấu thời gian thực.
Thời gian đóng dấu của khối đầu tiên trong chu kỳ tiếp theo quay trở lại quá khứ, sớm hơn 1 giây so với khối thứ hai từ cuối trong chu kỳ trước.
Hành động này tuân theo quy tắc MPT, nhưng sẽ dẫn đến việc độ khó tiếp tục giảm. Kẻ tấn công có thể nhanh chóng tạo ra một lượng lớn khối và nhận được nhiều phần thưởng Bitcoin.
Khả năng tấn công và phòng thủ
Mặc dù lý thuyết thì mối đe dọa của loại tấn công này rất lớn, nhưng việc thực hiện gặp phải một số thách thức:
Cần kiểm soát hầu hết sức mạnh tính toán.
Sự tồn tại của thợ mỏ trung thực sẽ làm tăng độ khó của cuộc tấn công.
Quy trình tấn công có thể được quan sát, cho cộng đồng thời gian phản ứng.
Để phòng ngừa các cuộc tấn công như vậy, các nhà phát triển đã đưa ra một giải pháp đơn giản: quy định rằng thời gian của khối đầu tiên trong chu kỳ độ khó mới không được sớm hơn một số phút cụ thể của khối cuối cùng trong chu kỳ trước. Hiện tại, khoảng thời gian được đề xuất là 2 giờ, điều này sẽ hạn chế hiệu quả mức độ giảm độ khó.
Kết luận
Cuộc tấn công biến dạng thời gian đã tiết lộ một lỗ hổng quan trọng trong giao thức Bitcoin. Mặc dù việc thực hiện khó khăn, nhưng tác động tiềm năng của nó không thể bị bỏ qua. Bằng cách thực hiện các quy tắc giới hạn dấu thời gian mới, có thể giảm thiểu hiệu quả rủi ro này, nâng cao hơn nữa tính bảo mật và ổn định của mạng Bitcoin. Khi các đề xuất làm sạch đồng thuận lớn tiến triển, chúng ta có thể hy vọng thấy lỗ hổng này được sửa chữa, đặt nền tảng vững chắc hơn cho sự phát triển lâu dài của Bitcoin.
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
12 thích
Phần thưởng
12
4
Chia sẻ
Bình luận
0/400
BlockchainThinkTank
· 19giờ trước
Có vẻ là vấn đề cũ, đã được nghiên cứu từ năm 18, khuyên nên thận trọng.
Xem bản gốcTrả lời0
ReverseFOMOguy
· 07-25 06:20
tuyệt vời bug都被挖出来了
Xem bản gốcTrả lời0
CompoundPersonality
· 07-25 06:07
Tất cả các lỗ hổng tấn công đều đã được tìm thấy bò
Phân tích và giải pháp khắc phục lỗ hổng thời gian xoắn trong giao thức Bitcoin
Lỗ hổng biến dạng thời gian trong giao thức Bitcoin và phương án sửa chữa
Gần đây, các nhà phát triển Bitcoin đã đề xuất một đề xuất phân nhánh mềm mới nhằm khắc phục nhiều lỗ hổng và điểm yếu tồn tại lâu dài trong giao thức Bitcoin. Một trong những lỗ hổng nghiêm trọng hơn được gọi là "tấn công xuyên thời gian", bài viết này sẽ đi sâu vào vấn đề này.
Cơ chế bảo vệ dấu thời gian khối Bitcoin
Trước khi thảo luận về cuộc tấn công biến dạng thời gian, chúng ta cần hiểu các quy tắc bảo vệ thao tác thời gian trong giao thức Bitcoin hiện tại:
Thời gian trung vị đã qua (MPT) quy tắc: Dấu thời gian khối phải muộn hơn thời gian trung vị của 11 khối trước.
Quy tắc thời gian khối trong tương lai: Dấu thời gian khối không được vượt quá 2 giờ so với thời gian trung vị của các nút đồng đẳng. Sự khác biệt tối đa cho phép giữa thời gian của nút và đồng hồ hệ thống địa phương là 90 phút.
Những quy tắc này nhằm ngăn chặn thời gian dấu thời gian khối quá sai lệch so với thời gian thực, nhưng vẫn tồn tại một số lỗ hổng có thể bị khai thác.
Sai số tính toán của Satoshi Nakamoto
Chu kỳ điều chỉnh độ khó của Bitcoin là 2016 khối, khoảng hai tuần. Khi tính toán điều chỉnh độ khó khai thác, giao thức so sánh sự chênh lệch dấu thời gian của khối đầu tiên và khối cuối cùng trong cửa sổ 2016 khối. Tuy nhiên, Satoshi Nakamoto đã mắc một sai lầm nhỏ khi tính toán thời gian mục tiêu:
Tính toán đúng: 60 giây * 10 phút * 2015 khoảng = 1,209,000 giây Sử dụng thực tế: 60 giây * 10 phút * 2016 = 1,209,600 giây
Sai số 0.05% này dẫn đến khoảng thời gian mục tiêu thực tế của Bitcoin là 10 phút 0.3 giây, thay vì 10 phút trọn vẹn. Mặc dù sai số này không ảnh hưởng lớn, nhưng khi kết hợp với một khiếm khuyết thiết kế khác, nó đã tạo ra những rủi ro an ninh nghiêm trọng hơn.
Nguyên lý tấn công biến dạng thời gian
Cuộc tấn công biến dạng thời gian khai thác lỗi trong việc tính toán độ khó của Satoshi Nakamoto. Kẻ tấn công thông qua việc thao túng dấu thời gian của khối, làm cho thời gian của blockchain chậm hơn nhiều so với thời gian thực, từ đó ảnh hưởng đến việc điều chỉnh độ khó. Các bước cụ thể như sau:
Hành động này tuân theo quy tắc MPT, nhưng sẽ dẫn đến việc độ khó tiếp tục giảm. Kẻ tấn công có thể nhanh chóng tạo ra một lượng lớn khối và nhận được nhiều phần thưởng Bitcoin.
Khả năng tấn công và phòng thủ
Mặc dù lý thuyết thì mối đe dọa của loại tấn công này rất lớn, nhưng việc thực hiện gặp phải một số thách thức:
Để phòng ngừa các cuộc tấn công như vậy, các nhà phát triển đã đưa ra một giải pháp đơn giản: quy định rằng thời gian của khối đầu tiên trong chu kỳ độ khó mới không được sớm hơn một số phút cụ thể của khối cuối cùng trong chu kỳ trước. Hiện tại, khoảng thời gian được đề xuất là 2 giờ, điều này sẽ hạn chế hiệu quả mức độ giảm độ khó.
Kết luận
Cuộc tấn công biến dạng thời gian đã tiết lộ một lỗ hổng quan trọng trong giao thức Bitcoin. Mặc dù việc thực hiện khó khăn, nhưng tác động tiềm năng của nó không thể bị bỏ qua. Bằng cách thực hiện các quy tắc giới hạn dấu thời gian mới, có thể giảm thiểu hiệu quả rủi ro này, nâng cao hơn nữa tính bảo mật và ổn định của mạng Bitcoin. Khi các đề xuất làm sạch đồng thuận lớn tiến triển, chúng ta có thể hy vọng thấy lỗ hổng này được sửa chữa, đặt nền tảng vững chắc hơn cho sự phát triển lâu dài của Bitcoin.