Giữ an toàn cho dữ liệu quan trọng của bạn là một phần thiết yếu của cuộc sống hiện đại và mã hóa đóng một vai trò quan trọng trong đó. Mã hóa không có kiến thức, nếu được thực hiện đúng cách, chỉ là phương pháp bảo mật tốt nhất mà bạn có thể chọn.
Mục lục
Khái niệm cơ bản về mã hóa
Mã hóa là một quá trình bảo mật làm thay đổi dữ liệu có thể đọc được để làm cho dữ liệu đó không thể đọc được. Nó lấy bản rõ, dữ liệu có thể đọc được bởi con người và biến nó thành văn bản mã mà con người hoặc máy móc không thể đọc được. Chỉ ai đó có khóa giải mã chính xác mới có thể chuyển đổi dữ liệu trở lại thành văn bản rõ ràng và xem nó ở dạng không phân mảnh. Bất kỳ ai khác, những người có lẽ đã quản lý để đánh chặn dữ liệu, sẽ chỉ thấy những thứ vô nghĩa.
Bạn có thể sử dụng các dịch vụ được mã hóa nhiều lần trong ngày, ngay cả khi bạn không nhận ra. Nhưng mã hóa chỉ mạnh bằng mật khẩu hoặc khóa được sử dụng để bảo mật. Vì vậy, chỉ vì một thứ gì đó được mã hóa, điều đó không có nghĩa là nó hoàn toàn an toàn. Đây là lúc mã hóa không có kiến thức phát huy tác dụng. Nhưng mã hóa zero-knowledge là gì, nó hoạt động như thế nào và tại sao bạn nên chọn nó?
Mã hóa Zero-Knowledge là gì?
Mã hóa không có kiến thức (Zero-Knowledge) là một phương pháp mã hóa, chứ không phải là một giao thức mã hóa như AES-256. Thuật ngữ này thường mô tả một quy trình mã hóa trong đó dữ liệu của bạn luôn được bảo mật, chỉ bạn mới có khóa hoặc mật khẩu cần thiết để truy cập và giải mã nó.
Để một dịch vụ thực sự là không có kiến thức, dữ liệu của bạn phải được mã hóa trước khi nó rời khỏi thiết bị của bạn, trong quá trình truyền và khi nó được lưu trữ trên máy chủ. Ba giai đoạn này được gọi là mã hóa phía máy khách, mã hóa khi chuyển tiếp và mã hóa ở trạng thái nghỉ, tương ứng. Điều này thường có nghĩa là các phương pháp mã hóa khác nhau, bao gồm TLS và AES hoặc một phương pháp thay thế, được sử dụng kết hợp để cung cấp mã hóa tổng thể.
Nhưng làm thế nào để nhà cung cấp dịch vụ có thể xác minh mật khẩu của bạn là chính xác nếu chỉ bạn biết nó? Đó là nơi mà bằng chứng kiến thức bằng không xuất hiện.
Bằng chứng Không-Tri thức là gì?
Mã hóa không kiến thức và bằng chứng không kiến thức là các khái niệm khác nhau. Mặc dù bằng chứng không có kiến thức thường là một phần của dịch vụ hứa hẹn mã hóa không có kiến thức, nhưng không phải lúc nào cũng vậy.
Bằng chứng không có kiến thức là một phương pháp xác thực mật mã giữa hai hoặc nhiều bên. Trong quá trình xác thực tiêu chuẩn, mật khẩu có thể được cung cấp làm bằng chứng về quyền truy cập dữ liệu của chủ sở hữu. Vấn đề là mật khẩu cần được cả hai bên biết để xác minh. Điều này rõ ràng làm cho nó kém an toàn hơn.
Trong xác thực bằng chứng không có kiến thức, chỉ cần bằng chứng về kiến thức về mật khẩu, vì vậy mật khẩu thực tế không bao giờ bị tiết lộ. Kiến thức chứng minh đạt được bằng cách (bạn) trả lời một loạt các thách thức tương tác hoặc không tương tác từ người xác minh (nhà cung cấp dịch vụ).
So sánh trong thế giới thực là khi bạn được yêu cầu cung cấp các chữ cái thứ 3, 5 và 9 trong mật khẩu của mình để xác minh đăng nhập vào ứng dụng ngân hàng. Chỉ những người biết mật khẩu đầy đủ mới biết cần cung cấp những chữ cái nào, tuy nhiên mật khẩu thực sự không được tiết lộ.
Trong hầu hết các tình huống, chẳng hạn như đăng nhập vào ứng dụng quản lý mật khẩu, bạn sẽ không thực sự cần phải trả lời các câu hỏi hoặc thử thách để xác minh bản thân. Bạn sẽ chỉ cần nhập mật khẩu của mình. Phần bằng chứng không có kiến thức của quy trình sẽ được xử lý ở chế độ nền bằng các thuật toán toán học phức tạp .
Nơi sử dụng mã hóa Zero-Knowledge
Mã hóa không có kiến thức đã xuất hiện được một thời gian, nhưng việc sử dụng nó đã tăng lên trong vài năm gần đây. Điều này đặc biệt đúng đối với các dịch vụ lưu trữ dữ liệu của người tiêu dùng.
Bất kỳ dịch vụ kỹ thuật số nào khóa dữ liệu sau đăng nhập bằng mật khẩu đều có thể sử dụng mã hóa không có kiến thức. Hai dịch vụ phổ biến nhất cung cấp mã hóa không biết là dịch vụ lưu trữ đám mây và ứng dụng quản lý mật khẩu.
Trên thực tế, mã hóa không có kiến thức đang ngày càng được sử dụng để bảo mật lưu trữ đám mây. Như đã đề cập trước đó, phương pháp mã hóa này chỉ hoạt động bình thường nếu dữ liệu được mã hóa trước khi rời khỏi máy tính của bạn, trong quá trình truyền tải và khi ở trong kho lưu trữ. Điều đó có nghĩa là bộ nhớ đám mây không có kiến thức thực sự sẽ được truy cập thông qua ứng dụng hoặc ứng dụng máy tính để bàn, thay vì thông qua giao diện trình duyệt.
Các ứng dụng quản lý mật khẩu là một nơi khác mà mã hóa không biết gì có ý nghĩa hoàn hảo. Khi tin tưởng tất cả mật khẩu của bạn cho một ứng dụng hoặc dịch vụ, việc biết rằng ngay cả nhà cung cấp dịch vụ cũng không thể truy cập chúng mà không được mã hóa sẽ là một chặng đường dài. Các trình quản lý mật khẩu tốt nhất sẽ mã hóa mật khẩu của bạn trước khi chúng được lưu trữ trong ứng dụng hoặc ứng dụng khách, không chỉ khi chúng được lưu trữ trên đám mây.
Các vấn đề với mã hóa Zero-Knowledge
Mặc dù đây là một trong những cách an toàn nhất để bảo vệ dữ liệu của bạn, nhưng mã hóa zero-knowledge không phải là không có mặt trái của nó.
Bị khóa
Vấn đề tiềm ẩn rõ ràng nhất là thường không có cách nào để bạn lấy lại mật khẩu của mình nếu bạn bị mất hoặc quên. Dữ liệu của bạn sẽ bị mất, bị mắc kẹt sau một rào cản không thể xuyên thủng. Một số dịch vụ sử dụng mã hóa không có kiến thức cho phép bạn tạo khóa khôi phục, khóa này sẽ cho phép bạn đặt lại mật khẩu của mình một lần. Tuy nhiên, điều này chỉ đưa vấn đề lùi lại một bước, và nếu bạn làm mất khóa khôi phục, bạn sẽ gặp phải trường hợp tương tự.
Mất tốc độ
Mã hóa không có kiến thức có thể dẫn đến một dịch vụ chậm hơn so với các biện pháp bảo mật khác tại chỗ. Các bước mã hóa và bảo mật bổ sung cần thiết có thể có nghĩa là một thứ gì đó như lưu trữ đám mây không nhanh như trước nếu không có kiến thức được sử dụng. Đối với hầu hết mọi người, việc mất tốc độ có thể sẽ bị ảnh hưởng nặng nề hơn bởi tính năng bảo mật bổ sung, nhưng nó vẫn đáng được xem xét.
Ít tính năng hơn
Các dịch vụ sử dụng mã hóa zero-knowledge cũng có thể thiếu một số tính năng được cung cấp bởi các dịch vụ tương tự không sử dụng nó. Ví dụ: bạn có thể không thể xem trước hình ảnh hoặc video được lưu trữ trong kho dự phòng vì điều đó sẽ yêu cầu dữ liệu được giải mã. Trong trường hợp này, bạn phải quyết định xem sự tiện lợi có quan trọng đối với bạn hơn tính bảo mật hay không.
Tôi có nên chọn mã hóa Zero-Knowledge không?
Nhiều tên tuổi lớn trong lĩnh vực lưu trữ đám mây cung cấp các dịch vụ không có kiến thức. Chúng bao gồm Sync.com , MEGA , pCloud , IDrive và icedrive . Tương tự như vậy, một số dịch vụ quản lý mật khẩu tốt nhất bảo vệ dữ liệu của bạn bằng loại mã hóa này, từ NordPass đến LastPass . Khi chúng ta ngày càng dành nhiều thời gian hơn trong đám mây, giao phó bảo mật dữ liệu của mình cho người khác, chúng ta chỉ có thể hy vọng rằng có nhiều dịch vụ hơn được sử dụng với mã hóa không có kiến thức.
Bởi vì, mặc dù có một số nhược điểm tiềm ẩn, mã hóa không có kiến thức là lựa chọn tốt nhất nếu bạn quan tâm đến tính bảo mật của dữ liệu của mình. Bằng cách kiểm soát hoàn toàn những người có thể truy cập và xem dữ liệu của bạn, có thể là trong trình quản lý mật khẩu, bộ nhớ đám mây hoặc một dịch vụ khác, bạn loại bỏ cách thực tế duy nhất mà dữ liệu đó có thể bị xâm phạm.