Quyền riêng tư và mã hóa
Những từ này được sử dụng một cách lỏng lẻo trong mô tả ứng dụng và sự khác biệt giữa chúng chính xác nằm ở vị trí của giá trị. Ẩn không bị khóa. Đã khóa không được mã hóa. Và chiếc chìa khóa mà người khác nắm giữ không thực sự là của bạn.
-
ChaCha20-Poly1305
-
Một thuật toán mã hóa hiện đại vừa che giấu dữ liệu vừa phát hiện việc giả mạo dữ liệu. Nhanh trên điện thoại, không phải lúc nào cũng có khả năng tăng tốc phần cứng cho giải pháp thay thế cũ hơn.
ChaCha20 thực hiện việc mã hóa; Poly1305 tạo ra một tag để xác minh dữ liệu chưa bị thay đổi. Kết hợp lại, chúng được gọi là mã hóa có xác thực — việc giải mã sẽ báo lỗi rõ ràng trên một tệp đã bị sửa đổi thay vì tạo ra rác trông có vẻ hợp lý.
Đây là cùng một cấu trúc được dùng trong TLS và trong nhắn tin bảo mật hiện đại. Trên phần cứng không có tăng tốc AES, nó nhanh hơn AES một cách đáng kể, đó là lý do điện thoại có xu hướng ưa chuộng nó.
-
Gói chìa khóa
mã hóa phong bì -
Mã hóa các tệp bằng một khóa, sau đó mã hóa khóa đó riêng biệt theo từng cách vào. Việc thay đổi mật mã sẽ gói lại một khóa nhỏ thay vì mã hóa lại mọi thứ.
Các tệp được mã hóa một lần, bằng một khóa được tạo ngay trên thiết bị. Khóa đó sau đó được gói — mã hóa — bằng mật mã, và được gói lại lần nữa bằng mã khôi phục. Hai phong bì, mỗi phong bì chứa một khóa bên trong.
Hệ quả đều mang tính thực tế. Đổi mật mã chỉ ghi lại vài trăm byte thay vì cả trăm gigabyte. Mở khóa sinh trắc học là một bản sao được gói khác chứ không phải một mô hình bảo mật thứ hai. Và mất hết mọi lớp gói đồng nghĩa mất khóa, vì khóa không tồn tại ở bất kỳ đâu khác.
Xem thêm: Mã khôi phụcChaCha20-Poly1305
-
Mã khôi phục
-
Chuỗi một lần có thể mở khóa chính khi quên mật mã. Không ai có thể phát hành lại nó, bởi vì chưa ai từng có nó - kể cả những người đã viết ứng dụng.
Nó được hiển thị một lần, lúc thiết lập, và là cánh cửa thứ hai trong hai cánh cửa. Được viết ra và cất giữ ở một nơi khác với thiết bị, nó biến một mật mã bị quên thành một sự bất tiện chứ không hơn.
Nếu quên mật mã và làm mất mã khôi phục, không ai có thể giải mã được các tệp đó. Đây không phải một chính sách hỗ trợ có thể tranh cãi; đó là ý nghĩa thực sự của việc không còn bản sao nào của khóa. Hãy cất giữ nó cẩn thận đúng như những tệp đó xứng đáng.
Xem thêm: Gói chìa khóaKhông có tri thức
-
Hầm mồi nhử
sự phủ nhận hợp lý -
Mật mã thứ hai mở ra một kho tiền khác, vô hại. Ai đó được yêu cầu mở khóa ứng dụng thì có thể và những gì mở ra không phải là thứ họ đang tìm kiếm.
Cả hai mật mã đều có thật và cả hai đều mở ra một kho tiền có thật. Không có gì trên màn hình cho thấy còn một kho tiền khác tồn tại, và không thể hỏi ứng dụng nó đang hiển thị kho nào.
Nó tồn tại cho tình huống mà việc từ chối mở khóa không phải một lựa chọn — một biên giới, một yêu cầu, ai đó đứng ngay bên cạnh bạn. Riêng mã hóa không giúp được gì trong trường hợp đó, vì vấn đề không phải là chiếc khóa, mà là bị ép buộc phải dùng nó.
Xem thêm: Mã khôi phụcẨn và mã hóa
-
Móc khóa
-
Kho lưu trữ được bảo vệ của hệ thống dành cho những bí mật nhỏ, được hỗ trợ bởi phần cứng bảo mật của thiết bị. Đó là nơi chứa chìa khóa và mã thông báo và là nơi không nên mang theo thứ gì lớn lao.
Các mục trong đó có thể mang điều kiện: chỉ đọc được khi thiết bị đã mở khóa, chỉ trên thiết bị này, chỉ sau khi xác nhận sinh trắc học hoặc mật mã. Những điều kiện đó được thực thi bởi phần cứng chứ không phải do ứng dụng lịch sự yêu cầu.
Nó lưu trữ bí mật, không phải dữ liệu. Khóa, token và vật liệu đã được gói nằm ở đó; còn chính các tệp đã mã hóa thì nằm trên đĩa, nơi kích thước không phải vấn đề.
-
Đang nghỉ ngơi và đang di chuyển
-
Được mã hóa ở phần còn lại có nghĩa là không thể đọc được trên đĩa. Được mã hóa trong quá trình chuyển tiếp có nghĩa là không thể đọc được trên mạng. Chúng là những biện pháp bảo vệ riêng biệt và một sản phẩm có thể trung thực yêu cầu một điều trong khi không thực hiện điều kia.
HTTPS là mã hóa trong quá trình chuyển tiếp: an toàn trước bất kỳ ai theo dõi mạng, và hoàn toàn đọc được bởi máy chủ ở đầu bên kia một khi dữ liệu tới nơi. Mã hóa ở trạng thái nghỉ nói về bản sao được lưu trữ, điều quan trọng nếu thiết bị bị mất hoặc một ổ đĩa bị sao chép toàn bộ.
Đọc kỹ một tuyên bố về quyền riêng tư thường có nghĩa là tìm ra tuyên bố đó nói về điều nào trong hai điều trên. "Dữ liệu của bạn được mã hóa" mà không kèm theo từ nào trong hai từ đó là một câu đã được chọn lựa để không nói ra điều gì cả.
Xem thêm: ChaCha20-Poly1305Không có tri thức
-
Không có tri thức
-
Một thiết kế mà người vận hành không thể đọc được những gì nó lưu trữ vì các phím không bao giờ rời khỏi thiết bị của người dùng. Bài kiểm tra rất đơn giản: liệu họ có thể đặt lại mật khẩu của bạn mà vẫn cung cấp dữ liệu cho bạn không?
Nếu một dịch vụ có thể khôi phục quyền truy cập sau khi bạn quên hết mọi thứ, nó đang nắm giữ thứ gì đó có thể mở khóa dữ liệu của bạn — nghĩa là nó có thể bị ép buộc phải dùng đến, và bất kỳ ai xâm nhập được dịch vụ đó cũng thừa hưởng chính khả năng ấy.
Sự đánh đổi là có thật và nên được nói thẳng thay vì được bán như một lợi ích thuần túy: không có tri thức thực sự nghĩa là thực sự mất quyền truy cập khi chiếc khóa cuối cùng bị mất. Không có lựa chọn thứ ba nào mà nhà vận hành có thể cứu bạn còn người khác thì không.
-
Sinh trắc học
ID khuôn mặt, ID cảm ứng -
Thiết bị, không phải ứng dụng, xác nhận đó là bạn; ứng dụng được thông báo có hoặc không. Không có dữ liệu dấu vân tay hoặc khuôn mặt nào được đưa vào ứng dụng và không có dữ liệu nào trong số đó là mật khẩu.
Mở khóa sinh trắc học là một tiện lợi được bọc quanh một bí mật, không phải thứ thay thế cho bí mật đó. Những gì nó bảo vệ là một khóa được lưu trữ, đó là lý do luôn có một mật mã đứng phía sau nó — sinh trắc học có thể thất bại, và phương án dự phòng phải là thứ gì đó bạn ghi nhớ được.
Sự so sánh diễn ra bên trong phần cứng chuyên dụng và các mẫu dữ liệu không bao giờ rời khỏi đó. Một ứng dụng cung cấp Face ID đang hỏi hệ thống một câu hỏi, chứ không thu thập bất cứ điều gì.
Xem thêm: Móc khóaGói chìa khóa
-
Phân tích ẩn danh
-
Đếm các sự kiện mà không ghi lại ai đã thực hiện chúng. Giá trị của xác nhận quyền sở hữu phụ thuộc hoàn toàn vào nội dung được đính kèm với mỗi sự kiện — và tên tệp, đường dẫn và URL là nơi những lời hứa như vậy thường bị phá vỡ.
Biết rằng một màn hình đã được mở là một phép đếm. Biết tệp nào đã được phát là một mô tả về một con người. Ranh giới giữa hai điều đó không nằm ở từ "ẩn danh"; nó nằm ở việc sự kiện mang theo những trường dữ liệu nào.
Một tuyên bố đáng tin cậy nói rõ những gì *không* được gửi đi cụ thể như những gì được gửi: không tên tệp, không đường dẫn, không URL, không thông tin đăng nhập, không định danh nào tồn tại xuyên suốt các phiên — và cung cấp một cách để tắt toàn bộ điều đó đi.
Xem thêm: Đang nghỉ ngơi và đang di chuyển