Kể từ khi ra mắt, thuật toán khai thác bitcoin đã gặp phải một lỗi tính toán, cho phép khai thác các khối với tốc độ cực kỳ cao. Điều này được nhà nghiên cứu Loïc Morel tiết lộ.

Mỗi 2016 khối (khoảng hai tuần một lần), các nút sẽ tính toán lại chỉ số mục tiêu theo cách mà một khối xuất hiện mỗi 10 phút, bất kể sức mạnh tính toán của các thợ mỏ. Để điều chỉnh này, các nút đo thời gian của khoảng thời gian cuối cùng, so sánh với giá trị mục tiêu (2016 x 600 = 1 209 600 giây), và sau đó điều chỉnh độ khó tương ứng.

«Lỗi nằm chính ở những phép tính này. Để đo thời gian của các khối trong giai đoạn đã qua, nút so sánh dấu thời gian của khối đầu tiên trong giai đoạn với dấu thời gian của khối cuối cùng. Thoạt nghe có vẻ hợp lý, nhưng thực tế đây là một lỗi, vì giữa khối đầu tiên và khối cuối cùng của giai đoạn chỉ có 2015 khoảng thời gian, chứ không phải 2016», Morel giải thích.

Nếu gọi t0 là dấu thời gian của khối đầu tiên và t2015 là dấu thời gian của khối cuối cùng, nút sẽ tính thời gian đã trôi qua theo công thức T = t2015 — t0. Như vậy, có 2015 khoảng thời gian (từ t0 đến t1 > từ t1 đến t2 > … > từ t2014 đến t2015).

Để có được 2016 khoảng thời gian, cần sử dụng công thức khác: T = t2015 — t-1, trong đó t-1 là dấu thời gian của khối cuối cùng trong giai đoạn trước.

Điều này được gọi là lỗi “lệch một đơn vị”. Lỗi này gây ra sai số khoảng 0,05% theo hướng khiến độ khó bị đánh giá hơi cao.

Tuy nhiên, vấn đề thực sự nằm ở chỗ khác. Lỗi này khiến các giai đoạn điều chỉnh không chồng lấn lên nhau — dấu thời gian của khối cuối cùng trong một giai đoạn không được tính đến khi tính toán giai đoạn tiếp theo.

Thao túng thời gian

Khoảng chênh lệch này khiến cuộc tấn công “bóp méo thời gian” trở nên khả thi. Nguyên lý của nó như sau:

https://forklog.com/news/v-mehanizme-majninga-bitkoina-obnaruzhili-oshibku-nulevogo-dnya/#origin=https%3A%2F%2Fwww.google.com%2F&cap=swipe,education&webview=1&dialog=1&viewport=natural&visibilityState=prerender&prerenderSize=1&viewerUrl=https%3A%2F%2Fwww.google.com%2Famp%2Fs%2Fforklog-com.cdn.ampproject.org%2Fc%2Fs%2Fforklog.com%2Fnews%2Fv-mehanizme-majninga-bitkoina-obnaruzhili-oshibku-nulevogo-dnya%3Fusqp=mq331AQIUAKwASCAAgM%25253D&amp_kit=1$BTC $BTC #US-IranTalksFailToReachAgreement $