Race Attack là gì?
Một Race Attack là khi ai đó phát hai giao dịch crypto mâu thuẫn gần như cùng lúc, với hy vọng giao dịch sai được chấp nhận trước. Đây là chiêu điển hình nhằm vào người bán chấp nhận thanh toán zero conf. Hãy tưởng tượng như gửi hai séc từ cùng một tài khoản và đánh cược rằng nhân viên ngân hàng xử lý séc mà bạn muốn.
“Race Attack needs Replace by Fee.” Không hẳn vậy. Mặc dù RBF có liên quan, một Race Attack có thể xảy ra ngay cả khi không có quy tắc thay thế rõ ràng, đó là lý do nó khác với a Tấn công thay thế giao dịch.
Cách Race Attack hoạt động
Hãy tưởng tượng ai đó trả tiền mua đồ tại quầy bằng crypto. Họ muốn lấy cà phê nhưng giữ lại đồng coin. Kịch bản như sau.
- Bước 1: Kẻ tấn công tạo hai giao dịch dùng cùng các đồng coin, nhưng gửi tới người nhận khác nhau.
- Bước 2: Họ gửi một giao dịch cho người bán và đồng thời phát rộng giao dịch kia tới các nút khác, hy vọng nó lan truyền nhanh hơn.
- Bước 3: Người bán thấy giao dịch đầu tiên đến, coi là đã thanh toán và giao hàng hóa.
- Bước 4: Thợ mỏ xác nhận một trong hai giao dịch mâu thuẫn. Giao dịch kia bị mạng từ chối ngay khi một khối được khai thác.
- Bước 5: Nếu giao dịch được xác nhận là phiên bản theo ý kẻ tấn công, người bán không nhận được gì ngoài một bài học.
Đúng vậy, đơn giản thế và thời điểm là mấu chốt.
Tại sao Race Attack quan trọng
Vậy nếu ai đó thử làm vậy thì sao?
- Lợi ích: Biết về Race Attack giúp bạn đặt quy tắc thanh toán hợp lý, để không giao hàng chỉ dựa trên lời hứa mà sẽ không được xác nhận.
- Góc nhìn: Đây là một dạng của Tấn công chi tiêu hai lần, nhưng không cần thiết bị cầu kỳ hay nhiều tiền.
- Liên quan: Bạn sẽ thấy chủ đề này xuất hiện quanh các ví điểm bán hàng, thương mại điện tử và bất kỳ dịch vụ nào chấp nhận thanh toán zero conf.
Nếu bạn bán hàng cần giao đi hoặc có giá trị thực, hãy chờ một hoặc vài xác nhận giao dịch trước khi giao. Với các mua hàng nhỏ tại chỗ, đặt giới hạn và dùng ví báo xung đột.
Đặc điểm chính của Race Attack
Điểm khiến Race Attack khác biệt:
- Ngay lập tức: Diễn ra trước khi có xác nhận khối đầu tiên.
- Mâu thuẫn: Hai giao dịch dùng cùng đầu vào, chỉ một có thể được xác nhận.
- Tốc độ: Việc lan truyền và lựa chọn thợ mỏ quyết định người thắng, không phải phần cứng cầu kỳ.
- Khác: Nó không cần tấn công 51% hay kiểm soát việc khai thác.
Các biến thể
Race Attack có vài biến thể bạn có thể gặp:
- Cổ điển: Hai giao dịch mâu thuẫn được phát gần như cùng lúc.
- Finney: Thợ mỏ đào trước một khối có giao dịch chi tiêu, rồi trả cho người bán, sau đó công bố khối đó.
- Vector76: Kết hợp yếu tố khối đào trước và thời điểm để lừa sàn giao dịch.
- RBF: Mục tiêu tương tự nhưng dựa vào quy tắc thay thế theo phí thay vì chỉ dựa vào cuộc đua lan truyền.
Kiến trúc mạng quan trọng. Kẻ tấn công có thể tăng cơ hội nếu kiểm soát nhiều peer hoặc tạo danh tính giả, đó là lý do tấn công Sybil thường xuất hiện khi nói về biện pháp phòng ngừa Race Attack.
Ví dụ
Một kẻ lừa đảo trả tiền cho quầy hàng bằng chuyển khoản zero conf, rồi chạy đua gửi một giao dịch mâu thuẫn tới thợ mỏ và thắng, để lại quầy không được trả tiền mặc dù màn hình thoáng hiển thị đã thanh toán.
Thông tin thú vị
Race Attack đã được bàn thảo trên các diễn đàn Bitcoin sớm nhất, và lời khuyên kiểu cũ của Satoshi là chờ nhiều xác nhận vẫn là phương án được khuyên dùng. Rolex gặp các chủ đề Reddit.
Tóm tắt
Tóm gọn: một Race Attack là một mưu mẹo về thời điểm nhằm vào thanh toán zero conf, nên thêm chút kiên nhẫn và nó sẽ trở thành chuyện của hôm qua.
