Android được thiết kế với trọng tâm tập trung vào an toàn. Android là một nền tảng cung cấp và thi hành một số tính năng để bảo vệ dữ liệu người dùng hiện nay trên điện thoại di động thông nhiều lớp an ninh. Có một số chức năng an toàn mặc định rằng sẽ bảo vệ người sử dụng và các dịch vụ nhất định và có thể được thừa hưởng bởi cộng đồng phát triển để xây dựng các ứng dụng an toàn. Sau đây là những vấn đề đó lưu tâm trong khi kết hợp các điều khiển bảo mật của Android:
Bảo vệ dữ liệu người dùng liên quan
Bảo vệ các tài nguyên hệ thống
Đảm bảo một ứng dụng không thể truy cập vào dữ liệu của ứng dụng khác.
3.1.2.1 Mô hình phân quyền
Như thể hiện trong hình bên dưới, bất kỳ ứng dụng Android phải được cấp quyền truy cập vào các chức năng nhạy cảm, chẳng hạn như Internet, quay số và như vậy, bởi người sử dụng. Điều này cung cấp một cơ hội cho người sử dụng biết trước những gì các chức năng trên các thiết bị ứng dụng đang cố gắng truy cập. Đơn giản chỉ cần đặt, nó đòi hỏi phải có sự cho phép của người dùng để thực hiện bất cứ hành động độc hại (ăn cắp dữ liệu , ảnh hưởng đến hệ thống).
Mô hình này giúp người sử dụng để ngăn chặn các cuộc tấn công, nhưng nếu người dùng không hề biết và cho đi rất nhiều quyền, nó khiến họ gặp rắc rối.
70
3.1.2.2 Application Sandbox
Trong hệ thống Linux , mỗi người dùng được gán một số ID người dùng duy nhất ( UID ), và các người dùng được tách biệt để một người sử dụng có thể truy cập vào dữ liệu của người dùng khác. Tuy nhiên, tất cả các ứng dụng theo một người dùng cụ thể được chạy với cùng một đặc quyền. Tương tự như vậy trong Android, mỗi ứng dụng chạy như một người dùng duy nhất. Nói cách khác, một UID được gán cho mỗi ứng dụng và được chạy như một quá trình riêng biệt. Khái niệm này đảm bảo một ứng dụng chạy cách ly ở mức kernel. Kernal quản lý các hạn chế bảo mật giữa các ứng dụng bằng cách sử dụng các khái niệm Linux hiện có, chẳng hạn như UID và GID. Nếu một ứng dụng cố gắng để làm một cái gì đó có hại như đọc dữ liệu của một ứng dụng khác, điều này là không được phép làm như các ứng dụng không có đặc quyền người dùng. Do đó, hệ điều hành bảo vệ một ứng dụng truy cập vào các dữ liệu của một ứng dụng khác .
71
3.1.2.3 Bảo mật liên tiến trình
Android cung cấp một giao tiếp interprocess an toàn thông qua đó hoạt động của một người trong một ứng dụng có thể gửi tin nhắn đến các hoạt động khác trong cùng một ứng dụng hoặc một ứng dụng khác nhau.
3.1.2.4 Ký sốứng dụng
Đây là yêu cầu bắt buộc tất cả các ứng dụng được cài đặt có chữ ký số. Các nhà phát triển chỉ có thể đặt các ứng dụng của họ trong cửa hàng Google Play chỉ sau khi ký vào các ứng dụng. Các khóa riêng mà các ứng dụng được ký kết được tổ chức bởi các nhà phát triển. Sử dụng các key, một nhà phát triển có thể cung cấp thông tin cập nhật cho ứng dụng của họ, chia sẻ dữ liệu giữa các ứng dụng.