الأمان
يسرد هذا الجدول جميع العناصر في مجموعة androidx.security
.
العناصر | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار التجريبي الأول |
---|---|---|---|---|
security-crypto | 1.0.0 | - | - | 1.1.0-alpha06 |
أداة مصادقة-تطبيق الأمان | - | - | 1.0.0-beta01 | - |
security-identity-credential | - | - | - | 1.0.0-alpha03 |
الإعلان عن التبعيات
لإضافة تبعية على الأمان، يجب إضافة مستودع Google Maven إلى مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.
أضِف التبعيات للعناصر التي تحتاج إليها في ملف build.gradle
ل
تطبيقك أو وحدتك:
لمزيد من المعلومات حول العناصر الاعتمادية، يُرجى الاطّلاع على إضافة تبعيات الإصدار.
ملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا واجهت مشاكل جديدة أو كان لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مكتبة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية عن طريق النقر على زر النجمة.
راجِع مستندات أداة تتبُّع المشاكل للحصول على مزيد من المعلومات.
الإصدار 1.0 من Security-State
الإصدار 1.0.0-alpha04
7 آب (أغسطس) 2024
تم إصدار androidx.security:security-state:1.0.0-alpha04
. يحتوي الإصدار 1.0.0-alpha04 على عمليات التنفيذ هذه.
ملاحظة
- تعديل
compileSdk
إلى 35 5dc41be
تغييرات واجهة برمجة التطبيقات
- تغيير جذري: تم استبدال قائمة العناصر المحددة مسبقًا للمكوّنات بثوابت سلاسل من أجل قابلية التوسيع. (Ia3283)
الإصدار 1.0.0-alpha03
10 يوليو 2024
تم إصدار androidx.security:security-state:1.0.0-alpha03
. يحتوي الإصدار 1.0.0-alpha03 على عمليات الربط هذه.
إصلاح الأخطاء
- إصلاح نمط ASB-A- لأخطاء نشرة أمان Android وتحليل JSON للمكونات الإضافية و
Webview
استرجاع الحِزم (Ide86a)
الإصدار 1.0.0-alpha02
26 يونيو 2024
تم إصدار androidx.security:security-state:1.0.0-alpha02
. يحتوي الإصدار 1.0.0-alpha02 على عمليات الربط هذه.
إصلاح الأخطاء
- تم إصلاح منطق الحصول على إصدار النواة. (I5602a)
الإصدار 1.0.0-alpha01
12 يونيو 2024
تم إصدار androidx.security:security-state:1.0.0-alpha01
. يتضمّن الإصدار 1.0.0-alpha01 عمليات الربط هذه.
الميزات الجديدة
- "حالة الأمان" هي مكتبة جديدة يمكن للمطوّرين استخدامها للحصول على بيانات قابلة للتنفيذ حول إصدارات مكوّنات النظام القابلة للتحديث وتحديثات الأمان والإصلاحات المطبَّقة.
Security-App-Authenticator-Testing Version 1.0
الإصدار 1.0.0-beta01
6 مارس 2024
تم طرح androidx.security:security-app-authenticator:1.0.0-beta01
وandroidx.security:security-app-authenticator-testing:1.0.0-beta01
. يتضمّن الإصدار 1.0.0-beta01 عمليات الربط هذه.
الإصدار 1.0.0-alpha02
13 كانون الأول (ديسمبر) 2023
تم إصدار androidx.security:security-app-authenticator-testing:1.0.0-alpha02
. يحتوي الإصدار 1.0.0-alpha02 على هذه المراجعات.
إصلاح الأخطاء
- اختبار معدَّل لسلوك واجهة برمجة التطبيقات الجديد الذي لم يعُد يفترض أنّه
Binder#getCalling[Uid|Pid]
في حال عدم تقديمه إلى واجهات برمجة التطبيقات[check|enforce]CallingAppIdentity
(I1851b)
الإصدار 1.0.0-alpha01
2 حزيران (يونيو) 2021
تم إصدار androidx.security:security-app-authenticator-testing:1.0.0-alpha01
. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.
الميزات الجديدة
توفّر مكتبة الاختبار هذه أداة إنشاء يمكن استخدامها لضبط عنصر AppAuthenticator قابل للحقن لاستيفاء متطلبات الاختبار. تتيح هذه المكتبة عدة طرق لضبط AppAuthenticator:
- يمكن تحديد سياسة اختبار عامة تُبلغ عن تطابق توقيع جميع الحِزم المعرَّفة في الإعدادات.
- يمكن تحديد حِزم فردية لعرض مطابقة توقيع مع جميع الحِزم الأخرى التي تُبلغ عن عدم تطابق.
- يمكن ضبط هويات التوقيع الصريحة لكل حزمة، ولن يُبلغ AppAuthenticator الناتج عن ذلك إلا بمطابقة التوقيع إذا كانت الهوية المقدَّمة تتطابق مع البيان في ملف الإعدادات.
- يمكن أيضًا التعامل مع الحِزم على أنّها غير مثبّتة أو أنّها تحتوي على معرّف مستخدم صريح.
الإصدار 1.0.0 من Security-App-Authenticator
الإصدار 1.0.0-alpha03
13 كانون الأول (ديسمبر) 2023
تم طرح androidx.security:security-app-authenticator:1.0.0-alpha03
. يحتوي الإصدار 1.0.0-alpha03 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة دعم لحالات الاستخدام التي لا يتوفّر فيها المعرّف الفريد (UID) أو معرّف PID للحزمة المطلوب التحقّق منها، وأصبحت واجهات برمجة التطبيقات متوافقة الآن مع حالات مثل
startActivityForResult
والأنشطة أو المستلِمات التي تتم فيها مشاركة هوية تطبيق الاتصال عبر[Activity|Broadcast]Options#setShareIdentityEnabled
. - تم تعديل سلوك
[check|enforce]CallingAppIdentity(String, String)
ليشمل حالات الاستخدام الجديدة هذه، ولن يتم استخدامBinder#getCalling[Uid|Pid]
تلقائيًا بعد الآن لهذه الطرق، ولكن بدلاً من ذلك ستتخطّى عملية التحقق من المعرّف الفريد لحزمة الاتصال في حال عدم توفيره بشكل صريح. (I1851b)
الإصدار 1.0.0-alpha02
2 حزيران (يونيو) 2021
تم إصدار androidx.security:security-app-authenticator:1.0.0-alpha02
. يحتوي الإصدار 1.0.0-alpha02 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- استعدادًا لإتاحة علامة حماية إذن
knownSigner
الجديدة التي تم تقديمها في Android 12، لم يعُد بالإمكان تحديد سمة digestAlgorithm في الإعدادات، وبدلاً من ذلك، يجب احتساب جميع ملخّصات الشهادات باستخدام SHA-256.
إصلاح الأخطاء
- تتم الآن تسوية جميع ملخصات الشهادات المقدَّمة في الإعدادات لضمان إمكانية الإبلاغ عن تطابق توقيع ناجح عند حساب الملخّص في وقت التشغيل وكذلك عند تحديد هوية توقيع صريحة عند استخدام مكتبة الاختبار.
الإصدار 1.0.0-alpha01
5 أيار (مايو) 2021
تم إصدار androidx.security:security-app-authenticator:1.0.0-alpha01
. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.
الميزات الجديدة
AppAuthenticator هي مكتبة جديدة تهدف إلى تبسيط عملية التحقّق من ثقة التطبيق استنادًا إلى هوية التوقيع. ما على التطبيق سوى تحديد ملف إعدادات XML يحتوي على أسماء الحِزم وهويات التوقيع للتطبيقات الموثوق بها، وستتولى المكتبة التحقّق من هوية التوقيع للتطبيقات أثناء التشغيل.
الإصدار 1.1.0
الإصدار 1.1.0-alpha06
19 نيسان (أبريل) 2023
تم إصدار androidx.security:security-crypto:1.1.0-alpha06
وandroidx.security:security-crypto-ktx:1.1.0-alpha06
. يحتوي الإصدار 1.1.0-alpha06 على هذه المراجعات.
الميزات الجديدة
- تم تعديل الإصدار المُستخدَم من مكتبة Tink إلى 1.8.0
الإصدار 1.1.0-alpha05
22 شباط (فبراير) 2023
تم إصدار androidx.security:security-crypto:1.1.0-alpha05
وandroidx.security:security-crypto-ktx:1.1.0-alpha05
. يحتوي الإصدار 1.1.0-alpha05 على هذه المراجعات.
إصلاح الأخطاء
- تم إصلاح خطأ في
MasterKeys.getOrCreate
(I3391e، b/268572037)
الإصدار 1.1.0-alpha04
9 تشرين الثاني (نوفمبر) 2022
تم طرح androidx.security:security-crypto:1.1.0-alpha04
وandroidx.security:security-crypto-ktx:1.1.0-alpha04
. يحتوي الإصدار 1.1.0-alpha04 على هذه المراجعات.
الميزات الجديدة
- تمت إزالة رسالة السجلّ "تعذّر العثور على مجموعة المفاتيح، سيتم إنشاء مجموعة جديدة" عند تشغيل التطبيق لأول مرة. (b/185219606)
- تمّت ترقية تبعية Tink إلى الإصدار 1.7.0.
تغييرات واجهة برمجة التطبيقات
- تغيير
EncryptedFile#openFileInput()
لعرضFileNotFoundException
بدلاً منIOException
العام عندما لا يكون الملف المطلوب متوفّرًا (I80e41، b/148804719) - تم تعديل فئة MasterKeys لتطلب استخدام Android M بدلاً من كل طريقة من طرقها. (I8b4b8)
- تغيير جميع أدوات الحصول على الإعدادات المفضّلة في
EncryptedSharedPreferences
(مثل#getString
و#getInt
) لطرحSecurityException
في حالات نادرة لا يمكن فيها مطابقة نوع القيمة مع أحد الصيغ المحدّدة للعدد الإجمالي. (b/241699427)
إصلاح الأخطاء
- مواءمة الحد الأدنى لإصدار حزمة تطوير البرامج (SDK) لـ security-crypto-ktx مع security-crypto من خلال خفضه إلى الإصدار 21 (b/193550375)
- تم إصلاح خطأ في التزامن عند إنشاء
EncryptedFile
متعددة (b/136590547)
المساهمة الخارجية
- تلقّينا حلّاً لمشكلة
EncryptedSharedPreferences.Editor#remove
من chr.ibbotson@gmail.com (b/224994760 وb/134197835 وf44d44d).
Security-Crypto-Ktx الإصدار 1.1.0-alpha03
18 أيار (مايو) 2021
تم طرح androidx.security:security-crypto-ktx:1.1.0-alpha03
. يحتوي الإصدار 1.1.0-alpha03 على هذه عمليات التنفيذ.
تم تعديلها لتتطابق مع androidx.security:security-crypto:1.1.0-alpha03
.
الإصدار 1.1.0-alpha03
2 كانون الأول (ديسمبر) 2020
تم إصدار androidx.security:security-crypto:1.1.0-alpha03
. يحتوي الإصدار 1.1.0-alpha03 على هذه المراجعات.
الميزات الجديدة
- تم تعديل Tink إلى الإصدار الثابت
1.5.0
الإصدار 1.1.0-alpha02
5 آب (أغسطس) 2020
تم طرح androidx.security:security-crypto:1.1.0-alpha02
وandroidx.security:security-crypto-ktx:1.1.0-alpha02
. يحتوي الإصدار 1.1.0-alpha02 على عمليات التنفيذ هذه.
الميزات الجديدة
- تم تحديث Tink إلى الإصدار الثابت
1.4.0
.
إصلاح الأخطاء
- من المفترض أن يؤدي تحديث Tink إلى حلّ مشاكل R8 وProguard المتعلّقة بتبعية Protobuf المظلّلة.
- من المفترض أن يعالج تحديث Tink أخطاء عدم التزامن في AndroidKeyStore بشكل سلس.
المساهمة الخارجية
- محو
mKeysChanged
عند التطبيق، إصلاح EncryptedSharedPreferences (aosp/1323026)
الإصدار 1.1.0-alpha01
10 حزيران (يونيو) 2020
تم طرح androidx.security:security-crypto:1.1.0-alpha01
. يحتوي الإصدار 1.1.0-alpha01 على هذه عمليات التنفيذ.
الميزات الجديدة
- أصبح نظام التشغيل Lollipop (المستوى 21 من واجهة برمجة التطبيقات والإصدارات الأحدث) متوافقًا الآن. يُرجى العلم أنّه لا يتم استخدام AndroidKeyStore مع واجهتَي برمجة التطبيقات 21 و22. (I7c12d، b/132325342)
- توفّر فئة MasterKey الجديدة المزيد من الخيارات للمفاتيح، كما يتم إيقاف MasterKeys نهائيًا لإتاحة الميزات والإصدارات الجديدة من Android التي لا تتضمّن KeyGenParamSpec.
Security-Identity-Credential Version 1.0.0
الإصدار 1.0.0-alpha03
1 أيلول (سبتمبر) 2021
تم إصدار androidx.security:security-identity-credential:1.0.0-alpha03
. يحتوي الإصدار 1.0.0-alpha03 على هذه عمليات التنفيذ.
الميزات الجديدة
- تم توفير ميزات "بيانات اعتماد الهوية" المستندة إلى الأجهزة في نظام Android 12.
الإصدار 1.0.0-alpha02
24 شباط (فبراير) 2021
تم إصدار androidx.security:security-identity-credential:1.0.0-alpha02
. يحتوي الإصدار 1.0.0-alpha02 على عمليات التنفيذ هذه.
إصلاح الأخطاء
- تعديل Identity Credential API لتتوافق مع خطط Android 12 (Iff83e)
الإصدار 1.0.0-alpha01
19 آب (أغسطس) 2020
تم إصدار androidx.security:security-identity-credential:1.0.0-alpha01
. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.
الميزات الجديدة
يقدّم إصدار Jetpack هذا إصدارًا من Jetpack لواجهات برمجة التطبيقات Identity Credential API التي تمت إضافتها إلى Android 11 والمستوى 30 لواجهة برمجة التطبيقات. إذا كان الجهاز يعمل بنظام التشغيل Android 11 وكان متوافقًا مع "بيانات اعتماد الهوية" المستنِدة إلى الأجهزة، سيعيد تطبيق Jetpack توجيه الطلبات إلى واجهة برمجة تطبيقات النظام الأساسي. وبخلاف ذلك، سيتم استخدام عملية تنفيذ مستندة إلى "متجر مفاتيح Android". على الرغم من أنّ التنفيذ المستند إلى "متجر مفاتيح Android" لا يقدّم المستوى نفسه من الأمان والخصوصية، إلا أنّه مناسب تمامًا لكل من حاملي الشهادات وجهات الإصدار في الحالات التي تكون فيها جميع البيانات موقَّعة من جهة الإصدار. تتطلّب هذه المكتبة المستوى 24 من واجهة برمجة التطبيقات أو إصدارًا أحدث.
توفّر واجهات برمجة تطبيقات Identity Credential واجهات لمساحة تخزين آمنة لمستندات هوية المستخدمين. وهذه الواجهات برمجة التطبيقات عامة ومجرّدة إلى حدّ كبير عن قصد. لا تتناول واجهات برمجة التطبيقات هذه، إلى أقصى حدّ ممكن، مواصفات تنسيقات الرسائل ودلالات التواصل مع أجهزة إثبات صحة بيانات الاعتماد والهيئات المُصدِرة (IA). إنّ هياكل البيانات التي تعتمد عليها واجهات برمجة التطبيقات متوافقة مع هياكل البيانات الواردة في معيار ISO/IEC IS 18013-5 Personal identification — ISO-compliant driving licence — Part 5: Mobile driving licence (mDL) application standard الذي سيتم إصداره قريبًا.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة حزمة Jetpack لبيانات الاعتماد الخاصة بالهوية. (Icf90b)
الإصدار 1.0.0
الإصدار 1.0.0
21 نيسان (أبريل) 2021
تم طرح androidx.security:security-crypto:1.0.0
. يحتوي الإصدار 1.0.0 على عمليات التنفيذ هذه.
الميزات الرئيسية في الإصدار 1.0.0
أبرز الميزات
EncryptedFile
، يوفّر مصادر إدخال وإخراج مشفّرة لقراءة البيانات المشفّرة أو كتابتها في ملف.EncryptedSharedPreferences
، يوفّر تنفيذًا لواجهة SharedPreferences لتشفير/فك تشفير جميع المفاتيح والقيم تلقائيًا.- توفّر إنشاء مفاتيح بسيط عبر MasterKeys.
- يعتمد على Tink 1.5.0 لتحقيق مزيد من الثبات.
الإصدار 1.0.0-rc04
13 كانون الثاني (يناير) 2021
تم إصدار androidx.security:security-crypto:1.0.0-rc04
. يحتوي الإصدار 1.0.0-rc04 على هذه المراجعات.
إصلاح الأخطاء
- تمت ترقية Tink إلى 1.5.0 لزيادة الثبات.
الإصدار 1.0.0-rc03
5 آب (أغسطس) 2020
تم إصدار androidx.security:security-crypto:1.0.0-rc03
. يحتوي الإصدار 1.0.0-rc03 على هذه المراجعات.
الميزات الجديدة
- تم تحديث Tink إلى الإصدار الثابت
1.4.0
.
إصلاح الأخطاء
- من المفترض أن يؤدي تحديث Tink إلى حلّ مشاكل R8 وProguard المتعلّقة بتبعية Protobuf المظلّلة.
- من المفترض أن يعالج تحديث Tink أخطاء عدم التزامن في AndroidKeyStore بشكل سلس.
المساهمة الخارجية
- محو
mKeysChanged
عند التطبيق، إصلاح EncryptedSharedPreferences (aosp/1323026)
الإصدار 1.0.0-rc02
20 أيار (مايو) 2020
تم إصدار androidx.security:security-crypto:1.0.0-rc02
. يحتوي الإصدار 1.0.0-rc02 على هذه المراجعات.
إصلاح الأخطاء
- تم التحديث إلى الإصدار 1.4.0-rc2 من Tink، والذي يحلّ مشكلة تعارض حزمة تطوير البرامج (SDK) لنظام التشغيل Android الأخرى التي تم الإبلاغ عنها على نطاق واسع. (I8a831)
- تم حلّ المشكلة
apply()
فيEncryptedSharedPreferences
. (I29069، b/154366606)
الإصدار 1.0.0-rc01
نيسان (أبريل) 2020
تم إصدار androidx.security:security-crypto:1.0.0-rc01
. يحتوي الإصدار 1.0.0-rc01 على هذه عمليات التنفيذ.
إصلاح الأخطاء
- تمّت إضافة عمليات تحقّق للتأكّد من أنّه في حال تمّ تمرير
KeyGenParamSpec
إلىMasterKeys.getOrCreate
، إذا كانتgetUserAuthenticationRequired
تعرِضtrue
، تعرِضgetUserAuthenticationValidityDurationSeconds
قيمة أكبر من 0. (I911f5) (b/152644939)
الإصدار 1.0.0-beta01
18 آذار (مارس) 2020
تم إصدار androidx.security:security-crypto:1.0.0-beta01
بدون أي تغييرات منذ 1.0.0-alpha02
. يحتوي الإصدار 1.0.0-beta01 على عمليات التنفيذ هذه.
الإصدار 1.0.0-alpha02
23 أيار (مايو) 2019
تم طرح androidx.security:security-crypto:1.0.0-alpha02
.
يمكن العثور على عمليات الربط المضمّنة في هذا الإصدار في سجلّ عمليات الربط هذا.
إصلاح الأخطاء
- تم إصلاح مشكلة استرجاع المفاتيح/القيم المرتبطة بالإعدادات المفضّلة المشتركة من
getAll()
. - تم حظر استخدام مفاتيح الإعدادات المفضّلة المحظورة.
- تعديلات طفيفة على Javadoc
الإصدار 1.0.0-alpha01
7 أيار (مايو) 2019
تم إصدار androidx.security:security-crypto:1.0.0-alpha01
. يمكن العثور على عمليات الربط
المضمّنة في هذا الإصدار هنا.
أبرز الميزات الجديدة
- توفّر السياسة
EncryptedFile
مصادر إدخال وإخراج مشفّرة لقراءة البيانات المشفَّرة أو كتابتها في "ملف". EncryptedSharedPreferences
، يوفّر تنفيذًاSharedPreferences
الذي يشفّر/يفكّشفير جميع المفاتيح والقيم تلقائيًا.- توفّر إنشاء مفاتيح بسيط عبر MasterKeys.