Android-Sicherheitsfunktionen,Android-Sicherheitsfunktionen

Nutzen Sie die in diesem Abschnitt beschriebenen Funktionen, um die von Ihnen entwickelten Android-Geräte so sicher wie möglich zu machen.

App-Sandbox

Die Android-Plattform nutzt den benutzerbasierten Linux-Schutz, um App-Ressourcen zu identifizieren und zu isolieren. Dazu weist Android jeder Android-App eine eindeutige Benutzer-ID (UID) zu und führt sie in einem eigenen Prozess aus. Android verwendet diese UID, um eine App-Sandbox auf Kernel-Ebene einzurichten.

App-Signierung

Durch die App-Signierung können Entwickler den Autor der App identifizieren und ihre App aktualisieren, ohne komplizierte Schnittstellen und Berechtigungen zu erstellen. Jede App, die auf der Android-Plattform läuft, muss vom Entwickler signiert werden.

Authentifizierung

Android verwendet das Konzept von durch Benutzerauthentifizierung gesteuerten kryptografischen Schlüsseln, die die Speicherung kryptografischer Schlüssel sowie einen Dienstanbieter und Benutzerauthentifizierer erfordern.

Auf Geräten mit einem Fingerabdrucksensor können Benutzer einen oder mehrere Fingerabdrücke registrieren und diese Fingerabdrücke zum Entsperren des Geräts und zum Ausführen anderer Aufgaben verwenden. Das Gatekeeper-Subsystem führt die Gerätemuster-/Passwortauthentifizierung in einer Trusted Execution Environment (TEE) durch.

Android 9 und höher beinhaltet die geschützte Bestätigung, die Benutzern die Möglichkeit gibt, kritische Transaktionen, wie z. B. Zahlungen, offiziell zu bestätigen.

Biometrie

Android 9 und höher enthält eine BiometricPrompt-API, mit der App-Entwickler die biometrische Authentifizierung geräte- und modalitätsunabhängig in ihre Apps integrieren können. Nur starke Biometrie kann mit BiometricPrompt integriert werden.

Verschlüsselung

Sobald ein Gerät verschlüsselt ist, werden alle vom Benutzer erstellten Daten automatisch verschlüsselt, bevor sie auf die Festplatte übertragen werden, und alle Lesevorgänge entschlüsseln die Daten automatisch, bevor sie an den aufrufenden Prozess zurückgegeben werden. Durch die Verschlüsselung wird sichergestellt, dass ein Unbefugter, selbst wenn er versucht, auf die Daten zuzugreifen, diese nicht lesen kann.

Schlüsselspeicher

Android bietet einen hardwaregestützten Keystore, der die Schlüsselgenerierung, den Import und Export asymmetrischer Schlüssel, den Import roher symmetrischer Schlüssel, asymmetrische Ver- und Entschlüsselung mit entsprechenden Auffüllmodi und mehr ermöglicht.

Linux mit verbesserter Sicherheit

Als Teil des Android-Sicherheitsmodells verwendet Android Security-Enhanced Linux (SELinux), um eine obligatorische Zugriffskontrolle (MAC) für alle Prozesse durchzusetzen, auch für Prozesse, die mit Root-/Superuser-Berechtigungen ausgeführt werden (Linux-Funktionen).

Trusty Trusted Execution Environment (TEE)

Trusty ist ein sicheres Betriebssystem (OS), das eine Trusted Execution Environment (TEE) für Android bereitstellt. Das Trusty-Betriebssystem läuft auf demselben Prozessor wie das Android-Betriebssystem, aber Trusty ist sowohl durch Hardware als auch durch Software vom Rest des Systems isoliert.

Verifizierter Start

Mit Verified Boot soll sichergestellt werden, dass der gesamte ausgeführte Code von einer vertrauenswürdigen Quelle (in der Regel Geräte-OEMs) stammt und nicht von einem Angreifer oder einer Beschädigung. Es richtet eine vollständige Vertrauenskette ein, angefangen von einem hardwaregeschützten Vertrauensstamm über den Bootloader bis hin zur Bootpartition und anderen überprüften Partitionen.

,

Nutzen Sie die in diesem Abschnitt beschriebenen Funktionen, um die von Ihnen entwickelten Android-Geräte so sicher wie möglich zu machen.

App-Sandbox

Die Android-Plattform nutzt den benutzerbasierten Linux-Schutz, um App-Ressourcen zu identifizieren und zu isolieren. Dazu weist Android jeder Android-App eine eindeutige Benutzer-ID (UID) zu und führt sie in einem eigenen Prozess aus. Android verwendet diese UID, um eine App-Sandbox auf Kernel-Ebene einzurichten.

App-Signierung

Durch die App-Signierung können Entwickler den Autor der App identifizieren und ihre App aktualisieren, ohne komplizierte Schnittstellen und Berechtigungen zu erstellen. Jede App, die auf der Android-Plattform läuft, muss vom Entwickler signiert werden.

Authentifizierung

Android verwendet das Konzept von durch Benutzerauthentifizierung gesteuerten kryptografischen Schlüsseln, die die Speicherung kryptografischer Schlüssel sowie einen Dienstanbieter und Benutzerauthentifizierer erfordern.

Auf Geräten mit einem Fingerabdrucksensor können Benutzer einen oder mehrere Fingerabdrücke registrieren und diese Fingerabdrücke zum Entsperren des Geräts und zum Ausführen anderer Aufgaben verwenden. Das Gatekeeper-Subsystem führt die Gerätemuster-/Passwortauthentifizierung in einer Trusted Execution Environment (TEE) durch.

Android 9 und höher beinhaltet die geschützte Bestätigung, die Benutzern die Möglichkeit gibt, kritische Transaktionen, wie z. B. Zahlungen, offiziell zu bestätigen.

Biometrie

Android 9 und höher enthält eine BiometricPrompt-API, mit der App-Entwickler die biometrische Authentifizierung geräte- und modalitätsunabhängig in ihre Apps integrieren können. Nur starke Biometrie kann mit BiometricPrompt integriert werden.

Verschlüsselung

Sobald ein Gerät verschlüsselt ist, werden alle vom Benutzer erstellten Daten automatisch verschlüsselt, bevor sie auf die Festplatte übertragen werden, und alle Lesevorgänge entschlüsseln die Daten automatisch, bevor sie an den aufrufenden Prozess zurückgegeben werden. Durch die Verschlüsselung wird sichergestellt, dass ein Unbefugter, selbst wenn er versucht, auf die Daten zuzugreifen, diese nicht lesen kann.

Schlüsselspeicher

Android bietet einen hardwaregestützten Keystore, der die Schlüsselgenerierung, den Import und Export asymmetrischer Schlüssel, den Import roher symmetrischer Schlüssel, asymmetrische Ver- und Entschlüsselung mit entsprechenden Auffüllmodi und mehr ermöglicht.

Linux mit verbesserter Sicherheit

Als Teil des Android-Sicherheitsmodells verwendet Android Security-Enhanced Linux (SELinux), um eine obligatorische Zugriffskontrolle (MAC) für alle Prozesse durchzusetzen, auch für Prozesse, die mit Root-/Superuser-Berechtigungen ausgeführt werden (Linux-Funktionen).

Trusty Trusted Execution Environment (TEE)

Trusty ist ein sicheres Betriebssystem (OS), das eine Trusted Execution Environment (TEE) für Android bereitstellt. Das Trusty-Betriebssystem läuft auf demselben Prozessor wie das Android-Betriebssystem, aber Trusty ist sowohl durch Hardware als auch durch Software vom Rest des Systems isoliert.

Verifizierter Start

Mit Verified Boot soll sichergestellt werden, dass der gesamte ausgeführte Code von einer vertrauenswürdigen Quelle (in der Regel Geräte-OEMs) stammt und nicht von einem Angreifer oder einer Beschädigung. Es richtet eine vollständige Vertrauenskette ein, angefangen von einem hardwaregeschützten Vertrauensstamm über den Bootloader bis hin zur Bootpartition und anderen überprüften Partitionen.