Discord triển khai mã hóa đầu cuối cho tính năng cuộc gọi âm thanh và video
Tổng quan kỹ thuật của DAVE
Với giao thức mới, dữ liệu cuộc gọi sẽ được mã hóa ở phía người dùng trước khi gửi đến người nhận, sau đó được phía người nhận giải mã. Chỉ những người tham gia cuộc gọi mới biết khóa của từng người gửi cần thiết để giải mã.
DAVE được tạo ra với sự trợ giúp của các nhà nghiên cứu tại công ty an ninh mạng Trail of Bits (Mỹ), đơn vị cũng đã kiểm tra mã nguồn và quá trình triển khai E2EE. Việc giới thiệu DAVE là một động thái quan trọng nhằm tăng cường bảo mật dữ liệu và quyền riêng tư trên nền tảng được hơn 200 triệu người sử dụng.
Quan trọng nhất, Discord quyết định tùy biến giao thức và các thư viện hỗ trợ thành mã nguồn mở, cho phép các nhà nghiên cứu bảo mật giám sát. Một sách trắng (Whitepaper) với thông tin kỹ thuật đầy đủ cũng đã được công bố, đảm bảo tính minh bạch đối với cộng đồng.
DAVE sử dụng API chuyển đổi được mã hóa WebRTC, cho phép mã hóa các khung media (âm thanh và video). Chỉ có siêu dữ liệu (metadata) codec đặc biệt, chẳng hạn như tiêu đề mới không được mã hóa.
Hình 1. Tổng quan hoạt động của DAVE
Về quản lý khóa, giao thức MLS (Messaging Layer Security) được sử dụng để trao đổi nhóm khóa an toàn và có thể mở rộng. Thuật toán chữ ký số Elliptic Curve (ECDSA) nhằm tạo cặp khóa nhận dạng.
Khi thành phần của nhóm thay đổi (một thành viên rời đi hoặc một thành viên mới tham gia), lúc này hệ thống sẽ tạo khóa mới. Quá trình này được hoàn tất mà không gây gián đoạn đáng kể cho những người tham gia.
Discord cho biết MLS sẽ tăng thêm độ trễ cho các trao đổi quan trọng, nhưng DAVE được thiết kế để giữ độ trễ đó dưới ngưỡng vài trăm mili giây, ngay cả trong các cuộc gọi nhóm với nhiều người dùng tham gia.
Cuối cùng, liên quan đến việc xác minh người dùng, có những phương pháp quản lý ngoài băng tần (out-of-band), chẳng hạn như so sánh mã xác minh được gọi là “mã bảo mật âm thanh”. Khả năng chống theo dõi liên tục đạt được thông qua việc sử dụng khóa định danh tạm thời, vì người dùng sẽ được cấp một khóa mới cho mỗi cuộc gọi.
Hình 2. Màn hình mã bảo mật âm thanh
Triển khai theo giai đoạn
Discord đã bắt đầu quá trình di chuyển các kênh sang DAVE và người dùng sẽ có thể xác nhận cuộc gọi của họ có được mã hóa đầu cuối hay không bằng cách kiểm tra chỉ báo tương ứng trên giao diện.
Dự kiến sẽ mất một thời gian trước khi tất cả người dùng có thể truy cập đầy đủ vào hệ thống E2EE mới trên mọi thiết bị và kênh. Giai đoạn triển khai đầu tiên sẽ áp dụng cho ứng dụng Discord trên máy tính để bàn và thiết bị di động, sau đó sẽ áp dụng cho phiên bản web.
Hồng Đạt
(Tổng hợp)