Keamanan
Tabel ini mencantumkan semua artefak dalam grup androidx.security
.
Artefak | Rilis Stabil | Kandidat Rilis | Rilis Beta | Rilis Alfa |
---|---|---|---|---|
security-crypto | 1.0.0 | - | - | 1.1.0-alpha05 |
security-app-authenticator | - | - | - | 1.0.0-alpha02 |
security-identity-credential | - | - | - | 1.0.0-alpha03 |
Mendeklarasikan dependensi
Untuk menambahkan dependensi pada Security, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.
Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle
bagi aplikasi atau modul Anda:
Groovy
dependencies { implementation "androidx.security:security-crypto:1.0.0" // For Identity Credential APIs implementation "androidx.security:security-identity-credential:1.0.0-alpha03" // For App Authentication APIs implementation "androidx.security:security-app-authenticator:1.0.0-alpha02" // For App Authentication API testing androidTestImplementation "androidx.security:security-app-authenticator:1.0.0-alpha01" }
Kotlin
dependencies { implementation("androidx.security:security-crypto:1.0.0") // For Identity Credential APIs implementation("androidx.security:security-identity-credential:1.0.0-alpha03") // For App Authentication APIs implementation("androidx.security:security-app-authenticator:1.0.0-alpha02") // For App Authentication API testing androidTestImplementation("androidx.security:security-app-authenticator:1.0.0-alpha01") }
Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.
Masukan
Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.
Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.
Security-App-Authenticator Versi 1.0.0
Versi 1.0.0-alpha02
2 Juni 2021
androidx.security:security-app-authenticator:1.0.0-alpha02
dirilis. Versi 1.0.0-alpha02 berisi commit ini.
Perubahan API
- Sebagai persiapan untuk mendukung flag perlindungan izin
knownSigner
baru yang diperkenalkan di Android 12, atribut digestAlgorithm tidak dapat ditentukan lagi dalam konfigurasi; sebagai gantinya, semua ringkasan sertifikat harus dikomputasi menggunakan SHA-256.
Perbaikan Bug
- Semua ringkasan sertifikat yang disediakan dalam konfigurasi sekarang dinormalkan untuk memastikan kecocokan tanda tangan yang berhasil dapat dilaporkan baik saat ringkasan dikomputasi pada runtime maupun saat identitas penandatanganan eksplisit ditentukan jika menggunakan library pengujian.
Security-App-Authenticator-Testing Versi 1.0.0-alpha01
2 Juni 2021
androidx.security:security-app-authenticator-testing:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Fitur Baru
Library pengujian ini menyediakan builder yang dapat digunakan untuk mengonfigurasi AppAuthenticator yang dapat dimasukkan guna memenuhi persyaratan pengujian. Library ini mendukung beberapa metode untuk mengonfigurasi AppAuthenticator:
- Kebijakan pengujian generik dapat ditentukan agar melaporkan kecocokan tanda tangan untuk semua paket yang dideklarasikan dalam konfigurasi.
- Paket individual dapat ditentukan untuk menampilkan kecocokan tanda tangan dengan semua paket lainnya yang melaporkan tidak ada kecocokan.
- Identitas penandatanganan eksplisit dapat disetel untuk setiap paket; AppAuthenticator yang dihasilkan hanya akan melaporkan tanda tangan yang cocok jika identitas yang diberikan cocok dengan deklarasi dalam file konfigurasi.
- Paket juga dapat dianggap sebagai tidak diinstal atau memiliki uid eksplisit.
Versi 1.0.0-alpha01
5 Mei 2021
androidx.security:security-app-authenticator:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Fitur Baru
AppAuthenticator adalah library baru yang bertujuan untuk menyederhanakan verifikasi kepercayaan aplikasi berdasarkan identitas penandatanganan. Aplikasi hanya perlu menetapkan file konfigurasi XML yang berisi nama paket dan identitas penandatanganan aplikasi tepercaya, lalu library akan menangani verifikasi identitas penandatanganan aplikasi pada runtime.
Versi 1.1.0
Versi 1.1.0-alpha05
22 Februari 2023
androidx.security:security-crypto:1.1.0-alpha05
dan androidx.security:security-crypto-ktx:1.1.0-alpha05
dirilis. Versi 1.1.0-alpha05 berisi commit ini.
Perbaikan Bug
- Memperbaiki kondisi race dalam
MasterKeys.getOrCreate
(I3391e, b/268572037)
Versi 1.1.0-alpha04
9 November 2022
androidx.security:security-crypto:1.1.0-alpha04
dan androidx.security:security-crypto-ktx:1.1.0-alpha04
dirilis. Versi 1.1.0-alpha04 berisi commit ini.
Fitur Baru
- Menghapus pesan log “keyset not found, will generate a new” saat peluncuran aplikasi pertama. (b/185219606)
- Mengupgrade dependensi Tink ke versi 1.7.0.
Perubahan API
- Mengubah
EncryptedFile#openFileInput()
untuk menampilkanFileNotFoundException
, bukanIOException
umum jika file yang diminta tidak ada. (I80e41, b/148804719) - Mengupdate class 'MasterKeys' untuk mewajibkan Android M, bukan setiap metodenya. (I8b4b8)
- Mengubah semua pengambil preferensi pada
EncryptedSharedPreferences
(misalnya#getString
,#getInt
) untuk menampilkanSecurityException
dalam situasi yang jarang terjadi ketika jenis nilai tidak dapat dicocokkan dengan salah satu varian enum yang ditentukan. (b/241699427)
Perbaikan Bug
- Menyinkronkan versi SDK minimum library security-crypto-ktx dengan security-crypto dengan menurunkannya ke v21 (b/193550375)
- Memperbaiki bug serentak saat membuat beberapa
EncryptedFile
(b/136590547)
Kontribusi Eksternal
- Menerima perbaikan untuk
EncryptedSharedPreferences.Editor#remove
dari chr.ibbotson@gmail.com (b/224994760, b/134197835, f44d44d)
Security-Crypto-Ktx Versi 1.1.0-alpha03
18 Mei 2021
androidx.security:security-crypto-ktx:1.1.0-alpha03
dirilis. Versi 1.1.0-alpha03 berisi commit berikut ini.
Diupdate agar sesuai dengan androidx.security:security-crypto:1.1.0-alpha03
.
Versi 1.1.0-alpha03
2 Desember 2020
androidx.security:security-crypto:1.1.0-alpha03
dirilis. Versi 1.1.0-alpha03 berisi commit ini.
Fitur Baru
- Mengupdate Tink ke rilis stabil
1.5.0
Versi 1.1.0-alpha02
5 Agustus 2020
androidx.security:security-crypto:1.1.0-alpha02
dan androidx.security:security-crypto-ktx:1.1.0-alpha02
dirilis. Versi 1.1.0-alpha02 berisi commit ini.
Fitur Baru
- Mengupdate Tink ke rilis stabil
1.4.0
Perbaikan Bug
- Update Tink harus memperbaiki masalah R8 dan Proguard dengan dependensi Protobuf yang dilindungi.
- Update Tink harus menangani kegagalan serentak AndroidKeyStore dengan lancar.
Kontribusi Eksternal
- Menghapus
mKeysChanged
saat diterapkan, perbaikan untuk EncryptedSharedPreferences (aosp/1323026)
Versi 1.1.0-alpha01
10 Juni 2020
androidx.security:security-crypto:1.1.0-alpha01
dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Fitur Baru
- Lollipop (API Level 21+) kini telah didukung. Harap diperhatikan bahwa AndroidKeyStore tidak digunakan untuk API 21 dan 22. (I7c12d, b/132325342)
- Class MasterKey baru menyediakan lebih banyak opsi untuk kunci, serta penghentian MasterKey untuk mendukung fitur dan versi baru Android yang tidak memiliki KeyGenParamSpec.
Security-Identity-Credential Versi 1.0.0
Versi 1.0.0-alpha03
1 September 2021
androidx.security:security-identity-credential:1.0.0-alpha03
dirilis. Versi 1.0.0-alpha03 berisi commit ini.
Fitur Baru
- Menambahkan dukungan untuk fitur Identity Credential yang didukung hardware di Android 12.
Versi 1.0.0-alpha02
24 Februari 2021
androidx.security:security-identity-credential:1.0.0-alpha02
dirilis. Versi 1.0.0-alpha02 berisi commit ini.
Perbaikan Bug
- Memperbarui Identity Credential API agar cocok dengan paket Android 12 (Iff83e)
Versi 1.0.0-alpha01
19 Agustus 2020
androidx.security:security-identity-credential:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Fitur Baru
Rilis Jetpack ini menampilkan versi Jetpack dari Identity Credential API yang ditambahkan ke Android 11 dan API level 30. Jika berjalan di Android 11 dan perangkat memiliki dukungan Identity Credential yang didukung hardware, Jetpack ini hanya meneruskan panggilan ke API platform. Jika tidak, implementasi yang didukung Android Keystore akan digunakan. Meskipun implementasi yang didukung Android Keystore tidak memberikan tingkat keamanan dan privasi yang sama, implementasi tersebut sangat memadai bagi pemegang dan penerbit jika semua data ditandatangani oleh penerbit. Library ini memerlukan API level 24 atau yang lebih baru.
Identity Credential API menyediakan antarmuka ke penyimpanan aman untuk dokumen identitas pengguna. API ini sengaja dibuat cukup umum dan abstrak. Sejauh ini, spesifikasi format pesan dan semantik komunikasi dengan perangkat verifikasi kredensial dan Otoritas Penerbitan (IA) berada di luar cakupan API ini. API bergantung pada struktur data yang kompatibel dengan struktur data identifikasi Pribadi ISO/IEC IS 18013-5 yang akan segera dirilis. Izin mengemudi sesuai dengan ISO ini, di Bagian 5: Standar aplikasi izin mengemudi seluler (mobile driving licence/mDL).
Perubahan API
- Menambahkan Jetpack Identity Credential. (Icf90b)
Versi 1.0.0
Versi 1.0.0
21 April 2021
androidx.security:security-crypto:1.0.0
dirilis. Versi 1.0.0 berisi commit ini.
Fitur utama 1.0.0
Sorotan fitur
EncryptedFile
, menyediakan aliran input dan output terenkripsi untuk membaca/menulis data terenkripsi ke File.EncryptedSharedPreferences
, menyediakan implementasi SharedPreferences yang otomatis mengenkripsi/mendekripsi semua kunci dan nilai.- Menyediakan pembuatan kunci sederhana melalui MasterKey.
- Mengandalkan Tink 1.5.0 untuk meningkatkan stabilitas.
Versi 1.0.0-rc04
13 Januari 2021
androidx.security:security-crypto:1.0.0-rc04
dirilis. Versi 1.0.0-rc04 berisi commit ini.
Perbaikan Bug
- Mengupgrade Tink ke 1.5.0 untuk meningkatkan stabilitas.
Versi 1.0.0-rc03
5 Agustus 2020
androidx.security:security-crypto:1.0.0-rc03
dirilis. Versi 1.0.0-rc03 berisi commit berikut ini.
Fitur Baru
- Mengupdate Tink ke rilis stabil
1.4.0
Perbaikan Bug
- Update Tink harus memperbaiki masalah R8 dan Proguard dengan dependensi Protobuf yang dilindungi.
- Update Tink harus menangani kegagalan serentak AndroidKeyStore dengan lancar.
Kontribusi Eksternal
- Menghapus
mKeysChanged
saat diterapkan, perbaikan untuk EncryptedSharedPreferences (aosp/1323026)
Versi 1.0.0-rc02
20 Mei 2020
androidx.security:security-crypto:1.0.0-rc02
dirilis. Versi 1.0.0-rc02 berisi commit ini.
Perbaikan Bug
- Mengupdate Tink versi 1.4.0-rc2, yang mengubah dependensi proto buf lite. Ini mengatasi masalah bentrokan dengan Android SDK lain yang banyak dilaporkan. (I8a831)
- Memperbaiki
apply()
diEncryptedSharedPreferences
. (I29069, b/154366606)
Versi 1.0.0-rc01
15 April 2020
androidx.security:security-crypto:1.0.0-rc01
dirilis. Versi 1.0.0-rc01 berisi commit berikut ini.
Perbaikan Bug
- Menambahkan pemeriksaan guna memastikan jika
KeyGenParamSpec
diteruskan keMasterKeys.getOrCreate
, jikagetUserAuthenticationRequired
menampilkantrue
sehinggagetUserAuthenticationValidityDurationSeconds
menampilkan nilai >0. (I911f5) (b/152644939)
Versi 1.0.0-beta01
18 Maret 2020
androidx.security:security-crypto:1.0.0-beta01
dirilis tanpa perubahan sejak 1.0.0-alpha02
. Versi 1.0.0-beta01 berisi commit ini.
Versi 1.0.0-alpha02
23 Mei 2019
androidx.security:security-crypto:1.0.0-alpha02
dirilis.
Commit yang disertakan dalam versi ini dapat dilihat dalam log commit ini.
Perbaikan bug
- Memperbaiki masalah saat mengambil kunci/nilai yang terkait dengan preferensi bersama dari
getAll()
. - Memblokir penggunaan kunci preferensi yang dibatasi.
- Pembaruan minor Javadoc.
Versi 1.0.0-alpha01
7 Mei 2019
androidx.security:security-crypto:1.0.0-alpha01
dirilis. Commit yang
disertakan dalam versi ini dapat dilihat di sini.
Sorotan fitur baru
EncryptedFile
, menyediakan aliran input dan output terenkripsi untuk membaca/menulis data terenkripsi ke File.EncryptedSharedPreferences
, menyediakan implementasiSharedPreferences
yang otomatis mengenkripsi/mendekripsi semua kunci dan nilai.- Menyediakan pembuatan kunci sederhana melalui MasterKey.