Mit den in diesem Abschnitt beschriebenen Funktionen können Sie die von Ihnen entwickelten Android-Geräte so sicher wie möglich machen.
Anwendungs-Sandbox
Die Android-Plattform nutzt den nutzerbasierten Schutz von Linux, um App-Ressourcen zu identifizieren und zu isolieren. Dazu weist Android jeder Android-App eine eindeutige Nutzer-ID (UID) zu und führt sie in einem eigenen Prozess aus. Android verwendet diese UID, um eine Anwendungs-Sandbox auf Kernelebene einzurichten.
App-Signatur
Mit der App-Signatur können Entwickler den Autor der App identifizieren und ihre App aktualisieren, ohne komplizierte Oberflächen und Berechtigungen erstellen zu müssen. Jede App, die auf der Android-Plattform ausgeführt wird, muss vom Entwickler signiert sein.
Authentifizierung
Android verwendet das Konzept kryptografischer Schlüssel, die durch die Nutzerauthentifizierung gesteuert werden. Dazu sind kryptografische Schlüsselspeicher, Dienstanbieter und Nutzerauthentifikatoren erforderlich.
Auf Geräten mit Fingerabdrucksensor können Nutzer einen oder mehrere Fingerabdrücke registrieren und diese Fingerabdrücke verwenden, um das Gerät zu entsperren und andere Aufgaben auszuführen. Das Gatekeeper-Subsystem führt die Gerätemuster- oder Passwortauthentifizierung in einer vertrauenswürdigen Ausführungsumgebung (Trusted Execution Environment, TEE) durch.
Android 9 und höher enthält die geschützte Bestätigung, mit der Nutzer wichtige Transaktionen wie Zahlungen formal bestätigen können.
Biometrisches Verfahren
Android 9 und höher enthalten die BiometricPrompt API, mit der App-Entwickler die biometrische Authentifizierung geräte- und modalitätsunabhängig in ihre Apps einbinden können. Nur starke biometrische Verfahren können in BiometricPrompt
eingebunden werden.
Verschlüsselung
Sobald ein Gerät verschlüsselt ist, werden alle vom Nutzer erstellten Daten automatisch verschlüsselt, bevor sie auf das Laufwerk übertragen werden. Bei allen Lesevorgängen werden die Daten automatisch entschlüsselt, bevor sie an den aufrufenden Prozess zurückgegeben werden. Durch die Verschlüsselung wird sichergestellt, dass Unbefugte die Daten nicht lesen können, auch wenn sie versuchen, darauf zuzugreifen.
Schlüsselspeicher
Android bietet einen hardwaregestützten Schlüsselspeicher, der unter anderem die Generierung, den Import und Export asymmetrischer Schlüssel, den Import von symmetrischen Rohschlüsseln sowie die asymmetrische Verschlüsselung und Entschlüsselung mit geeigneten Padding-Modi ermöglicht.
Security-Enhanced Linux
Im Rahmen des Android-Sicherheitsmodells verwendet Android Security-Enhanced Linux (SELinux), um die Mandatory Access Control (MAC) für alle Prozesse durchzusetzen, auch für Prozesse, die mit Root- oder Superuser-Berechtigungen (Linux-Funktionen) ausgeführt werden.
Vertrauenswürdige Ausführungsumgebung (TEE) von Trusty
Trusty ist ein sicheres Betriebssystem, das eine vertrauenswürdige Ausführungsumgebung (Trusted Execution Environment, TEE) für Android bietet. Das Trusty-Betriebssystem wird auf demselben Prozessor wie das Android-Betriebssystem ausgeführt, ist aber sowohl durch Hardware als auch durch Software vom Rest des Systems isoliert.
Verified Boot
Der verifizierte Bootmodus soll dafür sorgen, dass der gesamte ausgeführte Code von einer vertrauenswürdigen Quelle stammt (normalerweise Geräte-OEMs), und nicht von einem Angreifer oder einer Korruption. Sie stellt eine vollständige Vertrauenskette her, angefangen bei einem hardwaregeschützten Root of Trust über den Bootloader bis hin zur Bootpartition und anderen verifizierten Partitionen.