Các tính năng bảo mật của Android

Hãy sử dụng các tính năng được mô tả trong phần này để giúp các thiết bị Android mà bạn phát triển trở nên an toàn nhất có thể.

Hộp cát ứng dụng

Nền tảng Android tận dụng tính năng bảo vệ dựa trên người dùng của Linux để xác định và cô lập các tài nguyên của ứng dụng. Để làm việc này, Android sẽ chỉ định một mã nhận dạng người dùng (UID) riêng cho từng ứng dụng Android và chạy ứng dụng đó trong quy trình riêng. Android sử dụng UID này để thiết lập Hộp cát ứng dụng ở cấp độ kernel.

Ký ứng dụng

Tính năng ký ứng dụng cho phép nhà phát triển xác định tác giả của ứng dụng và cập nhật ứng dụng mà không cần tạo các giao diện và quyền phức tạp. Mọi ứng dụng chạy trên nền tảng Android đều phải được nhà phát triển ký.

Xác thực

Android có khái niệm về trình xác thực người dùng có thể mở khoá thiết bị và thực hiện các tác vụ khác:

Android cũng hỗ trợ các khoá mã hoá được phần cứng hỗ trợ. Bạn chỉ có thể sử dụng các khoá này nếu đã xác thực người dùng bằng một trong các cơ chế này.

Thông tin sinh trắc học

Android 9 trở lên có BiometricPrompt lớp mà nhà phát triển ứng dụng có thể dùng để tích hợp tính năng xác thực bằng sinh trắc học vào ứng dụng của họ theo cách không phụ thuộc vào thiết bị và phương thức. Chỉ các thông tin sinh trắc học mạnh mới có thể tích hợp với BiometricPrompt.

Mã hoá

Sau khi thiết bị được mã hoá, tất cả dữ liệu do người dùng tạo sẽ tự động được mã hoá trước khi được ghi vào ổ đĩa và tất cả các lượt đọc sẽ tự động giải mã dữ liệu trước khi trả về quy trình gọi. Tính năng mã hoá đảm bảo rằng ngay cả khi một bên không được phép cố gắng truy cập vào dữ liệu, họ cũng không thể đọc được dữ liệu đó.

Kho khoá

Android cung cấp một kho khoá được phần cứng hỗ trợ, cung cấp chức năng mã hoá trong đó tài liệu khoá được chứa trong một môi trường an toàn. Kho khoá Android hỗ trợ việc tạo và nhập cả khoá đối xứng và bất đối xứng, kết hợp với các nguyên hàm mã hoá, giải mã, ký và thoả thuận khoá.

Security-Enhanced Linux

Trong mô hình bảo mật Android, Android sử dụng Security-Enhanced Linux (SELinux) để thực thi quyền kiểm soát truy cập bắt buộc (MAC) đối với tất cả các quy trình, ngay cả các quy trình chạy với đặc quyền root hoặc siêu người dùng (khả năng của Linux).

Trusty TEE

Trusty TEE

Trusty là một hệ điều hành (OS) an toàn, cung cấp TEE cho Android. Hệ điều hành Trusty chạy trên cùng một bộ xử lý với hệ điều hành Android, nhưng Trusty được phần cứng và phần mềm cô lập khỏi phần còn lại của hệ thống.

Xác minh quy trình khởi động

Xác minh quy trình khởi động được thiết kế để đảm bảo rằng tất cả mã được thực thi đều đến từ một nguồn đáng tin cậy (thường là OEM thiết bị), thay vì từ kẻ tấn công hoặc bị hỏng. Tính năng Xác minh quy trình khởi động thiết lập một chuỗi tin cậy đầy đủ, bắt đầu từ gốc tin cậy được phần cứng bảo vệ đến trình tải khởi động, đến phân vùng khởi động và các phân vùng đã xác minh khác.