Tấn công năm mươi mốt phần trăm là kịch bản một bên, hoặc một liên minh, nắm hơn nửa tổng sức mạnh tính toán của mạng lưới. Với đa số đó, họ có thể tìm khối nhanh hơn phần còn lại cộng lại, đủ để tạo một nhánh riêng vượt qua chuỗi chính. Từ đó, họ có thể viết lại lịch sử gần đây để chi tiêu hai lần, hoặc từ chối đưa một số giao dịch vào khối. Nhưng họ không thể lấy bitcoin của người khác, không thể tạo bitcoin vượt lịch phát hành, và không thể thay đổi luật đồng thuận, vì các nút đầy đủ sẽ từ chối khối vi phạm.
Bài viết giải thích rõ ranh giới giữa những gì kẻ tấn công làm được và không làm được, chi phí của cuộc tấn công, và vì sao các chuỗi nhỏ dễ bị tấn công hơn Bitcoin. Đây là bài kiến thức về an ninh.
Kẻ tấn công cần gì
Điều kiện cần là sức mạnh tính toán lớn hơn phần còn lại của mạng trong suốt thời gian tấn công. Với Bitcoin, điều này có nghĩa là một lượng máy đào chuyên dụng và điện năng khổng lồ, hoặc kiểm soát được những nhóm đào lớn.
Không thể thuê sức mạnh tính toán dễ dàng cho Bitcoin ở quy mô đó, vì phần lớn máy đào SHA-256 trên thế giới đã đang đào Bitcoin. Muốn có đa số, phải mua máy mới, lắp đặt, cấp điện, hoặc thuyết phục, ép buộc thợ đào hiện có.
Con số năm mươi mốt phần trăm là cách nói dễ nhớ. Thực tế, với ít hơn một nửa, kẻ tấn công vẫn có xác suất thành công khi chỉ cần đảo ngược một hai khối, nhưng xác suất giảm rất nhanh khi số khối tăng.
Ngoài ra, có những chiến lược đào ích kỷ, giữ khối đã tìm được không công bố ngay, có thể mang lại lợi thế với ít hơn một nửa sức mạnh trong một số điều kiện lý thuyết.
Những chiến lược này được nghiên cứu nhiều về mặt học thuật, và là lý do cộng đồng theo dõi tỷ trọng các nhóm đào.
Tóm lại, an ninh không có ngưỡng tuyệt đối mà là một dải xác suất và chi phí.
Những gì kẻ tấn công làm được
Thứ nhất, chi tiêu hai lần. Kẻ tấn công gửi bitcoin cho một nơi, chờ nơi đó ghi nhận sau vài xác nhận, đồng thời bí mật đào một nhánh trong đó giao dịch kia không tồn tại, thay bằng giao dịch trả về cho chính họ. Khi nhánh bí mật dài hơn, họ công bố, mạng chuyển sang nhánh mới, giao dịch đầu bị xoá.
Thứ hai, kiểm duyệt. Với đa số, kẻ tấn công có thể từ chối đưa một số giao dịch vào khối, và mồ côi hoá mọi khối của thợ đào khác có chứa giao dịch đó.
Thứ ba, chiếm toàn bộ phần thưởng khối, vì khối của thợ đào khác liên tục bị nhánh của họ vượt qua.
Những việc này gây thiệt hại lớn cho niềm tin vào mạng lưới, và đặc biệt cho những nơi nhận thanh toán với ít xác nhận.
Tất cả đều cần duy trì đa số liên tục; khi kẻ tấn công rút, mạng trở lại bình thường.
Một cuộc tấn công kéo dài cần chi phí kéo dài, đó là giới hạn tự nhiên.
Những gì kẻ tấn công không làm được
Không thể chi tiêu bitcoin của người khác. Chi tiêu cần chữ ký từ khoá bí mật, và đa số sức mạnh tính toán không giúp tạo chữ ký giả.
Không thể tạo bitcoin vượt lịch phát hành. Khối có giao dịch coinbase vượt phần thưởng cho phép sẽ bị mọi nút đầy đủ từ chối, dù có bao nhiêu công việc.
Không thể thay đổi luật đồng thuận, như tổng cung hay quy tắc chữ ký. Nút đầy đủ kiểm tra luật, không quan tâm ai có sức mạnh tính toán.
Không thể viết lại lịch sử xa một cách thực tế. Càng đi xa, càng phải làm lại nhiều công việc, chi phí tăng tuyến tính và thời gian tăng theo.
Ranh giới này rất quan trọng: tấn công năm mươi mốt phần trăm là mối đe doạ về thứ tự giao dịch gần đây, không phải về quyền sở hữu hay luật chơi.
Hiểu ranh giới giúp đánh giá đúng mức rủi ro, không phóng đại cũng không xem nhẹ.
Chi phí và động cơ
Với Bitcoin, chi phí để có đa số sức mạnh tính toán là cực kỳ lớn, cả phần cứng lẫn điện. Các ước tính học thuật đặt con số ở mức mà rất ít tổ chức trên thế giới có khả năng chi trả.
Ngay cả khi có khả năng, động cơ là câu hỏi. Một cuộc tấn công thành công sẽ làm sụt giảm niềm tin và giá trị của Bitcoin, làm mất giá trị của chính số máy đào mà kẻ tấn công đã đầu tư, vì máy chỉ dùng được cho đào.
Kịch bản đáng lo hơn là một chủ thể không quan tâm lợi nhuận, như một bên muốn phá hoại vì lý do chính trị. Với chủ thể đó, chi phí là rào cản duy nhất.
Cộng đồng cũng có những phản ứng có thể có, như thay đổi thuật toán bằng chứng công việc làm vô hiệu máy của kẻ tấn công, dù đây là biện pháp cực đoan với chi phí lớn cho mọi người.
An ninh của Bitcoin vì vậy dựa trên kinh tế học: tấn công có thể nhưng không đáng.
Đây là khác biệt so với những hệ thống dựa trên quyền hạn, nơi chỉ cần chiếm được tài khoản quản trị.
Vì sao chuỗi nhỏ dễ bị tấn công
Những blockchain nhỏ dùng bằng chứng công việc có tổng sức mạnh tính toán thấp. Kẻ tấn công có thể thuê sức mạnh từ các thị trường cho thuê, hoặc chuyển máy từ chuỗi lớn hơn dùng cùng thuật toán sang trong vài giờ.
Đã có nhiều vụ tấn công năm mươi mốt phần trăm thực tế trên các chuỗi nhỏ, trong đó kẻ tấn công chi tiêu hai lần ở các nơi nhận gửi tài sản, gây thiệt hại đáng kể.
Bài học là bằng chứng công việc chỉ an toàn khi sức mạnh tính toán đủ lớn so với khả năng tấn công. Một chuỗi sao chép mã nguồn Bitcoin không thừa hưởng an ninh của Bitcoin.
Những lời quảng cáo về chuỗi mới an toàn như Bitcoin cần được hỏi lại: sức mạnh tính toán của nó là bao nhiêu, và có thể thuê được bao nhiêu phần trăm.
Đây là lý do một số chuỗi chọn thuật toán khác, hay cơ chế đồng thuận khác, để tránh bị máy từ chuỗi lớn tấn công.
Với người dùng, lời khuyên chung là thận trọng hơn rất nhiều với tài sản trên chuỗi nhỏ, vì rủi ro bị viết lại lịch sử là có thật.
Tóm tắt về tấn công năm mươi mốt phần trăm
Điều kiện Nắm hơn nửa sức mạnh tính toán trong suốt thời gian tấn công.
Chi tiêu hai lần Viết lại lịch sử gần đây để huỷ giao dịch đã được ghi nhận.
Kiểm duyệt Từ chối giao dịch và mồ côi hoá khối của người khác.
Chiếm phần thưởng Khối của thợ đào khác liên tục bị vượt qua.
Không lấy được bitcoin của người khác Cần khoá bí mật để ký.
Không tạo bitcoin vượt lịch Nút đầy đủ từ chối khối vi phạm.
Không đổi được luật Luật do nút kiểm tra, không do sức mạnh tính toán.
Lịch sử xa khó viết lại Chi phí tăng theo số khối.
Chi phí với Bitcoin Cực kỳ lớn, rất ít tổ chức có khả năng.
Động cơ kinh tế Tấn công làm mất giá trị chính máy đào của kẻ tấn công.
Chuỗi nhỏ Đã nhiều lần bị tấn công thực tế.
Phòng thủ của người dùng Chờ đủ xác nhận cho giao dịch giá trị lớn.
Lời nhắc cho người dùng
Hiểu tấn công năm mươi mốt phần trăm giúp giải thích lý do chờ nhiều xác nhận cho giao dịch giá trị lớn. Với Bitcoin, sáu xác nhận là ngưỡng quen thuộc, dù mỗi nơi có chính sách riêng.
Nó cũng giúp bạn nhận ra những thông tin gây hoang mang. Tin đồn kiểu Bitcoin sắp bị tấn công, mất hết bitcoin thường phóng đại; kẻ tấn công không lấy được bitcoin trong ví của bạn.
Ngược lại, đừng coi nhẹ rủi ro với các chuỗi nhỏ, nơi tấn công đã xảy ra nhiều lần.
Bài viết giải thích cơ chế an ninh, không phải đánh giá đầu tư.
Câu hỏi thường gặp
Tấn công 51% là gì?
Là khi một bên nắm hơn nửa sức mạnh tính toán, đủ để đào nhanh hơn phần còn lại và viết lại lịch sử gần đây của chuỗi.
Kẻ tấn công 51% có lấy được bitcoin trong ví tôi không?
Không. Chi tiêu cần chữ ký từ khoá bí mật, sức mạnh tính toán không giúp giả chữ ký.
Kẻ tấn công có thể in thêm bitcoin không?
Không. Nút đầy đủ từ chối khối có phần thưởng vượt lịch, bất kể công việc bao nhiêu.
Vì sao chuỗi nhỏ dễ bị tấn công hơn?
Vì sức mạnh tính toán thấp, kẻ tấn công có thể thuê hoặc chuyển máy từ chuỗi lớn sang trong thời gian ngắn.
Tôi nên làm gì để giảm rủi ro chi tiêu hai lần?
Chờ đủ số xác nhận trước khi coi giao dịch giá trị lớn là hoàn tất.