Ngày 4 tháng 8 năm 2020, gần 2.750 tấn ammonium nitrate phát nổ tại cảng Beirut, cướp đi 218 sinh mạng và làm rung chuyển toàn bộ Lebanon. Trong khi các mảnh vỡ bê tông vẫn còn nóng rẫy, một thứ khác đã âm thầm chuyển động trong không gian kỹ thuật số: hàng triệu đô la, được bọc dưới dạng stablecoin, chảy qua các sàn giao dịch phi tập trung vào những chiếc ví không nhãn mác. Không một ai đếm được chúng một cách công khai, nhưng từng khối dữ liệu trên chuỗi vẫn ghi nhận vĩnh viễn. Bytecode không bao giờ nói dối.
Năm nay, khi lễ kỷ niệm vụ nổ bị lu mờ bởi một làn sóng hủy diệt mới ở miền nam Liban, tôi không thể không nhìn vào mempool như một chiến trường thứ hai. Tôi là Ngô Mai, một core protocol developer 33 tuổi, đã dành 17 năm quan sát ngành blockchain từ những ngày đầu hợp đồng thông minh. Tôi không phải nhà phân tích địa chính trị; tôi phân tích code. Nhưng tôi nhận ra rằng các dòng tiền mã hóa trên chuỗi chính là bản sao kỹ thuật số của các dòng đạn pháo. Và những cuộc chiến hiện đại không chỉ diễn ra ở biên giới, mà còn diễn ra trong các block.
Bối cảnh mà mọi nhà phát triển blockchain cần hiểu: Lebanon đã trải qua một cuộc khủng hoảng tài chính tồi tệ nhất trong lịch sử hiện đại. Đồng bảng Liban mất giá hơn 95% giá trị so với đô la Mỹ kể từ năm 2019. Hệ thống ngân hàng sụp đổ, người dân không thể rút tiền tiết kiệm của mình. Chính trong bối cảnh đó, tiền mã hóa trở thành phao cứu sinh. Theo nhiều báo cáo điều tra, người dân Liban đổ xô sang USDT để bảo toàn tài sản. Họ không cần KYC, không cần ngân hàng, chỉ cần một chiếc điện thoại thông minh và một kết nối internet. Trong thế giới đó, một chatbot Telegram có thể mua được stablecoin chỉ trong vài phút.
Nhưng câu chuyện không chỉ dừng lại ở người dân. Vào năm 2019, Bộ Tài chính Hoa Kỳ đã trừng phạt hai cá nhân có liên quan đến Hezbollah vì đã sử dụng một sàn giao dịch tiền mã hóa ở Thổ Nhĩ Kỳ để chuyển tiền. Điều đó có nghĩa là các tổ chức vũ trang đã thâm nhập vào không gian crypto từ rất lâu. Họ không chỉ dùng tiền pháp định và vàng; họ đang dùng USDT, Bitcoin, và các giao thức DeFi. Nhưng các biện pháp trừng phạt truyền thống chỉ đóng băng các tài khoản ngân hàng. Trên blockchain, không có ai có thể đóng băng một hợp đồng thông minh, trừ khi chính mã nguồn của hợp đồng đó có điều khoản đó. Và như tôi đã nói, bytecode không bao giờ nói dối.
Tôi bắt đầu đi sâu vào phân tích kỹ thuật của vấn đề này bằng một câu hỏi: một tổ chức khủng bố hoặc một quân đội du kích hiện đại như Hezbollah thực sự dùng blockchain như thế nào để duy trì dòng tài chính dưới các lệnh trừng phạt? Câu trả lời nằm ở ba trụ cột: stablecoin để lưu trữ giá trị, các sàn phi tập trung để hoán đổi tài sản, và các giao thức trộn tiền để xóa dấu vết. Ba trụ cột này tạo thành một bộ ba khép kín, và không hệ thống ngân hàng nào có thể cạnh tranh về tốc độ và tính phi biên giới.
Stablecoin là vũ khí lựa chọn đầu tiên. Khi UST sụp đổ vào tháng 5 năm 2022, tôi đã dành ba tuần phân tích mã nguồn của Anchor Protocol và cơ chế đúc đốt của UST. Tôi đã viết một báo cáo dài 20 trang chỉ ra 7 lỗi thiết kế trong xử lý oracle và thanh lý. Nhưng điều khiến tôi ấn tượng nhất không phải là lỗi kỹ thuật, mà là cách mà sự sụp đổ của một giao thức stablecoin có thể tạo ra một cú sốc địa chính trị ảnh hưởng đến hàng triệu người. Terra Luna vốn được dùng rộng rãi ở châu Á, và khi nó sụp đổ, số tiền của những người lao động nghèo bị xóa sổ. Ngược lại, USDT vẫn đứng vững bởi vì nó có một trung tâm phát hành tại nơi tuân thủ luật pháp Mỹ. Nhưng chính sự tuân thủ đó tạo ra một vấn đề mới: vì USDT được phát hành trên một địa chỉ có thể đóng băng, các tổ chức bị trừng phạt không thể giữ USDT lâu. Họ phải nhanh chóng chuyển đổi sang một tài sản khác, hoặc sử dụng các giao thức không có cơ chế đóng băng.
Đây là lý do tại sao các sàn giao dịch phi tập trung như Uniswap trở thành trận địa. Năm 2020, tôi đã xây dựng một công cụ mô phỏng gas cho Uniswap V2 bằng Python, xử lý hơn 10.000 giao dịch mẫu để kiểm tra chi phí của từng lệnh swap. Trong quá trình đó, tôi nhận ra một điều cơ bản: bất kỳ ai cũng có thể tạo pool thanh khoản mà không cần xác minh danh tính. Bạn có thể tạo một pool gồm USDT và một đồng memecoin rác, rồi sử dụng pool đó để hoán đổi USDT thành đồng memecoin đó. Sau đó, bạn đưa đồng memecoin đó sang một sàn giao dịch khác, hoán đổi tiếp thành ETH, rồi chuyển qua một cầu nối sang một chuỗi khác. Sau ba hoặc bốn bước, dấu vết của dòng tiền trở nên cực kỳ khó theo dõi, đặc biệt khi một trong các bước sử dụng một pool thanh khoản nông. Và các công cụ phân tích chuỗi như Chainalysis chỉ có thể theo dõi theo các họa tiết đã biết; chúng dễ dàng bị lừa bởi các giao dịch chuyển tiếp phức tạp.
Nhưng bước điều tra thú vị nhất bắt đầu khi tiền chạm vào Tornado Cash. Tornado Cash sử dụng một hợp đồng thông minh với một cây Merkle khổng lồ chứa các cam kết. Người dùng gửi tiền và nhận một bằng chứng không kiến thức, cho phép họ rút tiền bằng một địa chỉ hoàn toàn mới. Về bản chất, nó giống như một phòng thay đồ: bạn ném vào một chiếc áo khoác, nhận một chiếc vé, rồi quay lại một thời điểm khác để lấy một chiếc áo mới. Không ai biết chiếc áo nào là của bạn. Các tòa án đã trừng phạt Tornado Cash vào năm 2022, nhưng mã nguồn vẫn hoạt động, và các fork của nó vẫn tồn tại. Đó là một bằng chứng không thể chối cãi: bạn không thể cấm một hợp đồng thông minh; bạn chỉ có thể khiến nó khó sử dụng hơn.
Trong những chiến dịch quân sự như cuộc tấn công mới đây ở miền nam Liban, việc sử dụng các giao thức trộn tiền trở nên đặc biệt quan trọng. Khi các lãnh đạo quân sự bị ám sát bằng các cuộc tấn công có chủ đích của Israel, họ không thể mở tài khoản ngân hàng quốc tế. Họ cũng không thể dùng thẻ tín dụng. Nhưng họ có thể có một phần mềm ví trên một chiếc điện thoại không liên quan về mặt pháp lý với tổ chức của họ. Một giao dịch 1 BTC từ một sàn giao dịch có KYC có thể được chuyển đến Tornado Cash, sau đó rút ra theo từng phần nhỏ trong nhiều tuần. Công cụ theo dõi sẽ phát hiện một địa chỉ rút tiền, nhưng không có bằng chứng nào cho thấy nó thuộc về một tổ chức cụ thể. Và khi tiền nằm trong một chiếc ví tách biệt hoàn toàn, việc chứng minh ý định là vô cùng khó khăn. Đây chính là điểm mù của các cơ quan thực thi pháp luật.
Nhưng tôi không muốn chỉ lên án các giao thức riêng lẻ. Là một người phát triển giao thức, tôi buộc phải nhìn vào mã nguồn nhiều hơn. Hãy xem xét một hợp đồng Solidity được thiết kế để nhận quyên góp cho một tổ chức cứu trợ nhưng có thể bị lợi dụng để tài trợ tác chiến. Ví dụ, tôi có thể viết một phiên bản đơn giản:
"""solidity
contract ZakatFund {
address owner;
mapping(address => bool) blacklist;
function donate(address recipient) external payable {
require(!blacklist[recipient], "blocked");
recipient.call{value: msg.value}("");
}
}
"""
Đây là một mô hình gây quỹ điển hình. Nhưng hãy nhìn kỹ: hợp đồng này cập nhật trạng thái trước khi gọi bên ngoài? Không, nó không cập nhật bất cứ điều gì. Nó chỉ chuyển tiền. Và vì vậy, kẻ tấn công có thể khai thác reentrancy để rút toàn bộ số dư. Đây chính là lý do tại sao tôi luôn nói: Reentrancy vẫn là kẻ thù số một. Ngay cả những hợp đồng gây quỹ nhân đạo nhất cũng có thể chứa đầy lỗ hổng chết người. Và đừng nghĩ rằng các tổ chức phi chính phủ thì không bị nhắm tới; trái lại, các nhóm vũ trang có thể tạo ra một hợp đồng giả mạo như một sàn gây quỹ cứu trợ để đánh lừa các nhà tài trợ vô tội, rồi sử dụng một lỗ hổng reentrancy để rút tiền một cách lén lút. Khi tôi audit hợp đồng của một quỹ ICO vào năm 2017, tôi đã phát hiện một lỗi tương tự và đã cứu được 200 ETH. Nhưng vấn đề này vẫn còn tồn tại đến ngày nay, bởi vì quá nhiều lập trình viên viết mã dựa trên trí nhớ và hy vọng, thay vì fuzz test. Audit? Tôi thích fuzz testing hơn. Mỗi khi tôi chạy một công cụ như Echidna hoặc Foundry, nó luôn tìm ra một vài lỗi mà mắt người không nhìn thấy.
Cầu nối cross-chain là một điểm yếu lớn hơn. Các giao thức cầu nối như Wormhole, Ronin Bridge, Nomad đã bị hack với tổng thiệt hại hơn một tỷ đô la. Nhưng điều ít người nói đến là các cầu nối cũng là một công cụ tẩy rửa tiền tuyệt vời. Bởi vì các hợp đồng cầu nối thường sử dụng một số lượng lớn các khoản ký gửi và rút tiền, các nhà phân tích on-chain rất khó để theo dõi luồng tiền khi nó được bắc qua shard hoặc chuỗi khác. Tôi đã tham gia kiểm thử EIP-4844 vào năm 2024 trên testnet Holesky, và tôi nhận ra rằng chúng ta vẫn chưa có công cụ phân tích đủ mạnh để xử lý sự phức tạp của các rollup. Khi mỗi rollup có một cầu nối riêng, và có một giao thức di động giữa các cầu nối, thì việc truy vết trở thành một bài toán kinh điển về định hướng đồ thị phi định danh. Đó chính là một trong những lý do khiến các cầu nối trở thành nơi lý tưởng để rửa tiền.
Một điểm nữa tôi muốn đề cập đến là vai trò của bằng chứng không kiến thức. Tôi đã phát triển một framework xác thực AI bằng zk-SNARKs vào năm 2026, sử dụng thư viện Arkworks để tạo proof cho một mạng nơ-ron 10 lớp. Tôi hiểu rất rõ sức mạnh của những bằng chứng này. Một hợp đồng zk-SNARKs có thể xác minh rằng một giao dịch đã được ký bởi một người có quyền, mà không tiết lộ danh tính của người ký. Trong một hệ thống tài trợ khủng bố, điều này có nghĩa là một nhóm vũ trang có thể sử dụng một địa chỉ ví thông minh với đa chữ ký ngưỡng (threshold signature), nơi mỗi chỉ huy nắm giữ một phần khóa. Khi cần chuyển tiền, chỉ cần đủ số lượng chữ ký được tập hợp qua một kênh mật, và giao dịch sẽ được thực hiện mà không lộ ra danh tính của bất kỳ ai. Các giao thức như Safe (trước đây là Gnosis Safe) cho phép điều này một cách hợp pháp, và cũng cho phép kẻ xấu sử dụng cùng một công cụ. Không có người giám sát trung tâm nào có thể từ chối thực hiện giao dịch đó.
Đến đây, cộng đồng blockchain thường xuất hiện một phản biện quen thuộc: blockchain minh bạch, mọi thứ đều công khai, cho nên chúng ta có thể bắt được kẻ xấu. Tôi muốn phản đối điều đó một cách dứt khoát. Sự minh bạch của blockchain là một con dao hai lưỡi. Với một bên, nó cho phép các nhà điều tra nhìn thấy mọi giao dịch. Nhưng với bên kia, nó cho những kẻ tài trợ khủng bố biết chính xác thời điểm và địa điểm chúng cần phải che giấu. Chúng không ngu ngốc; chúng có các chuyên gia kỹ thuật. Chúng biết rằng một địa chỉ ví được sử dụng hai lần sẽ bị gắn cờ. Vì vậy chúng tạo ra hàng trăm ví dùng một lần, chúng sử dụng các hợp đồng mồi nhử, chúng chuyển tiền qua hai hoặc ba lớp trộn, và chúng rút tiền dưới dạng các khoản nhỏ dưới ngưỡng phát hiện. Sự minh bạch chỉ khiến chúng thận trọng hơn. Trong báo cáo của tôi về Terra Luna, tôi đã chỉ ra rằng sự minh bạch không ngăn được sự phá sản; nó chỉ khiến quá trình sụp đổ trở nên nhìn thấy được, như một cơn đau tim phát sóng trực tiếp trên ti vi.
Hãy xem xét cuộc khủng hoảng Beirut từ một góc độ khác. Vụ nổ cảng Beirut đã làm lộ ra sự tham nhũng trong việc quản lý các kho hàng hóa. Nhưng blockchain cũng có thể ngăn chặn điều đó? Tôi không nghĩ vậy. Nếu các hồ sơ vận chuyển được lưu trữ trên một chuỗi khối, chúng có thể minh bạch hơn, nhưng chúng vẫn có thể bị các bên liên quan làm giả. Thực tế là blockchain không phải là một công cụ chống tham nhũng thần kỳ. Nó chỉ là một sổ cái. Sổ cái không thể ngăn chặn một người đưa hối lộ. Nó chỉ ghi lại hối lộ đó. Và nếu người hối lộ đủ thông minh để sử dụng một giao thức ẩn danh, thì sổ cái đó trở thành một mảnh giấy vô dụng.
Một điểm quan trọng khác thường bị bỏ qua: sự bất ổn địa chính trị tại Lebanon và Trung Đông ảnh hưởng trực tiếp đến hạ tầng blockchain toàn cầu. Khi xung đột leo thang, các sàn giao dịch tập trung tại khu vực có thể buộc phải đóng cửa, nguồn cung stablecoin trên thị trường OTC thay đổi, và giá gas trên Ethereum có thể biến động do nhiều tổ chức quyên góp chuyển tiền đến các nhóm cứu trợ. Nhưng điều tôi muốn nhấn mạnh là sự tập trung của hạ tầng. Hầu hết các nhà sản xuất phần cứng chữ ký (hardware wallet) đặt tại các nước trung lập, nhưng các nhà cung cấp dịch vụ RPC như Infura hoặc Alchemy đặt tại Mỹ. Nếu Hoa Kỳ ban hành một lệnh trừng phạt mới liên quan đến một giao thức DeFi cụ thể, họ có thể yêu cầu các nhà cung cấp RPC chặn truy cập từ một quốc gia. Điều này biến bất kỳ dApp nào dựa trên nhà cung cấp RPC tập trung thành một ứng dụng bị kiểm soát bởi chính phủ Mỹ. Và đó là một điểm mù nghiêm trọng: chúng ta xây dựng các giao thức phi tập trung trên hạ tầng tập trung. Khi Lebanon bị trừng phạt, các nhà phát triển Liban có thể vẫn chạy một node đầy đủ, nhưng những người dùng bình thường phụ thuộc vào các nhà cung cấp API miễn phí. Và nếu API đó bị chặn, họ sẽ bị cắt khỏi toàn bộ nền kinh tế tiền mã hóa.
Tôi không viết bài này để đưa ra một giải pháp hoàn hảo. Tôi chỉ muốn chỉ ra rằng những cuộc xung đột quân sự như cuộc xung đột ở Lebanon không chỉ diễn ra bằng máy bay không người lái và tên lửa. Nó diễn ra bằng các giao thức tài chính. Và những người xây dựng blockchain – những người như tôi – chúng ta đang tham gia vào một cuộc chiến mà chúng ta không thể tránh né. Mỗi hợp đồng thông minh của chúng ta viết ra đều có thể được sử dụng bởi một bên nào đó. Mỗi giao thức trộn tiền, mỗi cầu nối, mỗi sàn DEX – đều có thể trở thành công cụ cho quân đội hoặc cho những kẻ khủng bố, tùy thuộc vào cách chúng được sử dụng.
Nhưng tôi vẫn là một người theo chủ nghĩa tự do, tin vào quyền riêng tư và tự do tài chính. Tôi không muốn cấm tiền mã hóa vì điều đó sẽ tước đi công cụ sinh tồn của những người dân thường tại Lebanon. Họ cần stablecoin để giữ giá trị tài sản của mình khi đồng bảng sụp đổ. Họ cần quyền riêng tư để không bị những kẻ xấu theo dõi. Vì vậy, câu hỏi không phải là "có nên cho phép blockchain" hay "có nên cấm blockchain", mà là làm thế nào để xây dựng các giao thức có khả năng chống lạm dụng mà không hy sinh quyền riêng tư của người dùng trung thực. Đây là một bài toán kỹ thuật mà không ai có thể giải quyết một cách hoàn hảo. Có thể chúng ta cần các hợp đồng thông minh có cơ chế chống tài trợ khủng bố mà vẫn cho phép ẩn danh có trách nhiệm - một loại "KYC on-chain" có thể xác minh các quỹ không đến từ các địa chỉ bị trừng phạt, nhưng không tiết lộ danh tính người dùng thông thường.
Cho đến nay, chưa ai xây dựng được một hệ thống như vậy. Nhưng tôi biết rằng nếu chúng ta không chủ động xây dựng nó, thì các cơ quan quản lý sẽ áp đặt một hệ thống CBDC kiểm soát toàn diện, và điều đó sẽ giết chết chính giá trị cốt lõi của tiền mã hóa. Tôi đã nói điều này nhiều lần: CBDC và tiền mã hóa là hai thế giới đối lập. Một bên tìm kiếm sự giám sát toàn diện; bên kia tìm kiếm sự tự do. Nhưng trong thực tế, chúng không thể cùng tồn tại. Và nếu chúng ta không muốn cả thế giới chuyển sang CBDC, chúng ta cần phải tự mình giải quyết vấn đề tài trợ phi pháp trên blockchain.
Khi nhìn vào những gì đang xảy ra tại Beirut, tôi không thể không nhớ lại khoảnh khắc vào năm 2017, khi tôi mới tốt nghiệp và lần đầu tiên phát hiện ra lỗ hổng reentrancy trong hợp đồng ICO. Tôi hồi hộp gõ từng dòng phân tích, gửi lên GitHub, và cảm thấy mình đã cứu cả thế giới. Nhưng sau đó tôi nhận ra rằng một lỗ hổng mới luôn luôn được tạo ra, và một cách khai thác mới luôn luôn xuất hiện. Cuộc đua này không bao giờ kết thúc. Và với vai trò là các nhà phát triển, chúng ta có hai lựa chọn: hoặc chúng ta ẩn mình trong phòng thí nghiệm và viết code như thể thế giới bên ngoài không tồn tại, hoặc chúng ta mở mắt ra và thừa nhận rằng mỗi dòng code của chúng ta đều có thể trở thành một vũ khí.
Trong báo cáo quân sự mà tôi tình cờ đọc được về vụ việc này, họ nói về "chiến tranh phi đối xứng", "tên lửa chính xác", "tác chiến điện tử". Nhưng họ không hề nhắc đến mempool. Họ không phân tích các địa chỉ ví, không kiểm tra các pool thanh khoản. Đó là lý do tại sao bài phân tích của họ chỉ là một bộ xương. Nếu họ thực sự muốn hiểu cách mà một tổ chức du kích duy trì hoạt động dưới các lệnh trừng phạt, họ sẽ mở một block explorer vào lúc 2 giờ sáng, lọc ra các giao dịch stablecoin có giá trị từ 10.000 đến 50.000 đô la, và truy vết chúng qua một cầu nối. Họ sẽ hiểu rằng mạng lưới tài chính của lực lượng kháng chiến không nằm trong các ngân hàng ở Thụy Sĩ, mà nằm rải rác hàng ngàn ví trên Ethereum và Tron.
Tất nhiên, tôi không có bằng chứng cụ thể rằng Hezbollah đang sử dụng Ethereum hoặc Tron ngay lúc này. Tôi chỉ đang suy luận dựa trên cấu trúc động lực của hệ thống. Nhưng tôi đã phân tích đủ nhiều hợp đồng thông minh để biết rằng khi một thứ có thể xảy ra trên blockchain, nó sẽ xảy ra. Không có cơ quan bảo mật nào có thể dập tắt được sáng kiến của những kẻ tấn công sáng tạo nhất.
Một điều cuối cùng tôi muốn nói: đừng bao giờ tin vào bất kỳ ai tuyên bố rằng họ có thể giải quyết vấn đề này bằng một "giải pháp blockchain thần kỳ". Đừng tin vào white paper, hãy đọc code. Mỗi bytecode là một lời thú tội. Khi bạn thấy một giao thức quyên góp từ thiện không có cơ chế chống reentrancy, đó là một lời mời tấn công. Khi bạn thấy một cầu nối có quyền nâng cấp đơn giản, đó là một cánh cửa cho hacker. Và khi bạn thấy một stablecoin tuyên bố phi tập trung nhưng có một địa chỉ quản trị có thể đóng băng, đó là một lời nói dối lớn hơn tất cả các white paper cộng lại.
Tôi đã dành 17 năm để quan sát ngành này, từ ICO cho đến DeFi summer, từ Terra đến EIP-4844. Tôi đã chứng kiến những vụ hack hàng trăm triệu đô la, những cuộc tranh luận về gas và phí. Nhưng chưa bao giờ tôi cảm thấy ngành của chúng ta lại có trách nhiệm lớn đối với hòa bình và an ninh của thế giới như bây giờ. Bởi vì khi vụ nổ ở Beirut diễn ra, trong khi những nhà phân tích quân sự chỉ nhìn vào số đạn, thì ở một góc khác của internet, ai đó đã chuyển một khoản tiền từ một chiếc ví bị cấm sang một chiếc ví mới tinh, xóa sạch dấu vết, và sẵn sàng cho một cuộc chiến dài hạn.
Cuộc chiến tiếp theo sẽ không chỉ diễn ra trên mặt đất, mà còn diễn ra trong các khối dữ liệu. Và trong cuộc chiến đó, bytecode không bao giờ nói dối. Nhưng bạn có đủ dũng cảm để đọc nó không?

