
Các cuộc tấn công phát lại (replay attacks) là một rủi ro bảo mật phổ biến trong hệ sinh thái blockchain. Kẻ tấn công có thể chặn và phát lại các giao dịch hợp lệ từ một blockchain này sang một blockchain khác có liên quan. Mối đe dọa này thường xuất hiện sau khi xảy ra chia tách mạng lưới blockchain (hard fork), khi hai chuỗi có chung lịch sử giao dịch và sử dụng cùng cơ chế chữ ký, cho phép các giao dịch đã ký trên một chuỗi vẫn hợp lệ trên chuỗi còn lại và dễ dàng bị lợi dụng để phát lại với mục đích xấu. Hậu quả của hình thức tấn công này là nguy cơ chi tiêu kép hoặc chuyển tài sản người dùng trái phép, đe dọa nghiêm trọng tới sự an toàn của toàn bộ hệ sinh thái blockchain.
Tấn công phát lại xuất hiện ngay từ những giai đoạn đầu của công nghệ blockchain. Khi Bitcoin và các loại tiền mã hóa ra đời, cùng với hiện tượng chia tách mạng lưới blockchain ngày càng phổ biến, vấn đề bảo mật này đã nhanh chóng được chú ý. Tiêu biểu, năm 2017, khi Bitcoin tách ra thành Bitcoin và Bitcoin Cash, do chưa có cơ chế chống phát lại hiệu quả, các giao dịch có khả năng bị phát lại giữa hai mạng. Ethereum cũng từng gặp phải các thách thức tương tự sau các lần chia tách mạng lưới, buộc cộng đồng các nhà phát triển phải ưu tiên nghiên cứu và triển khai các giải pháp chống phát lại.
Về mặt kỹ thuật, nguyên nhân chính khiến tấn công phát lại có thể xảy ra là do các chuỗi blockchain sau chia tách vẫn giữ nguyên định dạng địa chỉ ví và thuật toán ký số. Trong giao dịch blockchain, người dùng ký bằng khóa riêng để xác nhận quyền sở hữu. Khi blockchain bị chia tách, người dùng có cùng địa chỉ ví và khóa riêng trên cả hai mạng, nên nếu không có cơ chế phòng vệ riêng, kẻ tấn công chỉ cần sao chép dữ liệu giao dịch của một chuỗi rồi phát lại trên chuỗi kia. Với cơ chế xác thực giống nhau, các giao dịch này sẽ được coi là hợp lệ trên cả hai chuỗi. Một số biện pháp phòng ngừa phổ biến là tách biệt giao dịch giữa các chuỗi, áp dụng mã nhận diện chuỗi (chain ID) riêng, xây dựng định dạng giao dịch đặc thù cho từng chia tách hoặc bổ sung các dữ liệu chỉ hợp lệ trên một chuỗi nhất định.
Loại tấn công này mang lại nhiều rủi ro và thách thức cho cả người dùng lẫn hệ sinh thái. Đối với người dùng, hình thức tấn công này có thể khiến họ mất tài sản ngoài ý muốn, ví dụ sau khi gửi giao dịch trên một chuỗi, có thể bị phát lại trên chuỗi khác và mất thêm tài sản. Về mặt kỹ thuật, cần đánh giá nguy cơ tấn công phát lại ngay từ khâu thiết kế hệ thống, bởi nếu bổ sung cơ chế chống phát lại sau này có thể buộc phải chia tách mạng lưới, làm tăng độ phức tạp và rủi ro triển khai. Ở quy mô toàn mạng, loại tấn công này gây mất niềm tin của người dùng đối với blockchain, ảnh hưởng đến sự phát triển lâu dài của hệ sinh thái. Hơn nữa, khi công nghệ xuyên chuỗi phát triển, hình thức tấn công phát lại cũng ngày càng đa dạng, buộc đội ngũ phát triển không ngừng theo dõi, cập nhật và nâng cấp các chiến lược phòng thủ.
Phòng chống tấn công phát lại đóng vai trò quyết định đối với an toàn của mạng blockchain và bảo vệ tài sản cho người dùng. Khi ngành blockchain trưởng thành, các cơ chế chống phát lại đã được nghiên cứu và triển khai ngày càng hiệu quả. Đối với các dự án blockchain, cần xây dựng giải pháp chống phát lại trước khi lên kế hoạch chia tách mạng lưới; đối với người dùng, nắm rõ các rủi ro tấn công phát lại và cẩn trọng trong các đợt chia tách chuỗi cũng rất cần thiết. Trong tương lai, với sự hội nhập của các công nghệ mật mã tiên tiến như bằng chứng không tiết lộ (zero-knowledge proof) và tính toán đa bên bảo mật (secure multi-party computation), các mạng blockchain hoàn toàn có thể xây dựng những cơ chế chống phát lại vững chắc hơn, tiếp tục nâng cao mức độ an toàn của toàn bộ hệ thống.


