אבטחה

ניהול מאובטח של מפתחות והצפנה של קבצים והעדפות משותפות.

בטבלה הזו מפורטים כל פריטי המידע בקבוצה 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
הספרייה הזו עודכנה לאחרונה ב-2 ביולי 2025

הצהרה על יחסי תלות

כדי להוסיף תלות ב-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 מכילה את הקומיטים האלה.

תיקוני באגים

גרסה 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

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.