אבטחה
בטבלה הזו מפורטים כל פריטי המידע בקבוצה androidx.security
.
פריט מידע שנוצר בתהליך פיתוח (Artifact) | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
---|---|---|---|---|
security-crypto | 1.0.0 | 1.1.0-rc01 | - | - |
security-app-authenticator | - | 1.0.0-rc01 | - | - |
security-app-authenticator-testing | - | 1.0.0-rc01 | - | - |
security-identity-credential | - | - | - | 1.0.0-alpha03 |
הצהרה על יחסי תלות
כדי להוסיף תלות ב-Security, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.
מוסיפים את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle
של האפליקציה או המודול:
מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ב-Build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לשמוע מכם אם תגלו בעיות חדשות או אם יש לכם רעיונות לשיפור הספרייה הזו. לפני שיוצרים ספרייה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להוסיף את ההצבעה שלכם לבעיה קיימת, לוחצים על לחצן הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא כלי המעקב אחר בעיות.
גרסה 1.0.0 של Security-State
גרסה 1.0.0-beta01
26 בפברואר 2025
androidx.security:security-state:1.0.0-beta01
משוחרר. גרסה 1.0.0-beta01 מכילה את ההעברות האלה.
תיקוני באגים
- תוקנה הבעיה שגרמה לכך ש-
getPatchedCves()
לא החזיר תיקוני CVE עבורCOMPONENT_SYSTEM_MODULES
. (Ice5e2)
גרסה 1.0.0-alpha05
29 בינואר 2025
androidx.security:security-state:1.0.0-alpha05
משוחרר. גרסה 1.0.0-alpha05 מכילה את הקומטים האלה.
תכונות חדשות
- השמות של חבילות מודולי המערכת שמוגדרים כברירת מחדל נוספו למניפסט של הספרייה כדי לאפשר לאפליקציות לקוח לקבל את ה-SPL של המכשיר עבור מודולי המערכת. (Ic259c)
שינויים ב-API
- שינינו את השם של
SecurityStateManager
ל-SecurityStateManagerCompat
, הוספנו תיעוד נוסף למאפיינים ולפונקציות ציבוריות והפכנו אתgetComponentSecurityPatchLevel
ואתgetVulnerabilityReportUrl
לשיטות סטטיות. (I44a0c) - הפונקציונליות של Update Availability (השיטות
listAvailableUpdates()
ו-getAvailableSecurityPatchLevel()
) הוסרה מממשק ה-API בשלב הזה, ואנחנו מתכננים להחזיר אותה בעדכון עתידי של הספרייה. (Idbc5e) - הגישה ל-Vendor SPL מוגנת עכשיו על ידי דגל בזמן קומפילציה שמושבת כברירת מחדל עד לעדכון עתידי של הספרייה. (I45b58)
-
getGlobalSecurityState()
מחזירה עכשיו את מצב האבטחה הגלובלי משירות המערכת עבור SDK מגרסה 35 ואילך. (I7b9da)
תיקוני באגים
- תוקן קריסה שהתרחשה כשניסו לקבל את ה-SPL שפורסם עבור ליבת מערכת ההפעלה בגרסאות ישנות יותר של Android שבהן גרסאות LTS של ליבת מערכת ההפעלה שפורסמו לא זמינות. (I93dff)
גרסה 1.0.0-alpha04
7 באוגוסט 2024
androidx.security:security-state:1.0.0-alpha04
משוחרר. גרסה 1.0.0-alpha04 מכילה את הקומטים האלה.
הערה
- עדכון של
compileSdk
ל-35 5dc41be
שינויים ב-API
- שינוי שובר תאימות: סוג הנתונים enum של הרכיב הוחלף בקבועי מחרוזת לצורך הרחבה. (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.0
גרסה 1.0.0-rc01
20 במאי 2025
הגרסאות androidx.security:security-app-authenticator:1.0.0-rc01
ו-androidx.security:security-app-authenticator-testing:1.0.0-rc01
יוצאות לאור. גרסה 1.0.0-rc01 מכילה את הקומטים האלה.
גרסה 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 מכילה את הקומיטים האלה.
תיקוני באגים
- עדכנו את הבדיקה כדי להתאים להתנהגות החדשה של ה-API, שלא מניחה יותר
Binder#getCalling[Uid|Pid]
כשלא מספקים אותו לממשקי ה-API של[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 שנוצר ידווח על התאמה לחתימה רק אם הזהות שסופקה תואמת להצהרה בקובץ ההגדרה.
- אפשר גם להתייחס לחבילות כאל חבילות שלא הותקנו או כאל חבילות עם uid מפורש.
Security-App-Authenticator Version 1.0.0
גרסה 1.0.0-rc01
20 במאי 2025
הגרסאות androidx.security:security-app-authenticator:1.0.0-rc01
ו-androidx.security:security-app-authenticator-testing:1.0.0-rc01
יוצאות לאור. גרסה 1.0.0-rc01 מכילה את הקומטים האלה.
גרסה 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-alpha03
13 בדצמבר 2023
androidx.security:security-app-authenticator:1.0.0-alpha03
משוחרר. גרסה 1.0.0-alpha03 מכילה את הקומיטים האלה.
שינויים ב-API
- הוספנו תמיכה בתרחישי שימוש שבהם ה-UID או ה-PID של החבילה שצריך לאמת לא זמינים. ממשקי ה-API תומכים עכשיו בתרחישים כמו
startActivityForResult
ופעילויות או רכיבי receiver שבהם הזהות של האפליקציה שקוראת משותפת באמצעות[Activity|Broadcast]Options#setShareIdentityEnabled
. - התנהגות השיטה
[check|enforce]CallingAppIdentity(String, String)
עודכנה כדי לתמוך בתרחישי השימוש החדשים האלה. שיטות אלה לא ישתמשו יותר ב-Binder#getCalling[Uid|Pid]
כברירת מחדל, אלא ידלגו על אימות של מזהה המשתמש (UID) של חבילת הקריאה אם הוא לא סופק באופן מפורש. (I1851b)
גרסה 1.0.0-alpha02
2 ביוני 2021
androidx.security:security-app-authenticator:1.0.0-alpha02
משוחרר. גרסה 1.0.0-alpha02 מכילה את הקומיטים האלה.
שינויים ב-API
- כדי להתכונן לתמיכה בדגל החדש להגנה על הרשאות
knownSigner
שהוצג ב-Android 12, אי אפשר יותר לציין את המאפיין digestAlgorithm בהגדרה. במקום זאת, צריך לחשב את כל הגיבובים (hash) של האישורים באמצעות SHA-256.
תיקוני באגים
- כל תקצירי האישורים שמופיעים בהגדרה עוברים עכשיו נורמליזציה כדי להבטיח שאפשר יהיה לדווח על התאמה מוצלחת של חתימה גם כשהתקציר מחושב בזמן הריצה וגם כשמוגדרת זהות חתימה מפורשת כשמשתמשים בספריית הבדיקה.
גרסה 1.0.0-alpha01
5 במאי 2021
androidx.security:security-app-authenticator:1.0.0-alpha01
משוחרר. גרסה 1.0.0-alpha01 מכילה את הקומיטים האלה.
תכונות חדשות
AppAuthenticator היא ספרייה חדשה שמטרתה לפשט את אימות המהימנות של האפליקציה על סמך זהות החתימה. האפליקציה צריכה רק לציין קובץ הגדרות XML שמכיל את שמות החבילות ואת זהויות החתימה של אפליקציות מהימנות, והספרייה תדאג לאמת את זהות החתימה של האפליקציות בזמן הריצה.
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 ולרמת API 30. אם האפליקציה פועלת ב-Android 11 ולמכשיר יש תמיכה בפרטי זהות שנתמכים בחומרה, ספריית Jetpack הזו פשוט מעבירה את הקריאות ל-API של הפלטפורמה. אחרת, נעשה שימוש בהטמעה שמגובה על ידי Android Keystore. ההטמעה שמגובה על ידי Android Keystore לא מספקת את אותה רמה של אבטחה ופרטיות, אבל היא מתאימה מאוד לבעלי כרטיסים ולמנפיקים במקרים שבהם כל הנתונים חתומים על ידי המנפיק. הספרייה הזו דורשת רמת API 24 ומעלה.
ממשקי ה-API של פרטי הכניסה לזהות מספקים ממשק לחנות מאובטחת של מסמכי זהות של משתמשים. ממשקי ה-API האלה הם כלליים ומופשטים בכוונה. במידת האפשר, הגדרת פורמטים של הודעות וסמנטיקה של תקשורת עם מכשירים לאימות פרטי כניסה ועם רשויות הנפקה (IA) לא נכללת ב-API האלה. מבני הנתונים שממשקי ה-API תלויים בהם תואמים למבני הנתונים בתקן ISO/IEC IS 18013-5 Personal identification — ISO-compliant driving licence — Part 5: Mobile driving licence (mDL) application, שיושק בקרוב.
שינויים ב-API
- נוסף Identity Credential Jetpack. (Icf90b)
גרסה 1.1.0 של Security-Crypto
גרסה 1.1.0-rc01
2 ביולי 2025
הגרסאות androidx.security:security-crypto:1.1.0-rc01
ו-androidx.security:security-crypto-ktx:1.1.0-rc01
יוצאות לאור. גרסה 1.1.0-rc01 מכילה את הקומטים האלה.
גרסה 1.1.0-beta01
4 ביוני 2025
הגרסאות androidx.security:security-crypto:1.1.0-beta01
ו-androidx.security:security-crypto-ktx:1.1.0-beta01
יוצאות לאור. גרסה 1.1.0-beta01 מכילה את ההתחייבויות האלה.
שינויים ב-API
- הוצאנו משימוש את כל ממשקי ה-API לטובת ממשקי API קיימים של הפלטפורמה ושימוש ישיר ב-Android Keystore.
גרסה 1.1.0-alpha07
9 באפריל 2025
הגרסאות androidx.security:security-crypto:1.1.0-alpha07
ו-androidx.security:security-crypto-ktx:1.1.0-alpha07
יוצאות לאור. גרסה 1.1.0-alpha07 מכילה את הקומטים האלה.
שינויים ב-API
- הוצאנו משימוש את כל ממשקי ה-API לטובת ממשקי API קיימים של הפלטפורמה ושימוש ישיר ב-Android Keystore.
גרסה 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 מכילה את הקומיטים האלה.
תכונות חדשות
- הוסרה הודעת היומן 'לא נמצא keyset, ייווצר חדש' בהפעלה הראשונה של האפליקציה. (b/185219606)
- שודרגו יחסי התלות ב-Tink לגרסה 1.7.0.
שינויים ב-API
- שינויים
EncryptedFile#openFileInput()
כדי להפעילFileNotFoundException
, במקוםIOException
כללי, כשהקובץ המבוקש לא קיים. (I80e41, b/148804719) - העדכון של המחלקה MasterKeys מחייב Android M במקום כל אחת מהשיטות שלה. (I8b4b8)
- כל הפונקציות לקבלת העדפות ב-
EncryptedSharedPreferences
(לדוגמה,#getString
,#getInt
) ישלחוSecurityException
במקרים נדירים שבהם אי אפשר להתאים את סוג הערך לאחד מהווריאנטים המוגדרים של enum. (b/241699427)
תיקוני באגים
- הגרסה המינימלית של SDK של ספריית security-crypto-ktx סונכרנה עם security-crypto על ידי הורדתה לגרסה 21 (b/193550375)
- תוקן באג של פעולות מקבילות בזמן יצירת כמה
EncryptedFile
(b/136590547)
External Contribution
- קיבלנו תיקון ל-
EncryptedSharedPreferences.Editor#remove
מ-chr.ibbotson@gmail.com (b/224994760, b/134197835, f44d44d)
Security-Crypto-Ktx Version 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 במקביל.
External Contribution
- הסרה של
mKeysChanged
בהחלה, תיקון של EncryptedSharedPreferences (aosp/1323026)
גרסה 1.1.0-alpha01
10 ביוני 2020
androidx.security:security-crypto:1.1.0-alpha01
משוחרר. גרסה 1.1.0-alpha01 מכילה את הקומיטים האלה.
תכונות חדשות
- יש עכשיו תמיכה ב-Lollipop (רמת API 21 ומעלה). חשוב לדעת שלא נעשה שימוש ב-AndroidKeyStore בגרסאות API 21 ו-22. (I7c12d, b/132325342)
- המחלקות החדשות MasterKey מספקות יותר אפשרויות למפתחות, וגם מוציאות משימוש את MasterKeys כדי לתמוך בתכונות חדשות ובגרסאות של Android שאין בהן KeyGenParamSpec.
Security-Crypto Version 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 במקביל.
External Contribution
- הסרה של
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, שכוללת הצללה של proto buf lite dep. העדכון הזה פותר את הבעיה הנפוצה של התנגשות עם ערכות SDK אחרות ל-Android. (I8a831)
- תוקן
apply()
ב-EncryptedSharedPreferences
. (I29069, b/154366606)
גרסה 1.0.0-rc01
15 באפריל 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.