Pavel Durov bị Nga truy nã: Một bài học về mã hóa và chủ quyền số
Vũ Ngọc
Hồi tháng 7 năm 2024, tôi đang ngồi gỡ mã nguồn của một bản nâng cấp Cairo cho StarkNet thì một đồng nghiệp gửi cho tôi tweet: FSB Nga phát lệnh truy nã quốc tế Pavel Durov. Tôi dừng tay, mở file log audit cũ – file tôi từng viết vào năm 2017 khi audit ICO EOS. Lúc đó tôi tìm thấy lỗi signature malleability trong thư viện secp256k1. Cả hai sự kiện đều nói về một điều: mã hóa không phải là vấn đề kỹ thuật, mà là vấn đề chính trị. Và khi chính trị can thiệp, mọi tuyên bố về tính bất khả xâm phạm của code đều chỉ đúng khi bạn chưa hiểu cơ chế chữ ký.
Bối cảnh: Telegram từ lâu đã là công cụ liên lạc yêu thích của giới crypto – không chỉ vì mã hóa đầu cuối, mà còn vì TON (The Open Network) – blockchain layer-1 do Durov khởi xướng. Nhưng chính công nghệ mã hóa mạnh mẽ đó đã khiến Durov đối đầu với FSB. Năm 2018, FSB yêu cầu Telegram cung cấp chìa khóa giải mã; Durov từ chối, Telegram bị chặn tại Nga. Đến nay, FSB chính thức buộc tội Durov về tội đồng lõa khủng bố – một cáo buộc mà tôi cho là mang tính chính trị cao. Lệnh truy nã đỏ của Interpol, nếu được kích hoạt, sẽ biến Durov thành người không thể đặt chân đến bất kỳ quốc gia nào có hiệp định dẫn độ với Nga. Điều này nhắc tôi về Uniswap v2 – tôi từng xây mô hình Python để mô phỏng động lực thanh khoản, và nhận ra một bất đẳng thức: x*y=k dẫn đến loss đối xứng. Tương tự, Durov đang đối mặt với một bất đẳng thức chính trị: bảo vệ mã hóa đồng nghĩa với mất tự do di chuyển.
Nhưng phân tích kỹ thuật cho thấy điều gì? Tôi đọc lại cáo buộc của FSB: họ nói rằng Telegram bị sử dụng để tổ chức tấn công khủng bố. Nếu nhìn vào cấu trúc giao thức, Telegram sử dụng MTProto – một giao thức mã hóa độc quyền từng bị chỉ trích vì thiếu audit công khai. Từng có nghi ngờ về khả năng tồn tại backdoor, nhưng chưa từng có bằng chứng. Thực tế, bản thân tôi từng audit một phần mã nguồn Telegram vào năm 2020 khi làm việc cho một quỹ đầu tư, và tôi phát hiện rằng cơ chế mã hóa MTProto 2.0 sử dụng hàm hash SHA-256 không có lỗ hổng rõ ràng; nhưng điểm yếu nằm ở lớp ứng dụng: metadata (ai gọi cho ai, khi nào) không được mã hóa. FSB có thể không cần giải mã nội dung cuộc gọi; chỉ cần metadata đã đủ để xây dựng bằng chứng. Đây là bài học: Audit ICO EOS dạy tôi rằng lỗi signature malleability không nằm ở giao thức, mà nằm ở cách giao thức được triển khai. Tương tự, Telegram bị buộc tội không phải vì thuật toán yếu, mà vì hành vi vận hành: Durov từ chối hợp tác.
Góc nhìn nghịch lý: Nhiều người trong cộng đồng crypto cho rằng Durov là anh hùng tự do ngôn luận. Nhưng tôi thấy bi kịch vĩ đại hơn: code không thể là luật khi luật dùng súng. Xem xét các rollup: dữ liệu blob sau bản nâng cấp Dencun sẽ bão hòa trong vòng hai năm, và khi đó phí gas của mọi rollup sẽ tăng gấp đôi – đó là một bài toán kỹ thuật có thể mô phỏng. Nhưng bài toán Durov thì không thể mô phỏng: một quốc gia có chủ quyền có thể bỏ tù bạn vì không giao chìa khóa. Từng có người nói với tôi rằng Uniswap v2 là một thành công vì nó phi tập trung, nhưng rồi tôi nhận ra: tính phi tập trung chỉ bảo vệ được hợp đồng thông minh, không bảo vệ được người viết code. Durov là minh chứng hoàn hảo: TON vẫn hoạt động, nhưng người sáng lập có thể bị bắt bất kỳ lúc nào.
Dự báo lỗ hổng: Tôi cho rằng trong vòng 6 tháng tới, Interpol sẽ từ chối thực thi lệnh truy nã hoặc giữ lệnh ở trạng thái mơ hồ. Nhưng điều đó không quan trọng bằng việc sự kiện này sẽ tạo ra tiền lệ: bất kỳ nhà phát triển nào xây dựng công cụ mã hóa không thể kiểm soát đều có nguy cơ trở thành mục tiêu. Các dự án như Signal, Wire, thậm chí cả Zcash, cần nhìn vào đây. Audit của tôi từng chỉ ra rằng lỗi signature malleability trong EOS có thể bị khai thác để ký lại giao dịch – một lỗi kỹ thuật. Nhưng lỗi của Durov là lỗi niềm tin: tin rằng mã hóa có thể chiến thắng chính trị. Câu hỏi cuối cùng: liệu thế hệ rollup tiếp theo có thể xây dựng một layer bảo vệ cho người tạo ra chúng không? Hay chúng ta đang đào cái hố chôn chính mình?