Một mũi tên trúng hai đích: Mozilla muốn vừa chia sẻ vừa muốn mã hóa tập tin

Send giải quyết được vấn đề từng khá phổ biến, đó là gửi tập tin nặng qua email. Các dịch vụ email đều giới hạn kích thước tập tin đính kèm, và trong khi nhiều dịch vụ vẫn tiếp tục làm như vậy - ví dụ như Gmail với giới hạn tối đa 25MB - thì nhiều cái tên như Apple hay Google đã bắt đầu sử dụng những dịch vụ song song như iCloud hay Drive để gánh đỡ cho việc tải nội dung.

Tuy vậy, Send mang tới một giải pháp thay thế để chia sẻ tập tin tối đa 1GB, nội dung được mã hóa và giao diện rất đơn giản.

Send nằm trong chương trình Test Pilot của Mozilla để đánh giá các tính năng thử nghiệm trên trình duyệt Firefox của công ty. Tuy vậy, nó cũng có thể làm việc trên các trình duyệt hiện đại khác.

Send dựa trên code Node.js, đứng sau đó là cơ sở dữ liệu Redis chạy trên Amazon Web Services. Sau khi chọn tập tin, phần mềm sẽ mã hóa tập tin về phía client, tải nó lên AWS và tạo URL có chứa key giải mã mà người dùng có thể chia sẻ với người nhận.

“Mỗi link được Send tạo sẽ hết hạn sau khi 1 người tải về hoặc trong vòng 24 giờ, tất cả các tập tin khi được gửi sẽ tự động bị xóa khỏi máy chủ của Send”, Mozilla giải thích.

Tập tin sẽ bị xóa sau khi có người tải về hoặc trong vòng 24 giờ
Tập tin sẽ bị xóa sau khi có người tải về hoặc trong vòng 24 giờ

Send dựa trên Web Cryptography JavaScript API với thuật toán AES-GCM để mã hóa và giải mã phía khách hàng. Khi được hỏi liệu Mozilla có thể mở khóa các tập tin được lưu trữ hay không, người đại diện công ty trả lời rằng không.

Mozilla không có được key giải mã

“Với Send, Mozilla sẽ không thể truy cập được tập tin mà người dùng tải lên”, người đại diện công ty giải thích. “Một “phân mảnh” trong URL (phần sau dấu #) chứa key mã hóa nên người dùng có thể chia sẻ với người khác, nhưng các phân mảnh này không được gửi tới máy chủ khi người dùng gửi yêu cầu nên Mozilla sẽ không có được key”.

Dù cách này có thể bảo mật nhưng lại không hề hoàn hảo. AWS có thể phục hồi tập tin đã bị xóa hoặc lưu lại chúng, key có thể lại từ log hoặc dịch vụ nhắn tin mà người dùng đã sử dụng gửi nó đi cho người nhận.

Bên cạnh đó, vẫn còn có thể cải thiện được vấn đề bảo mật. Mozilla biết rằng tên file được gửi dưới dạng text, cùng với các thông tin khác như kích thước tập tin, mà công ty có thể dùng để đánh giá dịch vụ. Nhưng vấn đề về mã nguồn đã được chỉ ra trên GitHub Issues, phiên bản hiện tại của Send cũng gửi mã hàm băm SHA256 của tập tin chia sẻ dưới dạng text, và nó có thể được dùng để xác định tập tin.

Phản hồi việc này, kỹ sư Mozilla Danny Coates nói rằng cách bảo mật của Send đã được chỉnh sửa lại để phản ánh hàm băm được dùng và đoạn code cũng sẽ được cập nhật trong tuần tới để loại bỏ log của hàm băm.

“Với chức năng hiện tại của trang, nó không cần thiết phải gửi tập tin hàm băm dưới dạng text, tuy vậy chúng tôi có thể thử nghiệm tính năng yêu cầu hàm băm của file”, Coates nói, “nó được dùng để kiểm tra việc tải lên từ những cơ sở dữ liệu nhiễm độc”. Nó cũng cần kiểm tra hàm băm có liên quan tới hình ảnh hay video vi phạm pháp luật.

Thứ Hai, 07/08/2017 11:37
51 👨 169
0 Bình luận
Sắp xếp theo