Bằng chứng không có kiến thức có tác dụng gì
Thông thường, để chứng minh điều gì đó, bạn phải đưa ra bằng chứng: nhập mật khẩu hoặc đưa giấy tờ tùy thân. Điều đó có thể tiết lộ nhiều hơn mức người kia cần biết.
Bằng chứng không có kiến thức là một phương pháp mật mã học làm thay đổi điều đó. Một người, gọi là bên chứng minh, đưa ra một tuyên bố chính xác cho người khác, gọi là bên xác minh, mà không tiết lộ bí mật giúp tuyên bố đó là đúng. Bên xác minh biết được điều họ cần biết — ví dụ, rằng bạn đủ tuổi theo yêu cầu — nhưng không biết ngày sinh, địa chỉ hay số giấy tờ của bạn.
Đó không phải là một lời hứa mơ hồ về sự riêng tư. Bằng chứng phải được thiết kế cho một tuyên bố chính xác, và thiết kế tốt khiến việc gian lận gần như không thể xảy ra.
Ví dụ hang động
Hãy tưởng tượng một hang động có hai lối đi gặp nhau sau một cánh cửa khóa. Cửa chỉ mở khi biết một từ bí mật. Bạn nói mình biết từ đó, nhưng không muốn nói ra.
Bạn đi vào bằng một trong hai lối trong khi người bạn của bạn đứng chờ bên ngoài. Sau đó người đó sẽ hô lên lối mà họ muốn bạn quay ra. Nếu bạn biết từ bí mật, bạn có thể mở cửa bên trong hang và quay ra bằng lối nào cũng được. Nếu chỉ đoán mò, bạn chỉ có 50% cơ hội ở đúng phía được yêu cầu.
Lặp lại phép thử nhiều lần, mỗi lần với một lựa chọn mới, không thể đoán trước. Sau mười vòng thành công liên tiếp, một kẻ nói dối chỉ còn khoảng 1 trên 1.000 cơ hội may mắn qua được. Người bạn của bạn có được bằng chứng chắc chắn rằng bạn biết từ bí mật đó, nhưng chưa bao giờ nghe thấy nó.
Từ câu chuyện hang động đến phần mềm thực tế
Bằng chứng trong thực tế dùng toán học thay vì hang động, nhưng mục tiêu bảo vệ quyền riêng tư vẫn như nhau. Chúng có thể cho thấy một giao dịch tuân theo đúng quy tắc mà không tiết lộ toàn bộ chi tiết. Chúng cũng có thể để một bằng chứng nhỏ thay thế cho cả loạt kiểm tra lớn, giúp một số hệ thống xác minh nhanh hơn.
Thông tin xác thực kỹ thuật số là một ứng dụng thực tế khác. Thay vì tải lên toàn bộ giấy tờ tùy thân cho mọi dịch vụ, một thông tin xác thực được thiết kế tốt chỉ cần trả lời đúng câu hỏi được đặt ra: “Người này có trên 18 tuổi không?” hoặc “Người này có bằng cấp đó không?”
Chi tiết luôn quan trọng. Bằng chứng chỉ bảo vệ thông tin mà nó được xây dựng để che giấu. Ứng dụng xung quanh vẫn có thể thu thập dữ liệu, nhận dạng bạn hoặc đưa ra lựa chọn bảo mật kém ở nơi khác.
Bằng chứng không có kiến thức và mã hóa không có kiến thức
Cụm từ 'không có kiến thức' cũng được dùng trong lưu trữ đám mây. Đó là một khái niệm khác. Mã hóa không có kiến thức nghĩa là nhà cung cấp dịch vụ lưu trữ không thể đọc được tệp của bạn, vì họ không có khóa giải mã.
Một bằng chứng không có kiến thức trả lời một câu hỏi mà không tiết lộ bí mật đằng sau câu trả lời đó. Mã hóa không có kiến thức giữ cho các tệp lưu trữ không thể đọc được đối với nhà cung cấp. Cả hai đều có thể cải thiện quyền riêng tư, nhưng chúng không thể thay thế cho nhau.
Bài học thực tế về quyền riêng tư
Bằng chứng không có kiến thức là lời nhắc hữu ích để chia sẻ thông tin tối thiểu cần thiết cho một nhiệm vụ. Chúng không giúp bạn ẩn danh hoặc bảo mật mọi phần của ứng dụng. Một dịch vụ có thể vẫn biết rằng bạn đã kết nối, thời điểm bạn thực hiện việc đó và các dữ liệu khác ngoài bằng chứng.
Sealby không cần đến bằng chứng không có kiến thức vì không có tài khoản hay máy chủ nào yêu cầu bạn chứng minh điều gì. Tệp được mã hóa ngay trên iPhone của bạn. Với quyền riêng tư hằng ngày, câu hỏi thực tế rất đơn giản: dịch vụ này thực sự cần biết những gì — và liệu nó có thể hoạt động với ít thông tin hơn không?