“Tấn công 51%” là gì? Liệu Bitcoin có thể sụp đổ hoàn toàn bởi một cuộc tấn công 51% hay không?

Cuối tuần qua, hacker đã thực hiện một cuộc “tấn công 51” vào đồng tiền mã hóa Bitcoin Gold, một đồng tiền mã hóa được hard fork (phân nhánh) từ Bitcoin đánh cắp 17,5 triệu USD. Trước đó, mạng lưới blockchain của đồng tiền mã hóa Verge cũng bị hacker đánh cắp hơn 1,7 triệu USD bởi một cuộc “tấn công 51%”.

Vậy “tấn công 51%” là gì? Và nó có đe dọa khiến Bitcoin sụp đổ hay không?

“Tấn công 51%” được biết như một cuộc tấn công vào hệ thống Blockchain do một nhóm các thợ mỏ kiểm soát được nhiều hơn 50% hashrate (đơn vị đo lường khả năng tính toán của thiết bị dùng để khai thác các đồng tiền ảo) khai thác của mạng lưới thực hiện. Tấn công 51% làm cho các giao dịch mới không thể xác nhận gây nghẽn mạng, thậm chí nếu kẻ tấn công kiểm soát hoàn toàn mạng lưới thì có thể khiến giao dịch bị đảo ngược.

Tấn công 51%

Ví dụ, tôi dùng 100 Bitcoin để mua một chiếc siêu xe Lamborghini. Sau khi chuyển số tiền này vào ví của công ty bán xe, vài ngày sau chiếc Lamborghini được giao đến.

Bằng cách thực hiện một cuộc tấn công 51% vào blockchain của Bitcoin, tôi có thể đảo ngược giao dịch. Nếu thành công, 100 Bitcoin vẫn ở trong ví của tôi trong khi chiếc xe đã thuộc sở hữu của tôi. Tôi vẫn có thể sử dụng 100 Bitcoin này vào việc khác.

Dùng 100 Bitcoinđể mua một chiếc siêu xe Lamborghini

Blockchain = phi tập trung

Mạng lưới blockchain là phi tập trung. Mỗi một mạng lưới blockchain quản lý một sổ cái lưu trữ dữ liệu, thông thường là dữ liệu giao dịch được đóng góp, xác nhận và quản lý bởi rất nhiều hệ thống máy tính tham gia giải mã trong mạng lưới blockchain trên toàn thế giới. Chính vì vậy các dữ liệu trên blockchain không cần tới một tổ chức thứ ba đứng ra quản lý bởi nó công khai, minh bạch, không thể sửa đổi bởi bất kỳ một cá nhân nào. Tuy nhiên nó có thể vẫn tồn tại lỗ hổng và bị khai thác.

Khi tôi chuyển 100 Bitcoin vào ví của công ty bán xe, giao dịch này được ký mã hóa và được chuyển vào một nơi gọi là “các giao dịch chưa xác nhận”. Các giao dịch chưa xác nhận này sẽ được các thợ mỏ chọn để lập thành một block và thêm vào mạng lưới blockchain. Các thợ mỏ phải giải một bài toán cực kỳ phức tạp mới có thể làm được điều đó và đây chính là lý do các máy đào Bitcoin yêu cầu phần cứng xử lý và tính toán mạnh mẽ.

Các thợ mỏ phải cạnh tranh với nhau. Người giải được bài toán nhanh nhất sẽ được ghép block của mình vào blockchain. Ngoài ra, giao dịch trong block này sẽ được công khai và cần hơn 50% xác nhận hợp lệ bởi các thợ mỏ khác để được hiện lên blockchain và giao dịch được ghi lại trong sổ cái. Khi đó, giao dịch chuyển 100 Bitcoin để mua một chiếc Lamborghini mới chính thức hoàn thành.

Các thợ mỏ chỉ có thể xác nhận giao dịch và ghép khối vào blockchain chứ không thể tự tạo ra một giao dịch, bởi họ không có chữ ký mã hóa của tài khoản lưu trữ Bitcoin. Chỉ có tôi mới có chữ ký mã hóa tài khoản lưu trữ 100 Bitcoin của mình, nên việc đánh cắp 100 Bitcoin của tôi là điều bất khả thi.

Cuộc tấn công 51% sẽ giúp tôi nhân đôi 100 Bitcoin của mình

Chúng ta đã biết, để ghép block của mình vào mạng lưới blockchain, thợ mỏ phải giải được bài toán nhanh nhất. Và Block này sẽ được công khai và cần các thợ mỏ khác xác nhận với tỷ lệ trên 50%.

Blockchain giả mạo màu cam, không công khai và Blockchain thật màu xanh
Blockchain giả mạo màu cam, không công khai và Blockchain thật màu xanh.

Trên thực tế, một thợ mỏ có thể không công khai block của mình, và có thể tạo ra một blockchain con giả không được khai báo. Khi đó, tôi sẽ có hai blockchain, một blockchain thật được xác nhận bởi đa số thợ mỏ (màu xanh) và một blockchain giả không được khai báo (màu cam).

Giao dịch mua chiếc xe Lamborghini bằng 100 Bitcoin được khai báo và xác nhận trên blockchain thật màu xanh. Các thợ mỏ xác nhận giao dịch này và tôi bị trừ đi 100 Bitcoin trong ví.

Ở blockchain thật, giao dịch đã được xác nhận và trừ 100 Bitcoin trong ví
Ở blockchain thật, giao dịch đã được xác nhận và trừ 100 Bitcoin trong ví. Ở blockchain giả, giao dịch này không tồn tại.

Nhưng trên blockchain màu cam, tôi không thực hiện giao dịch này và tất nhiên tôi không bị trừ 100 Bitcoin trong ví. Các thợ mỏ không biết đến sự tồn tại của Blockchain này bởi nó không được công khai.

Quan sát trong hình trên, chúng ta có thể thấy sự khác biệt ở block số 40, Blockchain màu xanh đã bị trừ 100 Bitcoin còn ở Blockchain màu cam không hề bị trừ một Bitcoin nào cả. Tôi sẽ sao chép các khối tiếp theo của blockchain màu xanh (các block số 41, 42 v.v..) ghép và tự thực hiện việc xác nhận nó trên blockchain màu cam.

Blockchain hoạt động theo mô hình quản trị dân chủ, luôn xác nhận các chuỗi khối dài nhất. Blockchain thật có tốc độ thêm khối mới nhanh nhất bởi nó có sự tham gia của rất nhiều máy đào trên toàn thế giới. Đây là cách xác định phiên bản blockchain nào là thật.

Khi cuộc đua bắt đầu, tôi có thể đánh lừa các thợ mỏ khác để biến chuỗi blockchain giả của mình trở thành blockchain thật nếu tôi có thể thêm khối cho chuỗi blockchain giả nhanh hơn cả chuỗi blockchain thật. Khi đã có chuỗi blockchain dài hơn, tôi công khai blockchain màu cam của mình cho tất cả thợ mỏ khác.

Tôi có thể khiến blockchain giả của mình có tốc độ xác nhận nhanh hơn để trở thành blockchain thậtTôi có thể khiến blockchain giả của mình có tốc độ xác nhận nhanh hơn.

Khi đó, các thợ mỏ khác sẽ phát hiện ra rằng chuỗi blockchain giả mạo của tôi dài hơn phiên bản mà họ đang làm việc nên họ sẽ phải chuyển qua chuỗi blockchain mới.

Blockchain giả biến thành blockchain thậtBlockchain giả biến thành blockchain thật.

Tôi đã được đảo ngược giao dịch thành công, và tại chuỗi blockchain giả, block số 40 không hề thực hiện giao dịch chuyển Bitcoin và 100 Bitcoin vẫn ở trong ví của tôi còn ví của công ty bán xe tất nhiên không hề nhận được 100 Bitcoin của tôi.

Một cuộc tấn công 51% thành côngMột cuộc tấn công 51% thành công.

Vì sao một cuộc tấn công 51% lại chỉ có trong lý thuyết? Và vì sao nó lại xuất hiện?

Trước đây, các chuyên gia về tiền mã hóa tin rằng cuộc tấn công 51% chỉ có trong lý thuyết bởi để thực hiện nó, hacker phải có được sức mạnh tính toán bằng 51% sức mạnh của toàn bộ các máy đào trong một mạng lưới blockchain. Và điều này là bất khả thi.

Đặc biệt các chuyên gia tin rằng, một cuộc tấn công 51% sẽ không bao giờ xảy ra với đồng tiền mã hóa lớn nhất thế giới hiện nay là Bitcoin. Bởi, ngay cả những chiếc máy tính mạnh nhất thế giới hiện nay cũng không thể cạnh tranh trực tiếp với tổng công suất tính toán của blockchain Bitcoin.

Để thực hiện một cuộc tấn công 51% vào mạng lưới blockchain Bitcoin cần sức mạnh tính toán khổng lồ
Để thực hiện một cuộc tấn công 51% vào mạng lưới blockchain Bitcoin cần sức mạnh tính toán khổng lồ.

Nếu ai đó có khả năng thâu tóm 51% sức mạnh của một mạng lưới blockchain lớn như Bitcoin, họ sẽ cần phải có những nhà máy khổng lồ, lượng điện tiêu thụ khổng lồ. Và điều này sẽ rất dễ bị các nhà quản lý phát hiện ra.

Ấy vậy mà cuộc tấn công 51% chỉ tồn tại trên lý thuyết đã diễn ra. Tháng 4 năm 2018, đã xảy ra một cuộc tấn công 51% vào Verge. Nhưng nguyên nhân là do mạng lưới blockchain này xuất hiện một lỗ hổng cho phép hacker không cần tới sức mạnh tính toán thực tế bằng 51% toàn bộ mạng lưới mà vẫn có thể tạo ra block mới với tốc độ cực nhanh.

Để tấn công vào các blockchain nhỏ cần ít năng lực tính toán hơn so với tấn công vào Bitcoin nên theo các chuyên gia một blockchain nhỏ của một đồng altcoin nào đó hoàn toàn có thể bị tấn công 51% nhưng với Bitcoin thì không bao giờ.

Xem thêm:

Thứ Bảy, 02/06/2018 09:48
31 👨 1.912
0 Bình luận
Sắp xếp theo
    ❖ Chuyện công nghệ