Trail of Bits và cách xác minh tính toàn vẹn của các cuộc trò chuyện Signal
Signal vừa ra mắt tính năng Xác minh khóa tự động (Automatic Key Verification) nhằm giúp người dùng phát hiện các cuộc tấn công thay thế khóa công khai mà không cần so sánh số an toàn thủ công. Trail of Bits là một trong ba đơn vị kiểm toán độc lập vận hành hệ thống này, với mã nguồn mở được viết lại hoàn toàn từ đầu để đảm bảo tính minh bạch và độc lập trong xác minh.

Mọi cuộc trò chuyện trên Signal đều bắt đầu theo cùng một cách: ứng dụng khách hỏi máy chủ Signal về khóa công khai gắn với số điện thoại của người liên hệ. Nhưng làm sao bạn biết máy chủ đã đưa cho mình đúng khóa? Một máy chủ bị xâm phạm có thể cung cấp khóa công khai giả, khiến ứng dụng mã hóa tin nhắn gửi cho kẻ tấn công thay vì người nhận dự định.
Trước đây, cách duy nhất để phát hiện hành vi gian dối như vậy là so sánh số an toàn (safety number) với người liên hệ trực tiếp hoặc qua một kênh được tin cậy. Signal gần đây đã ra mắt một giải pháp thay thế: Xác minh khóa tự động (Automatic Key Verification) — tính năng giúp xác nhận các cuộc trò chuyện của bạn được bảo mật mà không cần so sánh số an toàn trực tiếp.
Trail of Bits đã xây dựng và vận hành một trong ba bộ kiểm toán (auditor) làm nên độ tin cậy của hệ thống này. Bộ kiểm toán của họ là một triển khai độc lập được viết lại hoàn toàn từ đầu, liên tục kiểm tra rằng hệ thống Xác minh khóa tự động hoạt động một cách trung thực.
Cơ chế xác minh khóa hoạt động như thế nào
Xác minh khóa tự động là một dạng "minh bạch khóa" (key transparency), giúp các cuộc tấn công thay thế khóa khó che giấu hơn bằng cách tạo ra một góc nhìn nhất quán trên toàn cầu về tập hợp khóa công khai gắn với mỗi số điện thoại.
Ứng dụng Signal hiện thực hiện tự kiểm tra định kỳ để đảm bảo rằng mọi khóa được lưu trong bản đồ toàn cầu cho tài khoản của bạn đều thuộc về các thiết bị của bạn. Nếu ứng dụng không thể xác minh nhật ký, hoặc phát hiện không phải tất cả khóa đều như mong đợi, người dùng sẽ nhận được cảnh báo: "Xác minh khóa tự động hiện không khả dụng cho thiết bị của bạn."
Xác minh khóa tự động cũng có thể không khả dụng vì những lý do khác, như được nêu trong tài liệu của Signal.
Bộ kiểm toán của Trail of Bits làm gì
Xác minh khóa tự động phụ thuộc vào các bộ kiểm toán bên ngoài. Trail of Bits góp phần vận hành hệ thống bằng cách cung cấp xác minh bên ngoài rằng bản đồ người dùng ↔ khóa công khai là nhất quán toàn cầu, được định dạng đúng và không che giấu bất kỳ mục nào.
Mỗi khi một mục mới được thêm vào, họ cập nhật bản sao cục bộ của bản đồ, được lưu dưới dạng cây Merkle (Merkle tree). Định kỳ, họ ký phần đầu của cây bằng một khóa ký chỉ họ biết. Bởi vì họ cam kết chỉ ký một dòng cây Merkle nhất quán duy nhất, các ứng dụng khách biết rằng chúng đang thấy cùng tập hợp khóa công khai như mọi người khác trong hệ thống.
Hiện tại, ứng dụng khách yêu cầu chữ ký từ cả ba bộ kiểm toán: một do Signal vận hành, một do Cloudflare vận hành và một do Trail of Bits vận hành.
Khi Xác minh khóa tự động được bật, ứng dụng Signal định kỳ lấy phần đầu cây Merkle từ máy chủ minh bạch khóa của Signal. Ứng dụng yêu cầu mỗi phần đầu cây phải thuộc một dòng được tất cả các bộ kiểm toán đã đăng ký chứng thực trong vòng bảy ngày gần nhất.
Nếu máy chủ không trình bày chữ ký kiểm toán hợp lệ, ứng dụng sẽ đưa ra cảnh báo và Xác minh khóa tự động sẽ thất bại. Do đó, một máy chủ hoàn toàn độc hại có thể duy trì góc nhìn chia rẽ về hệ thống tối đa một tuần trước khi các ứng dụng bắt đầu hiển thị cảnh báo.
Trail of Bits chọn triển khai bộ kiểm toán của mình từ đầu, dựa trên đặc tả kỹ thuật, nhằm cung cấp xác minh độc lập; mã nguồn của họ là mã nguồn mở. Signal cũng công bố một triển khai tham chiếu.
Họ cho biết sẽ cập nhật bài viết nếu cần thay đổi đáng kể chính sách ký, chẳng hạn như đặt lại trạng thái bộ kiểm toán hoặc luân chuyển khóa ký. Khóa công khai hiện tại của họ là: 7fe5d91de235188486d8fb836a6da37e625e2b10eb6d144185b9364cc83cbbb6.
Cách sử dụng Xác minh khóa tự động
Bạn có thể bật Xác minh khóa tự động trong Signal bằng cách vào "Cài đặt > Quyền riêng tư > Nâng cao" và bật tính năng này. Trong các cuộc trò chuyện được hỗ trợ, bạn có thể xác minh khóa công khai của đối phương bằng cách mở màn hình xác minh số an toàn và nhấn "Xác minh tự động".
Lưu ý rằng Xác minh khóa tự động thường không hỗ trợ các cuộc trò chuyện mà bạn bắt đầu bằng cách tìm kiếm tên người dùng của người nhận. Nếu xác minh tự động thất bại, người dùng nên quay lại phương pháp so sánh số an toàn.
Vì sao họ làm điều này
Trail of Bits khẳng định rằng giao tiếp tự do và riêng tư là một lợi ích công cộng thiết yếu. Họ không được Signal hay bất kỳ bên nào trả tiền cho dịch vụ này; họ vận hành nó vì lợi ích của người dùng và cộng đồng nói chung.
Một hình thức toàn vẹn khóa công khai nào đó là thành phần quan trọng của bất kỳ hệ thống mã hóa đầu cuối hoàn chỉnh nào. Đối với người dùng Việt Nam — những người ngày càng quan tâm đến quyền riêng tư số và thường sử dụng Signal cho các trao đổi nhạy cảm — việc hiểu rõ cơ chế xác minh khóa giúp đánh giá đúng mức độ an toàn thực sự của ứng dụng, thay vì chỉ tin tưởng vào lời hứa của nhà cung cấp dịch vụ.
Bài viết liên quan

Công nghệ
Nộp đơn xin việc lẽ ra nên khó hơn. Thật đấy
25 tháng 8, 2026

Công nghệ
buildprof: Công cụ trực quan hóa quá trình build giúp lý giải vì sao Bun chuyển từ Zig sang Rust lại nhanh hơn 5 lần
12 tháng 9, 2026
Công nghệ
Vì sao startup SaaS đạt 500.000 USD ARR nhanh chóng, còn bạn mãi không có nổi 5 khách hàng?
12 tháng 9, 2026