Bezpieczeństwo

Bezpiecznie zarządzaj kluczami oraz szyfruj pliki i udostępnione ustawienia.

Ta tabela zawiera wszystkie artefakty w grupie androidx.security.

Artefakt Wersja stabilna Kandydat do wydania Wersja Beta Wydanie alfa
zabezpieczenia-kryptowaluty 1.0.0 - - 1.1.0-alfa06
uwierzytelnianie aplikacji - - 1.0.0-beta01 -
zabezpieczenia-tożsamości-dane logowania - - - 1.0.0-alfa03
Data ostatniej aktualizacji: 7 sierpnia 2024 r.

Deklarowanie zależności

Aby dodać zależność od zabezpieczeń, musisz dodać repozytorium Google Maven do swojego w projektach AI. Zapoznaj się z repozytorium Google Maven. .

Dodaj zależności artefaktów, których potrzebujesz w pliku build.gradle aplikacji lub modułu:

Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.

Opinia

Twoja opinia pomoże nam ulepszyć Jetpack. Daj nam znać, jeśli odkryjesz nowe problemy jak ulepszyć tę bibliotekę. Przyjrzyj się istniejące problemy w tej bibliotece, zanim utworzysz nową. Możesz zagłosować nad istniejącym problemem przez klikając przycisk gwiazdki.

Tworzenie nowego numeru

Zobacz dokumentację narzędzia Issue Tracker. .

Security-State w wersji 1.0

Wersja 1.0.0-alpha04

7 sierpnia 2024 r.

Usługa androidx.security:security-state:1.0.0-alpha04 została zwolniona. Wersja 1.0.0-alfa04 zawiera te zatwierdzenia.

Uwaga

  • Zaktualizuj compileSdk do 35 5dc41be

Zmiany interfejsu API

  • Niezgodna z zasadami: enuma komponentów została zastąpiona stałymi ciągami znaków w celu rozszerzenia. (Ia3283),

Wersja 1.0.0-alpha03

10 lipca 2024 r.

Usługa androidx.security:security-state:1.0.0-alpha03 została zwolniona. Wersja 1.0.0-alfa03 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawiliśmy wzorzec ASB-A- w przypadku błędów w biuletynie o zabezpieczeniach Androida, analizy składni JSON na potrzeby dodatkowych komponentów i pobierania plików w pakiecie Webview. (Ide86a)

Wersja 1.0.0-alpha02

26 czerwca 2024 r.

Usługa androidx.security:security-state:1.0.0-alpha02 została zwolniona. Wersja 1.0.0-alfa02 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawiono logikę pobierania wersji jądra. (I5602a)

Wersja 1.0.0-alpha01

12 czerwca 2024 r.

Usługa androidx.security:security-state:1.0.0-alpha01 została zwolniona. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.

Nowe funkcje

  • Security State to nowa biblioteki, dzięki której deweloperzy mogą uzyskać przydatne dane o wersjach komponentów systemu z możliwością aktualizacji, aktualizacjach zabezpieczeń i zastosowanych poprawkach.

Security-App-Authenticator-Testing Version 1.0

Wersja 1.0.0-beta01

6 marca 2024 roku

androidx.security:security-app-authenticator:1.0.0-beta01 i androidx.security:security-app-authenticator-testing:1.0.0-beta01 zostały udostępnione. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.

Wersja 1.0.0-alpha02

13 grudnia 2023 r.

Usługa androidx.security:security-app-authenticator-testing:1.0.0-alpha02 została zwolniona. Wersja 1.0.0-alfa02 zawiera te zatwierdzenia.

Poprawki błędów

  • Zaktualizowano test nowego działania interfejsu API, które nie zakłada już zasady Binder#getCalling[Uid|Pid], jeśli nie zostanie ono przekazane do interfejsów API [check|enforce]CallingAppIdentity. (I1851b)

Wersja 1.0.0-alpha01

2 czerwca 2021 r.

Usługa androidx.security:security-app-authenticator-testing:1.0.0-alpha01 została zwolniona. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.

Nowe funkcje

Ta biblioteka testowa zawiera kreator, za pomocą którego można skonfigurować AppAuthenticator z możliwością wstrzykiwania, aby spełnić wymagania testu. Ta biblioteka obsługuje kilka metod konfigurowania AppAuthenticator:

  • Można określić ogólną zasadę testów, która zgłasza dopasowanie podpisu dla wszystkich pakietów zadeklarowanych w konfiguracji.
  • Możesz tak skonfigurować poszczególne pakiety tak, aby zwracały taką samą sygnaturę względem wszystkich pozostałych pakietów, które sygnalizują brak zgodności.
  • Dla każdego pakietu można ustawić tożsamość podpisującego. powstały w ten sposób AppAuthenticator zgłasza dopasowanie podpisu tylko wtedy, gdy podana tożsamość jest zgodna z deklaracją w pliku konfiguracji.
  • Pakiety mogą być też traktowane jako niezainstalowane lub mające jawny identyfikator UID.

Security-App-Authenticator w wersji 1.0.0

Wersja 1.0.0-alpha03

13 grudnia 2023 r.

Usługa androidx.security:security-app-authenticator:1.0.0-alpha03 została zwolniona. Wersja 1.0.0-alfa03 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • Dodaliśmy obsługę przypadków użycia, w których identyfikator UID lub PID pakietu do zweryfikowania jest niedostępny. Interfejsy API obsługują teraz zgłoszenia takie jak startActivityForResult oraz działania / odbiorcy, w przypadku których tożsamość aplikacji wywołującej jest udostępniana w [Activity|Broadcast]Options#setShareIdentityEnabled.
  • Zaktualizowaliśmy działanie [check|enforce]CallingAppIdentity(String, String), aby obsługiwać te nowe przypadki użycia. te metody nie będą już domyślnie używać Binder#getCalling[Uid|Pid], ale zamiast tego pominą weryfikację identyfikatora UID pakietu wywołującego, jeśli nie zostanie podany wprost. (I1851b)

Wersja 1.0.0-alpha02

2 czerwca 2021 r.

Usługa androidx.security:security-app-authenticator:1.0.0-alpha02 została zwolniona. Wersja 1.0.0-alfa02 zawiera te zatwierdzenia.

Zmiany interfejsu API

  • W ramach przygotowań do obsługi nowej flagi ochrony uprawnień knownSigner wprowadzonej w Androidzie 12 nie można już określić atrybutu dimestAlgorithm w konfiguracji. Wszystkie skróty certyfikatów powinny być obliczane z użyciem algorytmu SHA-256.

Poprawki błędów

  • Wszystkie skróty certyfikatów udostępnione w konfiguracji są teraz znormalizowane, aby można było raportować pomyślne dopasowanie podpisu zarówno wtedy, gdy są obliczane w czasie działania, jak i wtedy, gdy zdefiniowana jest jawna tożsamość podpisująca podczas korzystania z biblioteki testowej.

Wersja 1.0.0-alpha01

5 maja 2021 roku

Usługa androidx.security:security-app-authenticator:1.0.0-alpha01 została zwolniona. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.

Nowe funkcje

AppAuthenticator to nowa biblioteka, która ma na celu uproszczenie weryfikacji zaufania do aplikacji na podstawie tożsamości podpisywania. Wystarczy określić plik konfiguracji XML zawierający nazwy pakietów i tożsamości podpisywania zaufanych aplikacji, a biblioteka będzie weryfikować tożsamość podpisywania aplikacji w czasie działania.

Wersja 1.1.0

Wersja 1.1.0-alpha06

19 kwietnia 2023 r.

androidx.security:security-crypto:1.1.0-alpha06 i androidx.security:security-crypto-ktx:1.1.0-alpha06 zostały udostępnione. Wersja 1.1.0-alfa06 zawiera te zatwierdzenia.

Nowe funkcje

  • Zaktualizowano zależność Tink do wersji 1.8.0

Wersja 1.1.0-alpha05

22 lutego 2023 roku

androidx.security:security-crypto:1.1.0-alpha05 i androidx.security:security-crypto-ktx:1.1.0-alpha05 zostały udostępnione. Wersja 1.1.0-alfa05 zawiera te zatwierdzenia.

Poprawki błędów

Wersja 1.1.0-alfa04

9 listopada 2022 r.

androidx.security:security-crypto:1.1.0-alpha04 i androidx.security:security-crypto-ktx:1.1.0-alpha04 zostały udostępnione. Wersja 1.1.0-alfa04 zawiera te zatwierdzenia.

Nowe funkcje

  • Usunięto komunikat logu „Nie znaleziono zestawu kluczy; zostanie wygenerowany nowy” przy pierwszym uruchomieniu aplikacji. (B/185219606)
  • Uaktualniono zależność Tink do wersji 1.7.0.

Zmiany interfejsu API

  • Zmienia funkcję EncryptedFile#openFileInput(), by zgłosić żądanie FileNotFoundException, a nie ogólne IOException, gdy żądany plik nie istnieje. (I80e41, b/148804719)
  • Zaktualizowano „MasterKeys” wymaga Androida M, a nie każdej z jego metod. (I8b4b8)
  • Zmienia wszystkie metody pobierania preferencji w parametrze EncryptedSharedPreferences (np. #getString, #getInt), aby w rzadkich przypadkach nie można było dopasować typu wartości do jednej ze zdefiniowanych wersji wyliczeniowych, aby w wynikach wyszukiwania podawać metodę SecurityException. (b/241699427)

Poprawki błędów

  • Minimalna wersja pakietu SDK biblioteki security-crypto-ktx z zsynchronizowaną wersją kryptograficzną, obniżając ją do wersji 21 (b/193550375)
  • Usunięto błąd równoczesności podczas tworzenia wielu elementów EncryptedFile (b/136590547)

Treści tłumaczone przez użytkowników zewnętrznych

Security-Crypto-Ktx w wersji 1.1.0-alfa03

18 maja 2021 r.

Usługa androidx.security:security-crypto-ktx:1.1.0-alpha03 została zwolniona. Wersja 1.1.0-alfa03 zawiera te zatwierdzenia.

Zaktualizowano do: androidx.security:security-crypto:1.1.0-alpha03.

Wersja 1.1.0-alfa03

Grudzień 2, 2020

Usługa androidx.security:security-crypto:1.1.0-alpha03 została zwolniona. Wersja 1.1.0-alfa03 zawiera te zatwierdzenia.

Nowe funkcje

  • Zaktualizowano Tink do wersji stabilnej 1.5.0

Wersja 1.1.0-alfa02

5 sierpnia 2020 r.

androidx.security:security-crypto:1.1.0-alpha02 i androidx.security:security-crypto-ktx:1.1.0-alpha02 zostały udostępnione. Wersja 1.1.0-alfa02 zawiera te zatwierdzenia.

Nowe funkcje

  • Zaktualizowano Tink do wersji stabilnej 1.4.0

Poprawki błędów

  • Aktualizacja Tink powinna rozwiązać problemy z R8 i ProGuard z zacienioną zależnością Protobuf.
  • Aktualizacja Tink powinna płynnie obsługiwać błędy równoczesności AndroidKeyStore.

Treści tłumaczone przez użytkowników zewnętrznych

  • wyczyść mKeysChanged przy stosowaniu, poprawka EncryptedSharedPreferences (aosp/1323026)

Wersja 1.1.0-alpha01

10 czerwca 2020 r.

Usługa androidx.security:security-crypto:1.1.0-alpha01 została zwolniona. Wersja 1.1.0-alfa01 zawiera te zatwierdzenia.

Nowe funkcje

  • Obsługiwany jest teraz system Lollipop (poziom API 21 lub wyższy). Pamiętaj, że AndroidKeyStore nie jest używany w interfejsach API 21 i 22. (I7c12d, b/132325342)
  • Nowa klasa MasterKey udostępnia więcej opcji kluczy, a także wycofuje MasterKeys, aby umożliwić obsługę nowych funkcji i wersji Androida, które nie mają KeyGenParamSpec.

Security-Identity-Credential Version 1.0.0

Wersja 1.0.0-alpha03

1 września 2021 roku

Usługa androidx.security:security-identity-credential:1.0.0-alpha03 została zwolniona. Wersja 1.0.0-alfa03 zawiera te zatwierdzenia.

Nowe funkcje

  • Dodano obsługę sprzętowych funkcji poświadczeń tożsamości w Androidzie 12.

Wersja 1.0.0-alpha02

24 lutego 2021 r.

Usługa androidx.security:security-identity-credential:1.0.0-alpha02 została zwolniona. Wersja 1.0.0-alfa02 zawiera te zatwierdzenia.

Poprawki błędów

  • Zaktualizuj Identity Credential API, aby pasował do abonamentów na Androida 12 (Iff83e)

Wersja 1.0.0-alpha01

19 sierpnia 2020 r.

Usługa androidx.security:security-identity-credential:1.0.0-alpha01 została zwolniona. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.

Nowe funkcje

Ta wersja Jetpacka zawiera interfejs Identity Credential API w wersji Jetpack, która została dodana do Androida 11 oraz interfejsu API na poziomie 30. Jeśli urządzenie działa z Androidem 11 i obsługuje uwierzytelnianie tożsamości wspierane sprzętowo, ten pakiet Jetpack po prostu przekierowuje wywołania do interfejsu API platformy. W przeciwnym razie użyjemy implementacji obsługiwanej przez magazyn kluczy Androida. Chociaż implementacja oparta na magazynie kluczy Androida nie zapewnia takiego samego poziomu bezpieczeństwa i prywatności, jest w pełni wystarczający zarówno dla właścicieli, jak i wydawców, gdy wszystkie dane są podpisane przez wydawcę. Ta biblioteka wymaga interfejsu API na poziomie 24 lub nowszym.

Interfejsy Identity Credential API zapewniają interfejs do bezpiecznego magazynu dokumentów tożsamości użytkowników. Te interfejsy API są celowo ogólne i abstrakcyjne. W miarę możliwości specyfikacja formatów wiadomości i semantyki komunikacji z urządzeniami do weryfikacji danych uwierzytelniających i urzędami wydającymi (IA) nie jest objęta tymi interfejsami API. Struktury danych, od których zależą interfejsy API, są zgodne ze strukturami danych, które zostaną wkrótce opublikowane w normie ISO/IEC IS 18013-5: Identyfikacja osobista – prawo jazdy zgodne z ISO – Część 5. Część 5. Standard aplikacji dotyczących mobilnego prawa jazdy (mDL).

Zmiany interfejsu API

  • Dodano pakiet Identity Credential Jetpack. (Icf90b)

Wersja 1.0.0

Wersja 1.0.0

21 kwietnia 2021 r.

Usługa androidx.security:security-crypto:1.0.0 została zwolniona. Wersja 1.0.0 zawiera te zatwierdzenia.

Główne funkcje 1.0.0

Przegląd funkcji

  • EncryptedFile udostępnia zaszyfrowane strumienie wejściowe i wyjściowe umożliwiające odczyt i zapis zaszyfrowanych danych w pliku.
  • EncryptedSharedPreferences udostępnia implementację SharedPreferences, które automatycznie szyfruje/odszyfrowuje wszystkie klucze i wartości.
  • Zapewnia proste generowanie kluczy za pomocą kluczy MasterKeys.
  • Bazuje na Tink 1.5.0 w celu zwiększenia stabilności.

Wersja 1.0.0-rc04

13 stycznia 2021 r.

Usługa androidx.security:security-crypto:1.0.0-rc04 została zwolniona. Wersja 1.0.0-rc04 zawiera te zatwierdzenia.

Poprawki błędów

  • Pakiet Tink został uaktualniony do wersji 1.5.0, aby zapewnić większą stabilność.

Wersja 1.0.0-rc03

5 sierpnia 2020 r.

Usługa androidx.security:security-crypto:1.0.0-rc03 została zwolniona. Wersja 1.0.0-rc03 zawiera te zatwierdzenia.

Nowe funkcje

  • Zaktualizowano Tink do wersji stabilnej 1.4.0

Poprawki błędów

  • Aktualizacja Tink powinna rozwiązać problemy z R8 i ProGuard z zacienioną zależnością Protobuf.
  • Aktualizacja Tink powinna płynnie obsługiwać błędy równoczesności AndroidKeyStore.

Treści tłumaczone przez użytkowników zewnętrznych

  • wyczyść mKeysChanged przy stosowaniu, poprawka EncryptedSharedPreferences (aosp/1323026)

Wersja 1.0.0-rc02

20 maja 2020 r.

Usługa androidx.security:security-crypto:1.0.0-rc02 została zwolniona. Wersja 1.0.0-rc02 zawiera te zatwierdzenia.

Poprawki błędów

  • Zaktualizowano do Tink w wersji 1.4.0-rc2, która cieniuje proto buf lite dep. Rozwiązuje to powszechny problem kolidowania z innymi pakietami SDK na Androida. (I8a831)
  • Naprawiono apply() w: EncryptedSharedPreferences. (I29069, b/154366606)

Wersja 1.0.0-rc01

15 kwietnia 2020 roku

Usługa androidx.security:security-crypto:1.0.0-rc01 została zwolniona. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.

Poprawki błędów

  • Dodaliśmy elementy sprawdzające, czy jeśli tag KeyGenParamSpec jest przekazywany do funkcji MasterKeys.getOrCreate, oznacza to, że jeśli getUserAuthenticationRequired zwróci wartość true, getUserAuthenticationValidityDurationSeconds zwróci wartość >0. (I911f5) (b/152644939)

Wersja 1.0.0-beta01

18 marca 2020 r.

Usługa androidx.security:security-crypto:1.0.0-beta01 została udostępniona bez zmian od 1.0.0-alpha02. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.

Wersja 1.0.0-alpha02

23 maja 2019 r.

Usługa androidx.security:security-crypto:1.0.0-alpha02 została zwolniona. Zatwierdzenia zawarte w tej wersji znajdziesz w tym logu zatwierdzenia.

Poprawki błędów.

  • Rozwiązaliśmy problem z pobieraniem par klucz-wartość powiązanych ze wspólnymi ustawieniami z: getAll()
  • Zablokowane użycie ograniczonych kluczy preferencji.
  • Niewielkie aktualizacje Javadoc.

Wersja 1.0.0-alpha01

7 maja 2019 r.

Usługa androidx.security:security-crypto:1.0.0-alpha01 została zwolniona. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.

Najważniejsze informacje o nowych funkcjach

  • EncryptedFile udostępnia zaszyfrowane strumienie wejściowe i wyjściowe umożliwiające odczyt i zapis zaszyfrowanych danych w pliku.
  • EncryptedSharedPreferences udostępnia implementację SharedPreferences, która automatycznie szyfruje/odszyfrowuje wszystkie klucze i wartości.
  • Zapewnia proste generowanie kluczy za pomocą kluczy MasterKeys.