אבטחה

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

בטבלה הזו מפורטים כל הארטיפקטים בקבוצה androidx.security.

פריט מידע שנוצר בתהליך פיתוח (Artifact) גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
אבטחה קריפטוגרפית 1.0.0 - - 1.1.0-alpha06
security-app-authenticator - - בטא 01.0.0 -
security-identity-credential - - - 1.0.0-alpha03
הספרייה הזו עודכנה לאחרונה ב-7 באוגוסט 2024

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

כדי להוסיף תלות ב-Security, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאגר Maven של Google.

מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle של האפליקציה או המודול:

מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.

משוב

המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע לבעיה קיימת, לוחצים על לחצן הכוכב.

דיווח על בעיה חדשה

מידע נוסף זמין במשאבי העזרה בנושא מעקב אחר בעיות.

Security-State גרסה 1.0

גרסה 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 State הוא ספרייה חדשה שבה מפתחים יכולים לקבל נתונים שימושיים לגבי גרסאות של רכיבי מערכת שניתן לעדכן, עדכוני אבטחה ותיקונים שהוחלו.

Security-App-Authenticator-Testing גרסה 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 מכילה את ההצהרות האלה.

תיקוני באגים

  • בדיקה מעודכנת של התנהגות 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 גרסה 1.0.0

גרסה 1.0.0-alpha03

13 בדצמבר 2023

androidx.security:security-app-authenticator:1.0.0-alpha03 משוחרר. גרסה 1.0.0-alpha03 כוללת את ההצהרות האלה.

שינויים ב-API

  • הוספנו תמיכה בתרחישי שימוש שבהם מזהה המשתמש (UID) או מזהה ה-PID של החבילה שצריך לאמת לא זמינים. ממשקי ה-API תומכים עכשיו בתרחישים כמו startActivityForResult ופעילויות או מכשירים נמענים שבהם הזהות של אפליקציית הקריאה משותפת דרך [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 בהגדרה. במקום זאת, צריך לחשב את כל הסכמות האימות של האישורים באמצעות 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 מכילה את ההצהרות האלה.

תיקוני באגים

גרסה 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 not found, will generate a new one' (לא נמצא מפתח, ייוצר מפתח חדש) בהפעלה הראשונה של האפליקציה. (b/185219606)
  • שדרוג התלות ב-Tink לגרסה 1.7.0.

שינויים ב-API

  • שינוי של EncryptedFile#openFileInput() כך שיזרוק FileNotFoundException במקום IOException כללי כשהקובץ המבוקש לא קיים. (I80e41, b/148804719)
  • מחלקת MasterKeys עודכנה כך שתחייב את גרסת Android M במקום כל אחד מהשיטות שלה. (I8b4b8)
  • שינוי כל פונקציות ה-getter של ההעדפות ב-EncryptedSharedPreferences (למשל #getString, ‏ #getInt) כך שיזרקו את השגיאה SecurityException במקרים נדירים שבהם לא ניתן להתאים את סוג הערך לאחד מהוריאנטים המוגדרים של המאפיין enum. (b/241699427)

תיקוני באגים

  • סנכרון גרסת ה-SDK המינימלית של ספריית security-crypto-ktx עם security-crypto על ידי הפחתתה ל-v21 (b/193550375)
  • תוקן באג של בו-זמניות בזמן יצירה של כמה EncryptedFile (b/136590547)

תרומה חיצונית

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 (API ברמה 21 ומעלה) נתמכת עכשיו. חשוב לדעת ש-AndroidKeyStore לא משמש ב-API 21 ו-22. (I7c12d, ‏ b/132325342)
  • הכיתה החדשה MasterKey מספקת אפשרויות נוספות למפתחות, וגם מפסיקה את השימוש ב-MasterKeys כדי לתמוך בתכונות ובגרסאות חדשות של Android שאין בהן את KeyGenParamSpec.

Security-Identity-Credential גרסה 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 לממשקי ה-API של פרטי הכניסה לזהות, שנוספו ל-Android 11 ולרמת API 30. אם אתם משתמשים ב-Android 11 ובמכשיר יש תמיכה ב'פרטי כניסה' בגיבוי חומרה, ה-Jetpack פשוט מעביר את הקריאות ל-API של הפלטפורמה. אחרת, תתבצע הטמעה שמגובת על ידי Android Keystore. ההטמעה שמגובת על ידי Android Keystore לא מספקת את אותה רמת אבטחה ופרטיות, אבל היא מתאימה גם לבעלי האסימונים וגם למנפיקים במקרים שבהם כל הנתונים חתומים על ידי המנפיק. כדי להשתמש בספרייה הזו, נדרשת רמת API 24 ואילך.

ממשקי Identity Credential API מספקים ממשק לאחסון מאובטח למסמכי זיהוי של משתמשים. ממשקי ה-API האלה הם כלליים למדי ומופשטים בכוונה. ככל האפשר, הממשקי האלה לא כוללים את המפרט של פורמטים של הודעות וסמנטיקה של תקשורת עם מכשירי אימות פרטי כניסה ועם רשויות מנפיקות (IA). מבני הנתונים שעליהם ממשקי ה-API כן תלויים תואמים למבני הנתונים בתקן ISO/IEC IS 18013-5 Personal identification — ISO-compliant driving licence — Part 5: Mobile driving licence (mDL) application standard, שיפורסם בקרוב.

שינויים ב-API

  • נוספה התוסף Identity Credential 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 במקביל.

תרומה חיצונית

  • clear mKeysChanged on apply, fix for 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, שמסתיר את יחידת ה-dep של proto buf lite. כך נפתרה הבעיה הידועה של התנגשות עם ערכות 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.