Package google.security.safebrowsing.v5alpha1

אינדקס

SafeBrowsing

ממשקי ה-API של הגלישה הבטוחה מאפשרים ללקוחות לבדוק משאבי אינטרנט (בדרך כלל כתובות אתרים) מול רשימות ש-Google עורכת ומעדכנת באופן קבוע, של משאבי אינטרנט לא בטוחים.

BatchGetHashLists

rpc BatchGetHashLists(BatchGetHashListsRequest) returns (BatchGetHashListsResponse)

קבלת כמה רשימות גיבוב בבת אחת.

לעיתים קרובות לקוח צריך לקבל כמה רשימות גיבוב (hash). עדיף להשתמש בשיטה הזו על פני שיטת Get הרגילה כמה פעמים.

זוהי שיטת אחזור באצווה רגילה כפי שמוגדר על ידי https://google.aip.dev/231 ושיטת ה-HTTP היא גם GET.

GetHashList

rpc GetHashList(GetHashListRequest) returns (HashList)

קבלת התוכן העדכני ביותר של רשימת גיבובים. רשימת גיבוב יכולה להיות לפי רשימת איומים או לפי רשימה שלא מאיימת, כמו מטמון גלובלי.

זוהי שיטת Get סטנדרטית, כפי שמוגדר על ידי https://google.aip.dev/131 ושיטת ה-HTTP היא גם GET.

ListHashLists

rpc ListHashLists(ListHashListsRequest) returns (ListHashListsResponse)

הצגת רשימה של רשימות גיבוב (hash).

ב-V5 API, Google אף פעם לא תסיר רשימת גיבובים (hash) שהוחזרה אי פעם בשיטה הזו. כך הלקוחות יכולים לדלג על השיטה הזו ולכתוב בתוך הקוד את כל רשימות הגיבוב שהם צריכים.

זוהי שיטת רשימה סטנדרטית כפי שמוגדרת על ידי https://google.aip.dev/132 ושיטת ה-HTTP היא GET.

SearchHashes

rpc SearchHashes(SearchHashesRequest) returns (SearchHashesResponse)

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

זוהי שיטה מותאמת אישית כפי שמוגדר על ידי https://google.aip.dev/136 (השיטה המותאמת אישית מתייחסת לכך שיש לשיטה הזו שם מותאם אישית במסגרת מינוח הפיתוח הכללי של Google API; היא לא מתייחסת לשימוש בשיטת HTTP מותאמת אישית).

BatchGetHashListsRequest

הבקשה לקבל כמה רשימות גיבוב (hash) בו-זמנית.

שדות
names[]

string

חובה. השמות של רשימות הגיבוב הספציפיות. הרשימה יכולה להיות רשימת איומים ויכול להיות גם המטמון הגלובלי. השמות לא יכולים להכיל כפילויות. אם הם כן מכילים, הלקוח יקבל שגיאה.

version[]

bytes

הגרסאות של רשימת הגיבוב (hash) שכבר יש ללקוח. אם זו הפעם הראשונה שהלקוח מאחזר את רשימות הגיבוב, צריך להשאיר את השדה ריק. אחרת, הלקוח צריך לספק את הגרסאות שהתקבלו קודם לכן מהשרת. אסור ללקוח להשפיע על הבייטים האלה.

הלקוח לא צריך לשלוח את הגרסאות באותו סדר שבו מופיעות שמות הרשימות המתאימות. הלקוח עשוי לשלוח בבקשה פחות גרסאות או יותר מאשר יש שמות. עם זאת, ללקוח אסור לשלוח כמה גרסאות שתואמות לאותו שם; אם הוא שלח, הלקוח יקבל שגיאה.

הערה היסטורית: בגרסה 4 של ה-API, שם ה-API נקרא states; לשם הבהרה, שם כעת הוא version.

desired_hash_length

HashLength

האורך הרצוי של תחילית הגיבוב של הגיבובים שמוחזרים בבייטים. לאחר מכן השרת יחזיר את כל קידומות הגיבוב באורך שצוין.

לרשימות גיבוב (hash) שונות יש דרישות שונות לגבי הערכים הקבילים בשדה desired_hash_length. תוכלו למצוא את המידע הזה בשדה supported_hash_lengths בHashListMetadata. אם desired_hash_length לא יציין ערך בתוך supported_hash_lengths, תוחזר שגיאה ללקוחות.

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

size_constraints

SizeConstraints

מגבלות הגודל בכל רשימה. אם יושמטו, אין מגבלות. שים לב שהגדלים כאן הם לפי רשימה, ולא נצברים מכל הרשימות.

BatchGetHashListsResponse

התשובה שמכילה כמה רשימות גיבוב (hash).

שדות
hash_lists[]

HashList

הגיבוב מופיע לפי הסדר שצוין בבקשה.

FullHash

הגיבוב המלא שזוהה עם התאמה אחת או יותר.

שדות
full_hash

bytes

הגיבוב המלא התואם. זהו גיבוב SHA256. האורך יהיה 32 בייטים בדיוק.

full_hash_details[]

FullHashDetail

רשימה לא ממוינת. שדה חוזר שמזהה את הפרטים הרלוונטיים לגיבוב המלא הזה.

FullHashDetail

פרטים על גיבוב מלא תואם.

הערה חשובה לגבי תאימות העברה: השרת יכול להוסיף סוגי איומים חדשים ומאפייני איומים בכל שלב. התוספות האלה נחשבות לשינויים קטנים בגרסה. המדיניות של Google היא לא לחשוף מספרי גרסאות משניות בממשקי API (בכתובת https://cloud.google.com/apis/design/versioning מופיעה המדיניות בנושא ניהול גרסאות), ולכן הלקוחות חייבים להיות מוכנים לקבל הודעות FullHashDetail שמכילות ערכי enum מסוג ThreatType או ערכי enum מסוג ThreatAttribute שנחשבים לא חוקיים על ידי הלקוח. לכן, באחריות הלקוח לבדוק את החוקיות של כל הערכים מסוג 'ThreatType' ו-'ThreatAttribute'. אם ערך כלשהו נחשב לא חוקי, הלקוח חייב להתעלם מההודעה FullHashDetail במלואה.

שדות
threat_type

ThreatType

סוג האיום. השדה הזה אף פעם לא יהיה ריק.

attributes[]

ThreatAttribute

רשימה לא ממוינת. מאפיינים נוספים לגבי הגיבובים המלאים. יכול להיות שהשדה הזה ריק.

GetHashListRequest

בקשה לקבלת רשימת גיבוב (hash), שיכולה להיות רשימת איומים או רשימת איום, כמו מטמון גלובלי.

מה חדש ב-V5: השם של מה שנקרא בעבר states ב-V4 השתנה ל-version לצורך הבהרה. מעכשיו, הרשימות מקבלות שם, סוגי הפלטפורמות וסוגי ההזנה של איומים מוסרים. עכשיו ייתכן שכמה רשימות יכללו את אותו סוג האיום, או רשימה אחת עם כמה סוגי איומים. ללקוחות יש אפשרות חדשה לציין את אורך הגיבוב (hash) הרצוי. זהו חלק מהתשובה לקידומות גיבוב באורך משתנה של V4, שגרמו לבעיות בהטמעות רבות של לקוחות: לכל הגיבובים ברשימה יש עכשיו אורך אחד, מה שמאפשר הטמעה יעילה הרבה יותר של לקוחות. האילוצים פשוטים יותר וסוג הדחיסה הוסר (תמיד מופעל דחיסה).

שדות
name

string

חובה. השם של רשימת הגיבוב הספציפית הזו. זו יכולה להיות רשימת איומים או המטמון הגלובלי.

version

bytes

הגרסה של רשימת הגיבוב (hash) שכבר יש ללקוח. אם זו הפעם הראשונה שהלקוח מאחזר את רשימת הגיבוב, חובה להשאיר את השדה הזה ריק. אחרת, הלקוח צריך לספק את הגרסה שהתקבלו קודם לכן מהשרת. אסור ללקוח להשפיע על הבייטים האלה.

מה חדש ב-V5: ב-V4 של ה-API, שם ה-API נקרא states; ועכשיו הוא נקרא version לשם הבהרה.

desired_hash_length

HashLength

האורך הרצוי של תחילית הגיבוב של הגיבובים שמוחזרים בבייטים. לאחר מכן השרת יחזיר את כל קידומות הגיבוב באורך שצוין.

לרשימות גיבוב (hash) שונות יש דרישות שונות לגבי הערכים הקבילים בשדה desired_hash_length. תוכלו למצוא את המידע הזה בשדה supported_hash_lengths בHashListMetadata. אם desired_hash_length לא יציין ערך בתוך supported_hash_lengths, תוחזר שגיאה.

size_constraints

SizeConstraints

מגבלות הגודל ברשימה. אם יושמטו, אין מגבלות. האילוצים מומלצים בכל המכשירים שעוצמת העיבוד, רוחב הפס או האחסון שלהם מוגבלים.

HashList

רשימת גיבובים שמזוהים לפי השם שלו.

שדות
name

string

השם של רשימת הגיבוב. לתשומת לבך, המטמון הגלובלי הוא גם רשימת גיבוב בלבד, וניתן לעיין בו כאן.

version

bytes

הגרסה של רשימת הגיבוב. אסור ללקוח להשפיע על הבייטים האלה.

partial_update

bool

כש-TRUE, זהו הבדל חלקי שמכיל תוספות והסרות על סמך מה שכבר יש ללקוח. אם הערך הוא False, זוהי רשימת הגיבוב (hash) המלאה.

אם הערך הוא False, הלקוח חייב למחוק כל גרסה שמאוחסנת באופן מקומי עבור רשימת הגיבוב הזו. המשמעות היא שהגרסה שבבעלות הלקוח ממש לא עדכנית או שנראה שנתוני הלקוח פגומים. השדה compressed_removals יהיה ריק.

אם הערך הוא True, הלקוח חייב להחיל עדכון מצטבר על ידי החלת הסרות ואז הוספות.

compressed_removals

RiceDeltaEncoded32Bit

הגרסה המקודדת של דלתת האורז של אינדקס ההסרה. מאחר שכל רשימת גיבובים כוללת בהחלט פחות מ-2^32 ערכים, האינדקסים מטופלים כמספרים שלמים של 32 סיביות ומקודדים.

minimum_wait_duration

Duration

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

metadata

HashListMetadata

מטא-נתונים על רשימת הגיבוב. שדה זה לא מאוכלס על ידי השיטה GetHashList, אך הוא מאוכלס על ידי שיטת ListHashLists.

שדה איחוד compressed_additions. הגרסה המקודדת של התוספות בקידוד דלתת אורז. אורכי התוספות של קידומות הגיבוב הם אחידים בכל התוספות ברשימה. הערך הזה הוא desired_hash_length שנשלח על ידי הלקוח או ערך שנבחר על ידי השרת אם הלקוח השמיט את השדה הזה. compressed_additions יכול להיות רק אחד מהבאים:
additions_four_bytes

RiceDeltaEncoded32Bit

התוספות של 4 בייטים.

additions_eight_bytes

RiceDeltaEncoded64Bit

הוספות של 8 בייטים.

additions_sixteen_bytes

RiceDeltaEncoded128Bit

התוספות של 16 בייטים.

additions_thirty_two_bytes

RiceDeltaEncoded256Bit

הוספות של 32 בייטים.

שדה איחוד checksum. זהו סיכום הביקורת של הרשימה הממוינת של כל הגיבובים שנמצאים במסד הנתונים אחרי החלת העדכון שסופק. זהו שדה 'oneof' שמאפשר להשתמש בכמה אלגוריתמים של גיבוב. כמו כן, השרת יכול להשמיט את השדה הזה (אם לא סופקו עדכונים) כדי לציין שהלקוח צריך להשתמש בסיכום הביקורת הקיים. checksum יכול להיות רק אחד מהבאים:
sha256_checksum

bytes

רשימה ממוינת של כל הגיבובים, לאחר גיבוב שוב באמצעות האלגוריתם SHA256.

HashListMetadata

מטא-נתונים על רשימת גיבובים מסוימת.

שדות
threat_types[]

ThreatType

רשימה לא ממוינת. אם היא לא ריקה, המשמעות היא שרשימת הגיבוב (hash) היא סוג של רשימת איומים, והיא כוללת ספירה של סוג האיומים המשויכים לגיבובים או לקידומות של גיבוב (hash) ברשימת הגיבוב הזו. יכול להיות שהוא יהיה ריק אם הרשומה לא מייצגת איום, כלומר אם היא מייצגת סוג בטוח שסביר להניח שהוא בטוח.

likely_safe_types[]

LikelySafeType

רשימה לא ממוינת. אם היא לא ריקה, פירוש הדבר הוא שרשימת הגיבוב (hash) מייצגת רשימה של גיבובים בטוחים שסביר להניח, וכן הדרכים שבהן הם נחשבים בטוחים. השדה הזה אינו כולל את השדה abuse_types.

mobile_optimized

bool

האם הרשימה הזו עברה אופטימיזציה למכשירים ניידים (Android ו-iOS).

description

string

תיאור של הרשימה הזו שקריא לבני-אדם. באנגלית.

supported_hash_lengths[]

HashLength

אורכי הגיבוב (hash) הנתמכים ברשימת הגיבוב הזו. כל רשימת גיבובים תתמוך באורך אחד לפחות. לכן השדה הזה לא יהיה ריק.

HashLength

אורך הגיבובים ברשימת גיבוב.

טיפוסים בני מנייה (enums)
HASH_LENGTH_UNSPECIFIED האורך לא צוין. השרת לא יחזיר את הערך הזה בתגובות ללקוח (בשדה supported_hash_lengths), אבל הלקוח רשאי לשלוח את הערך הזה לשרת (בשדה desired_hash_length). במקרה כזה השרת יבחר ערך באופן אוטומטי. לקוחות צריכים לאפשר לשרת לבחור ערך.
FOUR_BYTES כל גיבוב הוא קידומת של ארבעה בייטים.
EIGHT_BYTES כל גיבוב הוא קידומת של 8 בייטים.
SIXTEEN_BYTES כל גיבוב הוא קידומת של 16 בייטים.
THIRTY_TWO_BYTES כל גיבוב הוא גיבוב מלא באורך 32 בייטים.

LikelySafeType

סוגים של אתרים שסביר להניח שהם בטוחים.

שימו לב שה-SearchHashesResponse לא מכיל LikelySafeType בכוונה.

טיפוסים בני מנייה (enums)
LIKELY_SAFE_TYPE_UNSPECIFIED לא ידוע.
GENERAL_BROWSING סביר להניח שהאתר הזה בטוח מספיק לגלישה כללית. הוא נקרא גם 'מטמון גלובלי'.
CSD סביר להניח שהאתר הזה בטוח מספיק, כך שאין צורך להפעיל מודלים לזיהוי בצד הלקוח או בדיקות של הגנה באמצעות סיסמה.
DOWNLOAD סביר להניח שהאתר הזה בטוח מספיק, כך שאין צורך לבדוק הורדות מהאתר.

ListHashListsRequest

הבקשה להצגת רשימות הגיבוב הזמינות.

שדות
page_size

int32

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

page_token

string

אסימון דף שהתקבל מקריאה קודמת של ListHashLists. ספקו אותו כדי לאחזר את הדף הבא.

ListHashListsResponse

התשובה שמכילה מטא-נתונים לגבי רשימות גיבוב (hash).

שדות
hash_lists[]

HashList

רשימות הגיבוב מופיעות בסדר שרירותי. ייכללו רק מטא-נתונים של רשימות הגיבוב, לא התוכן.

next_page_token

string

אסימון, שיכול להישלח בתור page_token כדי לאחזר את הדף הבא. אם השדה הזה יושמט, לא יהיו דפים עוקבים.

RiceDeltaEncoded128Bit

זהה ל-RiceDeltaEncoded32Bit, אבל זה מקודד מספרים של 128 ביט.

שדות
first_value_hi

uint64

64 הביטים העליונים של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, כל 64 הביטים העליונים יהיו אפס.

first_value_lo

fixed64

64 הביטים התחתונים של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, כל 64 הביטים התחתונים יהיו אפס.

rice_parameter

int32

הפרמטר Golomb-Rice. מובטחת שהפרמטר הזה יהיה בין 99 ל-126, כולל.

entries_count

int32

מספר הערכים המקודדים כדלתא בנתונים המקודדים. אם קודדו מספר שלם אחד בלבד, הוא יהיה אפס והערך היחיד יאוחסן ב-first_value.

encoded_data

bytes

הדלתא המקודדת המקודדת באמצעות המקודד גולומב-אורז.

RiceDeltaEncoded256Bit

זהה לזה RiceDeltaEncoded32Bit, אבל זה מקודד מספרים של 256 ביט.

שדות
first_value_first_part

uint64

64 הביטים הראשונים של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, 64 הביטים הראשונים יהיו אפס.

first_value_second_part

fixed64

הסיביות 65 עד 128 של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, הסיביות של 65 עד 128 יהיו אפס.

first_value_third_part

fixed64

הסיביות 129 עד 192 של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, הביטים של 129 עד 192 יהיו אפס.

first_value_fourth_part

fixed64

64 הביטים האחרונים של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, 64 הביטים האחרונים יהיו אפס.

rice_parameter

int32

הפרמטר Golomb-Rice. הפרמטר הזה מובטח להיות בין 227 ל-254, כולל.

entries_count

int32

מספר הערכים המקודדים כדלתא בנתונים המקודדים. אם קודדו מספר שלם אחד בלבד, הוא יהיה אפס והערך היחיד יאוחסן ב-first_value.

encoded_data

bytes

הדלתא המקודדת המקודדת באמצעות המקודד גולומב-אורז.

RiceDeltaEncoded32Bit

הנתונים המקודדים של Rice-Golomb. משמש לגיבובים או להסרת אינדקסים. מובטח שלכל גיבוב או אינדקס כאן יהיה אותו אורך, והאורך הזה הוא בדיוק 32 ביטים.

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

הערה היסטורית: קידוד דלתת אורז שימש לראשונה ב-V4 של ממשק API זה. בגרסה 5, בוצעו שני שיפורים משמעותיים: הראשון, קידוד דלתת אורז זמין עכשיו עם קידומות גיבוב שאורכן עולה על 4 בייטים. שנית, הנתונים המקודדים מטופלים עכשיו כאותיות גדולות, כדי להימנע משלב מיון יקר.

שדות
first_value

uint32

הרשומה הראשונה בנתונים המקודדים (גיבובים או אינדקסים), או, אם קודדו רק קידומת או אינדקס גיבוב יחיד, הערך של אותו ערך. אם השדה ריק, הערך הוא אפס.

rice_parameter

int32

הפרמטר Golomb-Rice. ערך הפרמטר הזה מובטח להיות בין 3 ל-30, כולל.

entries_count

int32

מספר הערכים המקודדים כדלתא בנתונים המקודדים. אם קודדו מספר שלם אחד בלבד, הוא יהיה אפס והערך היחיד יאוחסן ב-first_value.

encoded_data

bytes

הדלתא המקודדת המקודדת באמצעות המקודד גולומב-אורז.

RiceDeltaEncoded64Bit

זהה ל-RiceDeltaEncoded32Bit, אבל זה מקודד מספרים של 64 ביט.

שדות
first_value

uint64

הערך הראשון בנתונים המקודדים (גיבובים), או הערך של הרשומה, אם זוהתה רק קידומת גיבוב אחת. אם השדה ריק, הערך הוא אפס.

rice_parameter

int32

הפרמטר Golomb-Rice. ערך הפרמטר הזה מובטח להיות בין 35 ל-62, כולל.

entries_count

int32

מספר הערכים המקודדים כדלתא בנתונים המקודדים. אם קודדו מספר שלם אחד בלבד, הוא יהיה אפס והערך היחיד יאוחסן ב-first_value.

encoded_data

bytes

הדלתא המקודדת המקודדת באמצעות המקודד גולומב-אורז.

SearchHashesRequest

בקשה שהלקוח מנפיק כדי לחפש קידומות גיבוב ספציפיות.

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

מה חדש ב-V5: לקוחות לא צריכים לציין ClientInfo או את המצבים של רשימות הגיבוב במסד הנתונים המקומי שלהם. הבקשה הזו נועדה לשפר את הפרטיות. בנוסף, הלקוחות לא צריכים לציין את סוגי האיומים שבהם הם מעוניינים.

שדות
hash_prefixes[]

bytes

חובה. יש לחפש את קידומות הגיבוב. אסור ללקוחות לשלוח יותר מ-1,000 קידומות גיבוב. עם זאת, בהתאם לתהליך עיבוד כתובות האתרים, לקוחות לא אמורים לשלוח יותר מ-30 קידומות hash.

בשלב זה, כל קידומת גיבוב נדרשת להיות באורך של 4 בייטים בדיוק. זה עשוי להיות רגוע בעתיד.

filter

string

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

המסנן מצוין באמצעות Google Common Expression Language, שמופיעה בכתובת https://github.com/google/cel-spec יחד עם דוגמאות כלליות. הנה כמה דוגמאות ספציפיות שאפשר להשתמש בהן כאן:

המסנן "threat_type == ThreatType.SOCIAL_ENGINEERING" מחייב שבתוך FullHashDetail סוג האיום יהיה SOCIAL_ENGINEERING. המזהה "threat_type" מתייחס לסוג האיום הנוכחי. המזהה "ThreatType" מתייחס לאיסוף של כל סוגי האיומים האפשריים.

המסנן "threat_type in [ ThreatType.UNWANTED_SOFTWARE, ThreatType.MALWARE ]" מחייב שסוג האיום יהיה UNWANTED_SOFTWARE או MALWARE.

SearchHashesResponse

התשובה הוחזרה אחרי חיפוש 'גיבובים' של איומים.

אם לא נמצא דבר, השרת יחזיר סטטוס תקין (קוד מצב HTTP 200) כשהשדה full_hashes ריק, במקום להחזיר סטטוס NOT_FOUND (קוד מצב HTTP 404).

מה חדש ב-V5: יש הפרדה בין FullHash ל-FullHashDetail. במקרה שבו גיבוב מייצג אתר עם מספר איומים (למשל, MALWARE וגם SOCIAL_engineERING), אין צורך לשלוח את הגיבוב המלא פעמיים כמו ב-V4. בנוסף, משך הזמן של המטמון הופשט לשדה cache_duration אחד.

שדות
full_hashes[]

FullHash

רשימה לא ממוינת. נמצאה רשימה לא ממוינת של גיבובים מלאים.

cache_duration

Duration

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

אם ורק אם השדה full_hashes ריק, הלקוח עשוי להגדיל את הערך cache_duration כדי לקבוע תאריך תפוגה חדש מאוחר יותר מזה שצוין על ידי השרת. בכל מקרה, משך הזמן המוגדל של המטמון לא יכול להיות ארוך מ-24 שעות.

חשוב: הלקוח לא יכול להניח שהשרת יחזיר את אותו משך מטמון לכל התגובות. השרת עשוי לבחור משך זמן שונה של מטמון לתגובות שונות, בהתאם למצב.

SizeConstraints

המגבלות על הגודל של רשימות הגיבוב.

שדות
max_update_entries

int32

הגודל המרבי של מספר הערכים. העדכון לא יכלול יותר רשומות מהערך הזה, אבל יכול להיות שהוא יכלול פחות רשומות מהערך הזה. המספר הזה חייב להיות 1024 לפחות. אם הוא חסר או אפס, לא תוגדר מגבלת גודל לעדכון.

max_database_entries

int32

מגדירה את המספר המקסימלי של רשומות שהלקוח מוכן לכלול במסד הנתונים המקומי עבור הרשימה. (השרת עשוי לגרום ללקוח לאחסן פחות ממספר הרשומות הזה). אם לא מגדירים את מסד הנתונים או את הערך אפס, לא מוגדרת מגבלה לגודל של מסד הנתונים.

ThreatAttribute

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

טיפוסים בני מנייה (enums)
THREAT_ATTRIBUTE_UNSPECIFIED מאפיין לא ידוע. אם השרת מחזיר זאת, הלקוח יתעלם לגמרי מה-FullHashDetail המצורף.
CANARY מציין שלא צריך להשתמש ב-Floodlight_type לצורך אכיפה.
FRAME_ONLY מציין שיש להשתמש ב-Nov_type רק לצורך אכיפה על פריימים.

ThreatType

סוגי איומים.

טיפוסים בני מנייה (enums)
THREAT_TYPE_UNSPECIFIED סוג האיום לא ידוע. אם השרת מחזיר זאת, הלקוח יתעלם לגמרי מה-FullHashDetail המצורף.
MALWARE

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

מידע נוסף זמין כאן.

SOCIAL_ENGINEERING

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

מידע נוסף זמין כאן.

UNWANTED_SOFTWARE סוג האיום של תוכנה לא רצויה. תוכנות לא רצויות הן תוכנות שלא פועלות בהתאם לעקרונות התוכנה של Google ולא פועלות בהתאם לתוכנה זדונית.
POTENTIALLY_HARMFUL_APPLICATION סוג האיום של אפליקציות שעלולות להזיק בשימוש של Google Play Protect בחנות Play.