Sicherheit
In dieser Tabelle sind alle Artefakte in der Gruppe androidx.security
aufgeführt.
Artefakt | Stabile Version | Releasekandidat | Beta-Ausgabe | Alpharelease |
---|---|---|---|---|
Sicherheits-Krypto | 1.0.0 | - | - | 1.1.0-alpha06 |
Sicherheits-App-Authentifizierung | - | - | 1.0.0-beta01 | - |
Security-Identity-Anmeldedaten | - | - | - | 1.0.0-alpha03 |
Abhängigkeiten deklarieren
Zum Hinzufügen einer Sicherheitsabhängigkeit müssen Sie Ihrem Projekt das Maven-Repository von Google hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle
für Ihre Anwendung oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Dein Feedback hilft uns, Jetpack zu verbessern. Lassen Sie uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie eine neue erstellen. Durch Klicken auf die Stern-Schaltfläche können Sie zu einem vorhandenen Problem abstimmen.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Sicherheits-App-Authenticator-Test Version 1.0
Version 1.0.0-beta01
6. März 2024
androidx.security:security-app-authenticator:1.0.0-beta01
und androidx.security:security-app-authenticator-testing:1.0.0-beta01
werden veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Version 1.0.0-alpha02
13. Dezember 2023
androidx.security:security-app-authenticator-testing:1.0.0-alpha02
wird freigegeben. Version 1.0.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Der Test für ein neues API-Verhalten wurde aktualisiert, bei dem
Binder#getCalling[Uid|Pid]
nicht mehr vorausgesetzt wird, wenn sie nicht für die[check|enforce]CallingAppIdentity
APIs bereitgestellt wird. (I1851b)
Version 1.0.0-alpha01
2. Juni 2021
androidx.security:security-app-authenticator-testing:1.0.0-alpha01
wird freigegeben. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
Diese Testbibliothek bietet einen Builder, mit dem eine injizierbare AppAuthenticator so konfiguriert werden kann, dass sie die Anforderungen des Tests erfüllt. Diese Bibliothek unterstützt mehrere Methoden zum Konfigurieren von AppAuthenticator:
- Es kann eine generische Testrichtlinie angegeben werden, die für alle in der Konfiguration deklarierten Pakete eine Signaturübereinstimmung meldet.
- Einzelne Pakete können so angegeben werden, dass sie eine Signaturübereinstimmung mit allen anderen Paketen zurückgeben, die keine Übereinstimmung melden.
- Für jedes Paket können explizite Signaturidentitäten festgelegt werden. Die resultierende AppAuthenticator meldet dann nur dann eine Signaturübereinstimmung, wenn die angegebene Identität mit der Deklaration in der Konfigurationsdatei übereinstimmt.
- Pakete können auch als nicht installiert behandelt werden oder eine explizite UID enthalten.
Security-App-Authenticator Version 1.0.0
Version 1.0.0-alpha03
13. Dezember 2023
androidx.security:security-app-authenticator:1.0.0-alpha03
wird freigegeben. Version 1.0.0-alpha03 enthält diese Commits.
API-Änderungen
- Unterstützung für Anwendungsfälle hinzugefügt, bei denen die UID / PID des zu bestätigenden Pakets nicht verfügbar ist. Die APIs unterstützen jetzt Fälle wie
startActivityForResult
sowie Aktivitäten / Empfänger, bei denen die Identität der aufrufenden App über[Activity|Broadcast]Options#setShareIdentityEnabled
weitergegeben wird. - Das Verhalten von
[check|enforce]CallingAppIdentity(String, String)
wurde aktualisiert, um diese neuen Anwendungsfälle zu unterstützen. Für diese Methoden wird nicht mehr standardmäßigBinder#getCalling[Uid|Pid]
verwendet. Stattdessen wird die Überprüfung der UID des aufrufenden Pakets übersprungen, wenn sie nicht explizit angegeben wurde. (I1851b)
Version 1.0.0-alpha02
2. Juni 2021
androidx.security:security-app-authenticator:1.0.0-alpha02
wird freigegeben. Version 1.0.0-alpha02 enthält diese Commits.
API-Änderungen
- In Vorbereitung auf die Unterstützung des in Android 12 eingeführten neuen Berechtigungsschutz-Flags
knownSigner
kann das Attribut „digestAlgorithm“ nicht mehr in der Konfiguration angegeben werden. Stattdessen sollten alle Zertifikat-Digests mit SHA-256 berechnet werden.
Fehlerkorrekturen
- Alle in der Konfiguration bereitgestellten Zertifikat-Digests sind jetzt normalisiert, damit eine erfolgreiche Signaturübereinstimmung sowohl bei der Berechnung des Digests zur Laufzeit als auch dann gemeldet werden kann, wenn bei Verwendung der Testbibliothek eine explizite Signaturidentität definiert wird.
Version 1.0.0-alpha01
5. Mai 2021
androidx.security:security-app-authenticator:1.0.0-alpha01
wird freigegeben. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
AppAuthenticator ist eine neue Bibliothek, die die Überprüfung der Vertrauensstellung von Apps anhand der Signaturidentität vereinfacht. Für eine App muss lediglich eine XML-Konfigurationsdatei angegeben werden, die die Paketnamen und Signaturidentitäten vertrauenswürdiger Apps enthält. Die Bibliothek prüft dann die Signaturidentität von Apps zur Laufzeit.
Version 1.1.0
Version 1.1.0-alpha06
19. April 2023
androidx.security:security-crypto:1.1.0-alpha06
und androidx.security:security-crypto-ktx:1.1.0-alpha06
werden veröffentlicht. Version 1.1.0-alpha06 enthält diese Commits.
Neue Funktionen
- Tink-Abhängigkeit auf Version 1.8.0 aktualisiert
Version 1.1.0-alpha05
22. Februar 2023
androidx.security:security-crypto:1.1.0-alpha05
und androidx.security:security-crypto-ktx:1.1.0-alpha05
werden veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
- Eine Race-Bedingung in
MasterKeys.getOrCreate
wurde behoben (I3391e, b/268572037)
Version 1.1.0-alpha04
9. November 2022
androidx.security:security-crypto:1.1.0-alpha04
und androidx.security:security-crypto-ktx:1.1.0-alpha04
werden veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.
Neue Funktionen
- Die Protokollmeldung „Schlüsselsatz nicht gefunden, wird neu generiert“ beim ersten App-Start entfernt. (b/185219606)
- Die Tink-Abhängigkeit wurde auf Version 1.7.0 aktualisiert.
API-Änderungen
- Ändert
EncryptedFile#openFileInput()
so, dass einFileNotFoundException
anstelle eines generischenIOException
ausgegeben wird, wenn die angeforderte Datei nicht vorhanden ist. (I80e41, b/148804719) - Die Klasse „MasterKeys“ wurde aktualisiert, sodass Android M und nicht jede seiner Methoden erforderlich ist. (I8b4b8)
- Ändert alle Präferenz-Getter für
EncryptedSharedPreferences
(z. B.#getString
,#getInt
) so, dassSecurityException
in seltenen Fällen ausgelöst wird, in denen der Typ eines Werts keiner der definierten enum-Varianten zugeordnet werden kann. (b/241699427)
Fehlerkorrekturen
- Mindestversion der SDK-Version der Security-Crypto-ktx-Bibliothek mit security-crypto, indem sie auf Version 21 gesenkt wird (b/193550375)
- Der Nebenläufigkeitsfehler beim Erstellen mehrerer
EncryptedFile
s wurde behoben (b/136590547).
Externer Beitrag
- Fehlerkorrektur für
EncryptedSharedPreferences.Editor#remove
von chr.ibbotson@gmail.com (b/224994760, b/134197835, f44d44d)
Security-Crypto-Ktx Version 1.1.0-alpha03
18. Mai 2021
androidx.security:security-crypto-ktx:1.1.0-alpha03
wird freigegeben. Version 1.1.0-alpha03 enthält diese Commits.
Aktualisiert und entspricht androidx.security:security-crypto:1.1.0-alpha03
.
Version 1.1.0-alpha03
2. Dezember 2020
androidx.security:security-crypto:1.1.0-alpha03
wird freigegeben. Version 1.1.0-alpha03 enthält diese Commits.
Neue Funktionen
- Tink wurde auf die stabile Version
1.5.0
aktualisiert
Version 1.1.0-alpha02
5. August 2020
androidx.security:security-crypto:1.1.0-alpha02
und androidx.security:security-crypto-ktx:1.1.0-alpha02
werden veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
Neue Funktionen
- Tink wurde auf die stabile Version
1.4.0
aktualisiert
Fehlerkorrekturen
- Das Tink-Update sollte R8- und Proguard-Probleme mit einer Shading-Protobuf-Abhängigkeit beheben.
- Das Tink-Update sollte Fehler bei der Nebenläufigkeit von AndroidKeyStore problemlos bewältigen.
Externer Beitrag
- „
mKeysChanged
“ beim Anwenden löschen, Korrektur für EncryptedSharedPreferences (aosp/1323026)
Version 1.1.0-alpha01
10. Juni 2020
androidx.security:security-crypto:1.1.0-alpha01
wird freigegeben. Version 1.1.0-alpha01 enthält diese Commits.
Neue Funktionen
- Lollipop (API-Level 21 und höher) wird jetzt unterstützt. Beachten Sie, dass AndroidKeyStore nicht für API 21 und 22 verwendet wird. (I7c12d, b/132325342)
- Die neue MasterKey-Klasse bietet mehr Optionen für Schlüssel. Außerdem werden MasterKeys verworfen, um neue Funktionen und Versionen von Android zu unterstützen, die nicht über KeyGenParamSpec verfügen.
Security-Identity-Credential Version 1.0.0
Version 1.0.0-alpha03
1. September 2021
androidx.security:security-identity-credential:1.0.0-alpha03
wird freigegeben. Version 1.0.0-alpha03 enthält diese Commits.
Neue Funktionen
- In Android 12 werden hardwaregestützte Funktionen für Identitätsnachweise hinzugefügt.
Version 1.0.0-alpha02
24. Februar 2021
androidx.security:security-identity-credential:1.0.0-alpha02
wird freigegeben. Version 1.0.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Identity Credential API so aktualisieren, dass sie den Android 12-Abos entspricht (Iff83e)
Version 1.0.0-alpha01
19. August 2020
androidx.security:security-identity-credential:1.0.0-alpha01
wird freigegeben. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
Dieser Jetpack-Release enthält eine Jetpack-Version der Identity Credential APIs, die Android 11 und API-Level 30 hinzugefügt wurde. Wenn das Gerät unter Android 11 ausgeführt wird und das Gerät hardwaregestützte Unterstützung von Identity Credential bietet, leitet dieses Jetpack einfach Aufrufe an die Plattform-API weiter. Andernfalls wird eine durch den Android-Schlüsselspeicher gestützte Implementierung verwendet. Die durch den Android-Schlüsselspeicher gestützte Implementierung bietet zwar nicht das gleiche Maß an Sicherheit und Datenschutz, ist jedoch sowohl für Inhaber als auch für Aussteller perfekt geeignet, wenn alle Daten vom Aussteller signiert sind. Für diese Bibliothek ist API-Level 24 oder höher erforderlich.
Die Identity Credential APIs bieten eine Schnittstelle zu einem sicheren Speicher für Dokumente mit Nutzeridentitäten. Diese APIs sind relativ allgemein und abstrakt. Soweit möglich, wird die Spezifikation der Nachrichtenformate und der Semantik für die Kommunikation mit Geräten zur Bestätigung der Anmeldedaten und ausstellenden Behörden (IAs) nicht in den Geltungsbereich dieser APIs fallen. Die Datenstrukturen, von denen die APIs abhängen, sind mit den Datenstrukturen im demnächst veröffentlichten ISO/IEC IS 18013-5-Anwendungsstandard „Persönliche Identifikation – ISO-konformer Führerschein – Teil 5: Führerschein für Mobilgeräte“ kompatibel.
API-Änderungen
- Jetpack „Identity Credential“ wurde hinzugefügt. (ICF90b)
Version 1.0.0
Version 1.0.0
21. April 2021
androidx.security:security-crypto:1.0.0
wird freigegeben. Version 1.0.0 enthält diese Commits.
Hauptfunktionen von Version 1.0.0
Funktionshighlights
EncryptedFile
bietet verschlüsselte Eingabe- und Ausgabestreams zum Lesen/Schreiben von verschlüsselten Daten in eine Datei.EncryptedSharedPreferences
bietet eine Implementierung von SharedPreferences, die alle Schlüssel und Werte automatisch verschlüsselt/entschlüsselt.- Bietet eine einfache Schlüsselgenerierung über MasterKeys.
- Für verbesserte Stabilität wird Tink 1.5.0 benötigt.
Version 1.0.0-rc04
13. Januar 2021
androidx.security:security-crypto:1.0.0-rc04
wird freigegeben. Version 1.0.0-rc04 enthält diese Commits.
Fehlerkorrekturen
- Tink wurde auf Version 1.5.0 aktualisiert, um die Stabilität zu verbessern.
Version 1.0.0-rc03
5. August 2020
androidx.security:security-crypto:1.0.0-rc03
wird freigegeben. Version 1.0.0-rc03 enthält diese Commits.
Neue Funktionen
- Tink wurde auf die stabile Version
1.4.0
aktualisiert
Fehlerkorrekturen
- Das Tink-Update sollte R8- und Proguard-Probleme mit einer Shading-Protobuf-Abhängigkeit beheben.
- Das Tink-Update sollte Fehler bei der Nebenläufigkeit von AndroidKeyStore problemlos bewältigen.
Externer Beitrag
- „
mKeysChanged
“ beim Anwenden löschen, Korrektur für EncryptedSharedPreferences (aosp/1323026)
Version 1.0.0-rc02
20. Mai 2020
androidx.security:security-crypto:1.0.0-rc02
wird freigegeben. Version 1.0.0-rc02 enthält diese Commits.
Fehlerkorrekturen
- Auf Tink-Version 1.4.0-rc2 aktualisiert, die das Proto-Buf-Lite-Dep abdunkelt. Dadurch wird das häufig gemeldete Problem bei Konflikten mit anderen Android-SDKs gelöst. (I8a831)
- Problem mit
apply()
inEncryptedSharedPreferences
behoben. (I29069, b/154366606)
Version 1.0.0-rc01
15. April 2020
androidx.security:security-crypto:1.0.0-rc01
wird freigegeben. Version 1.0.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Es wurden Prüfungen hinzugefügt, um sicherzustellen, dass bei Übergabe von
KeyGenParamSpec
anMasterKeys.getOrCreate
, dass bei Übergeben vongetUserAuthenticationRequired
true
zurückgegeben wird, dassgetUserAuthenticationValidityDurationSeconds
einen Wert größer als 0 zurückgibt. (I911f5) (b/152644939)
Version 1.0.0-beta01
18. März 2020
androidx.security:security-crypto:1.0.0-beta01
wurde ohne Änderungen seit 1.0.0-alpha02
veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Version 1.0.0-alpha02
23. Mai 2019
androidx.security:security-crypto:1.0.0-alpha02
wird freigegeben.
Die in dieser Version enthaltenen Commits finden Sie in diesem Commit-Log.
Fehlerkorrekturen
- Ein Problem beim Abrufen von Schlüssel/Wert-Paaren, die mit geteilten Einstellungen verknüpft sind, wurde aus
getAll()
behoben. - Die Verwendung eingeschränkter Einstellungsschlüssel wurde blockiert.
- Kleinere Javadoc-Updates.
Version 1.0.0-alpha01
7. Mai 2019
androidx.security:security-crypto:1.0.0-alpha01
wird freigegeben. Die in dieser Version enthaltenen Commits finden Sie hier.
Highlights der neuen Funktionen
EncryptedFile
bietet verschlüsselte Eingabe- und Ausgabestreams zum Lesen/Schreiben von verschlüsselten Daten in eine Datei.EncryptedSharedPreferences
bietet eine Implementierung vonSharedPreferences
, die alle Schlüssel und Werte automatisch verschlüsselt/entschlüsselt.- Bietet eine einfache Schlüsselgenerierung über MasterKeys.