Mã hóa đầu cuối (E2EE) là gì
Nội dung bài7 phần
Độ khó: Người mới
Khi bạn nhắn tin, nội dung đi qua nhiều máy chủ trước khi đến người nhận. Mã hóa đầu cuối (end-to-end encryption, E2EE) nghĩa là tin nhắn được mã hóa ngay trên thiết bị người gửi và chỉ giải mã trên thiết bị người nhận. Máy chủ ở giữa chỉ thấy dữ liệu đã xáo trộn.
Nội dung chỉ nhằm giải thích kiến thức, không phải khuyến nghị đầu tư.
Điểm chính
- E2EE khác mã hóa thông thường ở chỗ chìa khóa giải mã chỉ nằm ở hai đầu, không nằm ở máy chủ.
- Hai đầu có thể thỏa thuận được khóa chung ngay trên đường truyền công khai nhờ trao đổi khóa Diffie-Hellman (1976).
- WhatsApp công bố ngày 05/04/2016 là mọi cuộc gọi và tin nhắn đều mã hóa đầu cuối theo mặc định.
- E2EE không cứu được thiết bị đã nhiễm mã độc. Đừng gửi seed phrase qua bất kỳ ứng dụng nào.
Ba mức bảo vệ khác nhau
Mức | Ai đọc được nội dung | Ví dụ |
|---|---|---|
Không mã hóa | Mọi bên trên đường truyền | Thư gửi như bưu thiếp |
Mã hóa đường truyền | Máy chủ của dịch vụ đọc được, người ngoài thì không | Trang web có khóa HTTPS |
Mã hóa đầu cuối | Chỉ hai thiết bị đầu cuối | Ứng dụng nhắn tin dùng E2EE |

Phil Zimmermann, người tạo ra PGP, ví mã hóa như phong bì: nếu ai cũng dùng phong bì, người dùng nó sẽ không bị coi là đáng ngờ. E2EE là phong bì mà ngay cả người đưa thư cũng không mở được.
Hai thiết bị thỏa thuận khóa
Vấn đề: hai người chưa từng gặp, chỉ nói chuyện qua kênh công khai, làm sao có chung một khóa bí mật? Năm 1976 Whitfield Diffie và Martin Hellman đưa ra lời giải.
Ví dụ số, rất nhỏ nên không an toàn thật, chỉ để thấy ý tưởng. Hai số công khai: p = 23, g = 5.
Bước | Lan | Bình |
|---|---|---|
1. Mỗi người chọn một số bí mật | a = 4 | b = 3 |
2. Mỗi người tính và gửi công khai | A = 5⁴ mod 23 = 4 | B = 5³ mod 23 = 10 |
3. Mỗi người tính khóa chung từ số nhận được | 10⁴ mod 23 = 18 | 4³ mod 23 = 18 |

Cả hai ra số 18 mà chưa từng gửi 18 cho nhau. Người nghe lén chỉ thấy 23, 5, 4 và 10. Với số rất lớn, từ những số đó tính ngược ra khóa chung là bất khả thi thực tế.
Double Ratchet: đổi khóa liên tục
Một khóa chung cố định có rủi ro: lộ một lần là lộ cả cuộc trò chuyện. Thuật toán Double Ratchet của Signal, do Trevor Perrin và Moxie Marlinspike viết, đổi khóa liên tục sau mỗi tin nhắn. Đặc tả mô tả hai tính chất:
- Forward secrecy (bí mật về phía trước): các khóa trong quá khứ trông ngẫu nhiên với kẻ chỉ biết khóa hiện tại, nên tin nhắn cũ vẫn an toàn.
- Post-compromise security (hồi phục sau xâm nhập): nếu một khóa bị lộ, các khóa tương lai vẫn được bảo vệ, miễn là các lần trao đổi sau có thêm dữ liệu ngẫu nhiên mới.
Ví dụ số đơn giản: cuộc trò chuyện có 100 tin nhắn. Nếu dùng một khóa chung, lộ khóa là lộ 100 tin. Nếu mỗi tin một khóa, lộ khóa của tin thứ 60 chỉ ảnh hưởng tin đó, không kéo theo 99 tin còn lại.
E2EE không bảo vệ điều gì
- Thiết bị đã nhiễm mã độc: nếu có keylogger hoặc phần mềm chụp màn hình, kẻ tấn công đọc nội dung trước khi nó được mã hóa hoặc sau khi giải mã.
- Lừa đảo người dùng: bạn có thể tự gửi thông tin nhạy cảm cho một người giả mạo. Xem social engineering và phishing.
- Siêu dữ liệu: dịch vụ vẫn có thể biết bạn nhắn cho ai và lúc nào, tùy thiết kế từng ứng dụng.
- Bản sao lưu: tin nhắn nằm trong bản sao lưu không mã hóa thì hết ý nghĩa của E2EE.
- Mạng công cộng: E2EE bảo vệ nội dung, nhưng thiết bị kết nối mạng lạ vẫn có rủi ro riêng, xem WiFi công cộng.
Cách làm: dùng E2EE an toàn
Checklist:
- [ ] Dùng ứng dụng nhắn tin bật E2EE theo mặc định cho cuộc trò chuyện nhạy cảm, và kiểm tra cuộc trò chuyện thật sự ở chế độ đó.
- [ ] Không bao giờ gửi seed phrase, khóa riêng hay mã 2FA qua tin nhắn, kể cả cho người nói là hỗ trợ. Xem trang bảo mật tiền mã hóa.
- [ ] Đừng chụp màn hình thông tin nhạy cảm nếu ảnh tự động đồng bộ lên dịch vụ lưu trữ khác.
- [ ] Khóa màn hình thiết bị, cập nhật hệ điều hành và ứng dụng.
- [ ] Nếu ứng dụng có tính năng xác minh mã bảo mật giữa hai người, hãy đối chiếu qua kênh khác khi cần chắc chắn người đối diện là thật.
Học tiếp trong khoá Crypto
Các bài học liên quan trong Khoá học Crypto của HODL.VN:
Câu hỏi thường gặp
E2EE khác mã hóa HTTPS thế nào?
HTTPS mã hóa giữa bạn và máy chủ, nhưng máy chủ đọc được nội dung. E2EE mã hóa giữa hai người dùng, máy chủ không có khóa.
Nếu dịch vụ nói họ dùng E2EE, có thể tin hoàn toàn không?
Không nên tin tuyệt đối. Điều đáng quan tâm là E2EE có bật mặc định không, có được kiểm tra độc lập không, và phần sao lưu có được bảo vệ không. WhatsApp tự công bố đã bật mặc định từ 04/2016.
E2EE có che việc bạn đang nói chuyện với ai không?
Không phải lúc nào cũng che. Nội dung được bảo vệ, nhưng siêu dữ liệu có thể vẫn lộ tùy dịch vụ.
E2EE có liên quan gì đến blockchain?
Cùng nền tảng mật mã khóa công khai, nhưng khác mục tiêu. E2EE giữ bí mật tin nhắn, còn blockchain công khai dữ liệu giao dịch. Việc giữ riêng tư dữ liệu trên chuỗi là chủ đề của giao dịch bí mật.
Duyệt bởi Ban biên tập HODL.VN · Cập nhật 09/11/2026
Ứng dụng HODL
Tải app HODL
Bảng giá, cảnh báo giá và bài phân tích ngay trên điện thoại.