Mục lục:
Gần đây, chúng tôi đã có một vài câu hỏi về mã hóa. Chúng ta đã nói về cách Android kết hợp mã hóa và những thay đổi mà Nougat mang lại, và để tận dụng tối đa từ những cuộc thảo luận đó, cần phải hiểu những điều cơ bản. Hãy nói về những điều cơ bản một chút.
Chính xác thì mã hóa là gì?
Theo nghĩa đơn giản nhất, mã hóa đang thay đổi cách hiển thị thông tin, để nó bị che đi và cách duy nhất có thể xem được hình thức thực sự của nó là với một bộ hướng dẫn rõ ràng.
Bạn đang sử dụng mã hóa mỗi ngày và có thể không biết vì nó có thể trong suốt.
Có rất nhiều cách để làm điều này, đặc biệt khi thông tin đó là kỹ thuật số và được lưu trữ trên máy tính hoặc điện thoại. Nếu bạn đã từng nhận được tệp zip hoặc tài liệu Microsoft Office cần mật khẩu để xem, thì nó đã được mã hóa. Dữ liệu bạn muốn xem được đặt bên trong một container (nghĩ về nó như một thư mục trên điện thoại hoặc máy tính của bạn) và container được bảo vệ bằng mật khẩu. Phương pháp này có thể được thu nhỏ lại, thậm chí bao gồm toàn bộ đĩa hoặc phân vùng. Để truy cập bất cứ thứ gì trên phân vùng được mã hóa, bạn cần mở khóa bằng mật khẩu.
Một cách khác để mã hóa dữ liệu là thay đổi vật lý những gì được hiển thị khi bạn xem nó trừ khi bạn có thể giải mã nó. Hãy nghĩ về một ứng dụng mà bạn có thể nhập một cụm từ và nó sẽ chuyển đổi tất cả các chữ cái thành số từ 1 đến 26. Bạn sẽ gõ một câu và những gì bạn sẽ thấy là một loạt các số.
Nhưng ứng dụng biết rằng 1 bằng a, không có số nào cao hơn 26 là hợp lệ và có quyền truy cập vào từ điển của hệ điều hành để kiểm tra chính tả vì 11 có thể bằng "aa" hoặc "k" tùy thuộc vào từ mà nó được sử dụng. khác sử dụng ứng dụng để đọc những gì bạn gõ, nó trông bình thường.
Tại cốt lõi của nó, mã hóa được thiết kế để làm cho một cái gì đó khó đọc trừ khi bạn biết cách nhìn vào nó.
Bây giờ hãy tưởng tượng nếu thứ tự của các số bị đảo ngược, 13 được thêm vào các số từ 11 đến 15, khoảng trắng giữa các từ đã bị xóa và dữ liệu ngẫu nhiên sẽ không được đọc được chèn vào mỗi vài chữ cái. Tệp sẽ không thể đọc được nếu không sử dụng ứng dụng, không giống như ví dụ đầu tiên có thể được tìm ra nếu ai đó muốn thử. Đó là những gì một thuật toán mã hóa làm. Nó giúp một chương trình biến bất kỳ loại dữ liệu nào thành một mớ hỗn độn có thể dễ dàng giải mã bằng chính thuật toán nhưng sẽ mất rất nhiều nỗ lực và thời gian để bẻ khóa nếu không có nó.
Các thuật toán máy tính có thể làm những việc phức tạp hơn nhiều so với ví dụ đơn giản của tôi và mất ít thời gian hơn nhiều so với việc tôi đếm trên đầu ngón tay. Mã hóa một thư mục hoặc toàn bộ đĩa là một ví dụ về một thùng chứa được mã hóa và dữ liệu được mã hóa như ví dụ của chúng tôi ở trên cũng có thể được đặt bên trong một thùng chứa được mã hóa.
Lấy dữ liệu của chúng tôi và mã hóa nó, sau đó đảm bảo các ứng dụng và dịch vụ cần có quyền truy cập có thể giải mã và sử dụng nó là vô cùng phức tạp. Rất may, những phần phức tạp đó được xử lý bởi phần cứng và hệ điều hành và tất cả những gì chúng ta cần làm là có mật khẩu đúng hoặc sử dụng đúng dịch vụ.
Mã hóa và Android
Android hỗ trợ cấp độ tệp và mã hóa vùng chứa (toàn bộ đĩa). Là một nền tảng ứng dụng, nó cũng có thể hỗ trợ các phương thức mã hóa từ bên thứ ba cho những thứ như thư mục an toàn hoặc tin nhắn và email được mã hóa. Android cũng hỗ trợ mã hóa được hỗ trợ bằng phần cứng. Điều đó có nghĩa là có một thành phần bên trong SoC (System on Chip - nơi CPU và GPU sống) tồn tại để giúp mã hóa và giải mã dữ liệu một cách nhanh chóng. Khóa thực tế để giải mã tập tin được lưu trữ trên thiết bị này và mọi tương tác của người dùng - mật khẩu, dấu vân tay, thiết bị đáng tin cậy, v.v. - được sử dụng để truy cập dữ liệu được mã hóa thực sự yêu cầu Secure Element trong phần cứng thực hiện công việc. Kể từ Android 6.0 Marshmallow, tất cả chức năng mã hóa có thể được thực hiện bằng Phần tử bảo mật này và khóa riêng (mã thông báo được sử dụng để mã hóa và giải mã dữ liệu) không bao giờ được hiển thị với phần mềm. Điều này có nghĩa là không có mã thông báo để trình bày cho phần cứng, dữ liệu vẫn được mã hóa.
Android được xây dựng với mục đích mã hóa và dữ liệu của bạn có thể an toàn và không thể truy cập được cho bất kỳ ai trừ bạn.
Trong cài đặt Android của bạn, bạn cũng có thể giữ cho hệ thống được mã hóa mỗi khi khởi động cho đến khi nhập mật khẩu. Có một điện thoại chạy chứa đầy dữ liệu được mã hóa là khá an toàn, nhưng tạm dừng quá trình khởi động cho đến khi mật khẩu được nhập sẽ ngăn truy cập vào các tệp và hoạt động như một lớp bảo vệ hai lớp. Dù bằng cách nào, mật khẩu đăng nhập của bạn (hoặc mã PIN hoặc mẫu hoặc dấu vân tay) vẫn truy cập dữ liệu thông qua yếu tố bảo mật và bạn không có cách nào để lấy khóa mã hóa riêng tư thực sự, đó là điều duy nhất biết chính xác cách dữ liệu được xáo trộn và làm thế nào để đặt nó trở lại với nhau.
Tin nhắn và trình duyệt web của bạn cũng có thể được mã hóa. Có lẽ bạn đã thấy nhiều trang web trong trình duyệt của mình sử dụng tiêu đề HTTPS thay vì HTTP. HTTP là viết tắt của Hypertext Transfer Protocol và là giao thức (nghĩ quy tắc) được sử dụng để gửi và nhận dữ liệu qua internet. HTTPS là viết tắt của HTTP qua SSL (Lớp cổng bảo mật), bổ sung một tiêu chuẩn mã hóa cho giao thức. Bất cứ điều gì bạn nhập vào trình duyệt web đều bị "xáo trộn" với khóa công khai bạn đã tải xuống từ trang web khi bạn đến đó và chỉ có khóa riêng - mà máy chủ web có - có thể giải mã nó.
Bất cứ khi nào bạn nhập bất kỳ thông tin nào bạn coi là riêng tư trên web, hãy đảm bảo bạn có kết nối HTTPS an toàn.
Dữ liệu được gửi lại cho bạn được xáo trộn theo cách mà chỉ phiên bản duy nhất của khóa công khai mới có thể xắp xếp lại. Bạn không cần phải làm gì ngoại trừ truy cập trang bảo mật có tiêu đề HTTPS. Điện thoại của bạn đảm bảo rằng máy chủ thực sự là người mà nó tuyên bố là, sử dụng chứng chỉ, đồng thời mã hóa và giải mã dữ liệu thông qua ứng dụng trình duyệt.
Tin nhắn được mã hóa thường yêu cầu một ứng dụng bạn cần tải xuống từ Google Play. Các ứng dụng như Signal hoặc WhatAppApp cung cấp những gì được gọi là mã hóa end to end, có nghĩa là ứng dụng gán các khóa cho các liên hệ hoặc nhóm riêng lẻ và chỉ người được gửi đến mới có thể đọc tin nhắn. BlackBerry Messenger được nhiều người coi là an toàn, nhưng vì chỉ có một khóa toàn cầu và mọi thiết bị BlackBerry đều có nó, nên có tranh luận về mức độ an toàn của nó. BBM Protected có sẵn cho các nhóm yêu cầu mã hóa cao hơn hoặc mã hóa đầu cuối. IMessage của Apple cũng được mã hóa từ đầu đến cuối, nhưng chỉ khi mọi người đang sử dụng iPhone.
Bạn sử dụng các ứng dụng này giống như bất kỳ trình nhắn tin nào khác - thêm một liên hệ và gửi tin nhắn. Sự khác biệt duy nhất là những tin nhắn đó có thể được mã hóa để chỉ hai bên liên quan có thể đọc chúng.
Là mã hóa xấu?
Mã hóa không làm gì cả. Đó là người dùng làm cho nó "nguy hiểm."
Một số người ở một số chính phủ cho rằng việc có sẵn công nghệ mã hóa cho người dùng cuối (đó là bạn và tôi) là nguy hiểm vì không thể theo dõi thông tin liên lạc của "những người quan tâm". Cuộc tranh luận có thể nghe có vẻ thuyết phục khi chúng tôi nói rằng những kẻ khủng bố đã liên lạc trong nhiều tháng bằng cách sử dụng một dịch vụ như Facebook hoặc WhatsApp. Nhưng bản thân mã hóa không phải là mối nguy hiểm cho bất cứ điều gì và nếu không có nó, không có giao dịch trực tuyến nào của chúng tôi được bảo mật và chúng tôi sẽ không đảm bảo rằng các cuộc trò chuyện của chúng tôi là riêng tư. Đồng thời, tất cả thông tin cá nhân trên điện thoại của chúng tôi sẽ dễ dàng được truy cập bởi bất kỳ ai có công cụ và động lực phù hợp.
Nếu chúng ta từ bỏ bất kỳ quyền có mã hóa, chúng ta sẽ từ bỏ quyền riêng tư của mình. Quyền riêng tư là đáng sợ đối với chính phủ vì họ muốn biết khi nào chúng ta không hoàn toàn tuân thủ luật pháp. Quan niệm rằng tội phạm tiềm năng có thể bị bắt và một số tội phạm được ngăn chặn là rất lớn, nhưng nó đòi hỏi những công dân tuân thủ luật pháp muốn làm điều gì đó đơn giản như mua từ Amazon cũng từ bỏ quyền đó.
Chỉ bạn mới có thể quyết định xem bạn có nên loại bỏ tiền mã hóa khỏi khu vực tư nhân vì lợi ích lớn hơn không, nhưng bạn cần phải biết rằng chính công nghệ này không có hại. Giống như hầu hết mọi thứ, nó có thể bị lạm dụng bởi người dùng.
Điều này thực sự chỉ làm trầy xước bề mặt của mã hóa là gì và cách thức hoạt động. có rất nhiều tài nguyên trực tuyến đi sâu với tất cả các chi tiết kỹ thuật. Nhưng điều này sẽ cung cấp cho bạn một sự hiểu biết cơ bản về tất cả, và lần sau khi bạn thấy ai đó nói về ưu điểm của mã hóa đầu cuối hoặc lợi thế của một nền tảng cụ thể, bạn sẽ có thể hiểu và tham gia.
Cập nhật: Tháng 2 năm 2018: bài đăng này đã được kiểm tra độ mới và cập nhật để những người có câu hỏi về những điều cơ bản của mã hóa có thể bắt đầu trên con đường tìm hiểu nó.