- משאב: HashList
- RiceDeltaEncoded32Bit
- RiceDeltaEncoded64Bit
- RiceDeltaEncoded128Bit
- RiceDeltaEncoded256Bit
- HashListMetadata
- ThreatType
- LikelySafeType
- HashLength
- שיטות
משאב: HashList
רשימה של גיבובים שמזוהים לפי שם הפריט.
ייצוג JSON |
---|
{ "name": string, "version": string, "partialUpdate": boolean, "compressedRemovals": { object ( |
שדות | |
---|---|
name |
השם של רשימת הגיבוב. לתשומת ליבכם: המטמון הגלובלי הוא גם רשימת גיבוב (hash), ואפשר לעיין בה כאן. |
version |
הגרסה של רשימת הגיבוב. אסור ללקוח לשנות את הבייטים האלה. מחרוזת בקידוד base64. |
partialUpdate |
אם הערך הוא True, זהו הבדל חלקי שכולל הוספות והסרות על סמך מה שכבר יש ללקוח. אם הערך הוא False, זוהי רשימת הגיבוב המלאה. אם הערך הוא False, הלקוח חייב למחוק את כל הגרסה המאוחסנת באופן מקומי עבור רשימת הגיבובים הזו. המשמעות היא שהגרסה שבבעלות הלקוח מאוד לא עדכנית, או שנתוני הלקוח כנראה פגומים. השדה אם הערך הוא True, הלקוח חייב להחיל עדכון מצטבר על ידי החלת הסרות ולאחר מכן הוספות. |
compressedRemovals |
גרסת קידוד דלתא של אורז של אינדקסים להסרה. מכיוון שבכל רשימת גיבוב (hash) יש בהחלט פחות מ-2^32 רשומות, המדדים נחשבים כמספרים שלמים של 32 ביט והם מקודדים. |
minimumWaitDuration |
הלקוחות צריכים להמתין לפחות למשך הזמן הזה כדי לקבל שוב את רשימת הגיבוב. אם הוא חסר או אפס, הלקוחות צריכים לאחזר באופן מיידי כי זה מצביע על כך שלשרת יש עדכון נוסף שצריך לשלוח אליו, אבל לא ניתן לעשות זאת בגלל אילוצים שצוינו על ידי הלקוח. משך זמן בשניות עם עד תשע ספרות עשרוניות, שמסתיים ב-' |
metadata |
מטא-נתונים לגבי רשימת הגיבוב (hash). הערך הזה לא מאוכלס על ידי השיטה |
שדה איחוד compressed_additions . גרסת הקידוד של דלתא בקידוד Rice-delta של התוספות. האורך של קידומת הגיבוב של תוספות אחידות בכל התוספות שברשימה. הערך הוא desired_hash_length שנשלח על ידי הלקוח או ערך שנבחר על ידי השרת אם הלקוח השמט את השדה הזה. compressed_additions יכול להיות רק אחת מהאפשרויות הבאות: |
|
additionsFourBytes |
התוספות של 4 בייטים. |
additionsEightBytes |
התוספות של 8 בייטים. |
additionsSixteenBytes |
התוספות של 16 בייטים. |
additionsThirtyTwoBytes |
התוספות של 32 בייטים. |
שדה איחוד checksum . זהו סיכום הביקורת של הרשימה הממוינת של כל הגיבובים שקיימים במסד הנתונים אחרי החלת העדכון שסופק. זהו "אחד מ" כדי לאפשר מספר אלגוריתמים של גיבוב (hashing). בנוסף, השרת יכול להשמיט את השדה הזה (אם לא סופקו עדכונים) כדי לציין שהלקוח צריך להשתמש בסיכום הביקורת הקיים. checksum יכול להיות רק אחת מהאפשרויות הבאות: |
|
sha256Checksum |
הרשימה הממוינת של כל הגיבובים (hashed) שוב באמצעות SHA256. מחרוזת בקידוד base64. |
RiceDeltaEncoded32Bit
הנתונים בקידוד Rice-Golomb. משמש לגיבובים או להסרה של אינדקסים. אנחנו מבטיחים שלכל גיבוב או אינדקס כאן יהיו אותו אורך, והאורך הזה יהיה 32 סיביות בדיוק.
באופן כללי, אם נמיין את כל הערכים לפי לקסיקוגרפיה, נגלה שהקטעים מסדר גבוה יותר נוטים לא להשתנות בתדירות גבוהה יותר מזו של קטעים מסדר נמוך יותר. כלומר, אם לוקחים גם את ההפרש הצמוד בין הערכים, יש סבירות גבוהה לקיבועים מסדר גבוה יותר להיות אפס. הפעולה הזו מנצלת את הסבירות הגבוהה של אפס על ידי בחירה של מספר מסוים של ביטים. סביר להניח שכל הביטים יותר חשובים יהיו אפס, ולכן אנחנו משתמשים בקידוד אונארי. בודקים את השדה riceParameter
.
הערה היסטורית: קידוד Rice-delta שימש לראשונה בגרסה 4 של ה-API הזה. ב-V5 בוצעו שני שיפורים משמעותיים: ראשית, קידוד Rice-delta זמין עכשיו עם קידומות גיבוב (hash) שאורכן עולה על 4 בייטים; שנית, הנתונים המקודדים נחשבים כיום לנתונים גדולים-אנדיאניים (Big Endian), כדי להימנע משלב מיון יקר.
ייצוג JSON |
---|
{ "firstValue": integer, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
שדות | |
---|---|
firstValue |
הערך הראשון בנתונים המקודדים (גיבובים או אינדקסים), או, אם קודדו רק קידומת או אינדקס בודדים של גיבוב, הערך של הרשומה הזו. אם השדה ריק, הערך הוא אפס. |
riceParameter |
הפרמטר Golomb-Rice. המספר של הפרמטר הזה מובטח הוא בין 3 ל-30, כולל. |
entriesCount |
מספר הרשומות שמקודדות לפי דלתא בנתונים המקודדים. אם מקודדים רק מספר שלם אחד, הערך יהיה אפס והערך היחיד יישמר ב- |
encodedData |
השינויים המקודדים שמקודדים באמצעות קודר Golomb-Rice. מחרוזת בקידוד base64. |
RiceDeltaEncoded64Bit
האפשרות הזו זהה לזו של הפקודה RiceDeltaEncoded32Bit
, אבל היא מקודדת מספרים של 64 ביט.
ייצוג JSON |
---|
{ "firstValue": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
שדות | |
---|---|
firstValue |
הרשומה הראשונה בנתונים המקודדים (גיבובים), או, אם קודדה רק קידומת גיבוב אחת, ערך הרשומה הזו. אם השדה ריק, הערך הוא אפס. |
riceParameter |
הפרמטר Golomb-Rice. המספר המקסימלי של הפרמטר הזה הוא 35 עד 62, כולל. |
entriesCount |
מספר הרשומות שמקודדות לפי דלתא בנתונים המקודדים. אם מקודדים רק מספר שלם אחד, הערך יהיה אפס והערך היחיד יישמר ב- |
encodedData |
השינויים המקודדים שמקודדים באמצעות קודר Golomb-Rice. מחרוזת בקידוד base64. |
RiceDeltaEncoded128Bit
האפשרות הזו זהה לזו של הפקודה RiceDeltaEncoded32Bit
, אבל היא מקודדת מספרים של 128 ביט.
ייצוג JSON |
---|
{ "firstValueHi": string, "firstValueLo": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
שדות | |
---|---|
firstValueHi |
64 הביטים העליונים של הערך הראשון בנתונים המקודדים (גיבובים). אם השדה ריק, כל 64 הביטים העליונים הם אפס. |
firstValueLo |
64 הביטים התחתונים של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, כל 64 הביטים התחתונים הם אפס. |
riceParameter |
הפרמטר Golomb-Rice. הפרמטר הזה מובטח להיות בין 99 ל-126, כולל. |
entriesCount |
מספר הרשומות שמקודדות לפי דלתא בנתונים המקודדים. אם מקודדים רק מספר שלם אחד, הערך יהיה אפס והערך היחיד יישמר ב- |
encodedData |
השינויים המקודדים שמקודדים באמצעות קודר Golomb-Rice. מחרוזת בקידוד base64. |
RiceDeltaEncoded256Bit
האפשרות הזו זהה לזו של הפקודה RiceDeltaEncoded32Bit
, אבל היא מקודדת מספרים של 256 ביט.
ייצוג JSON |
---|
{ "firstValueFirstPart": string, "firstValueSecondPart": string, "firstValueThirdPart": string, "firstValueFourthPart": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
שדות | |
---|---|
firstValueFirstPart |
64 הביטים הראשונים של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, כל 64 הביטים הראשונים הם אפס. |
firstValueSecondPart |
65 עד 128 הביטים של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, כל הביטים של 65 עד 128 הם אפס. |
firstValueThirdPart |
129 עד 192 הביטים של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, כל הביטים מ-129 עד 192 הם אפס. |
firstValueFourthPart |
64 הביטים האחרונים של הרשומה הראשונה בנתונים המקודדים (גיבובים). אם השדה ריק, כל 64 הביטים האחרונים הם אפס. |
riceParameter |
הפרמטר Golomb-Rice. הפרמטר הזה מובטח להיות בין 227 ל-254, כולל. |
entriesCount |
מספר הרשומות שמקודדות לפי דלתא בנתונים המקודדים. אם מקודדים רק מספר שלם אחד, הערך יהיה אפס והערך היחיד יישמר ב- |
encodedData |
השינויים המקודדים שמקודדים באמצעות קודר Golomb-Rice. מחרוזת בקידוד base64. |
HashListMetadata
מטא-נתונים לגבי רשימת גיבוב (hash) מסוימת.
ייצוג JSON |
---|
{ "threatTypes": [ enum ( |
שדות | |
---|---|
threatTypes[] |
רשימה לא ממוינת. אם היא לא ריקה, פירוש הדבר הוא שרשימת הגיבוב היא סוג של רשימת איומים, ומפורט בה סוג האיומים שמשויכים לגיבובים או לקידומות של גיבוב ברשימת הגיבובים הזו. יכולה להיות ריקה אם הרשומה לא מייצגת איום, כלומר אם היא מייצגת סוג בטוח ככל הנראה. |
likelySafeTypes[] |
רשימה לא ממוינת. אם היא לא ריקה, פירוש הדבר הוא שרשימת הגיבוב (hash) מייצגת רשימה של גיבובים שסביר להניח שהם בטוחים, ומפרטת את הדרכים שבהן הם נחשבים בטוחים. השדה הזה לא יכול להיות קיים עם השדה responseTypes. |
mobileOptimized |
האם הרשימה הזו עברה אופטימיזציה למכשירים ניידים (Android ו-iOS). |
description |
תיאור של הרשימה הזו שבודק אנושי יכול לקרוא. נכתב באנגלית. |
supportedHashLengths[] |
אורכי הגיבוב הנתמכים של רשימת הגיבובים הזו כל רשימת גיבוב (hash) תתמוך באורך אחד לפחות. לכן, השדה הזה לא יהיה ריק. |
ThreatType
סוגי איומים.
טיפוסים בני מנייה (enum) | |
---|---|
THREAT_TYPE_UNSPECIFIED |
סוג האיום לא ידוע. אם השרת מחזיר את הערך הזה, הלקוח יתעלם לגמרי מה-FullHashDetail שמצורף. |
MALWARE |
סוג איום של תוכנה זדונית. תוכנה זדונית היא כל תוכנה או אפליקציה לנייד שתוכננה במיוחד כדי לגרום נזק למחשב או למכשיר נייד, לתוכנה שפועלת בהם או למי שמשתמשים בהם. ההתנהגות של תוכנות זדוניות יכולה לכלול התקנה של תוכנה ללא הסכמת המשתמש והתקנה של תוכנות מזיקות, כמו וירוסים. מידע נוסף זמין כאן |
SOCIAL_ENGINEERING |
סוג איום של הנדסה חברתית. דפים של הנדסה חברתית מתיימרים באופן שקרי שהם פועלים מטעם צד שלישי מתוך כוונה לבלבל את הצופים ולגרום להם לבצע פעולה שבה הצופה יבטח רק בסוכן אמיתי של אותו צד שלישי. פישינג הוא סוג של הנדסה חברתית שמטרתה לגרום לצופים לבצע את הפעולה הספציפית של מסירת מידע, כמו פרטי התחברות. מידע נוסף זמין כאן |
UNWANTED_SOFTWARE |
סוג איום של תוכנה לא רצויה. תוכנה לא רצויה היא כל תוכנה שלא פועלת בהתאם לעקרונות התוכנה של Google אבל לא תוכנה זדונית. |
POTENTIALLY_HARMFUL_APPLICATION |
סוג איום של אפליקציה שעלולה להזיק בשימוש של Google Play Protect בחנות Play. |
LikelySafeType
סוגים של אתרים שסביר להניח שהם בטוחים.
חשוב לשים לב שה-SearchHashesResponse
לא מכיל את LikelySafeType
בכוונה.
טיפוסים בני מנייה (enum) | |
---|---|
LIKELY_SAFE_TYPE_UNSPECIFIED |
לא ידוע. |
GENERAL_BROWSING |
האתר הזה כנראה בטוח מספיק לגלישה כללית. התכונה הזאת נקראת גם 'מטמון גלובלי'. |
CSD |
האתר הזה כנראה בטוח מספיק כך שאין צורך להפעיל מודלים של זיהוי בצד הלקוח או בדיקות של הגנה באמצעות סיסמה. |
DOWNLOAD |
האתר הזה כנראה בטוח מספיק ולכן אין צורך לבדוק הורדות מהאתר. |
HashLength
אורך הגיבובים ברשימת גיבובים.
טיפוסים בני מנייה (enum) | |
---|---|
HASH_LENGTH_UNSPECIFIED |
האורך לא צוין. השרת לא יחזיר את הערך הזה בתגובות ללקוח (בשדה supportedHashLengths ), אבל הלקוח רשאי לשלוח את הערך הזה לשרת (בשדה desiredHashLength ). במקרה כזה השרת יבחר ערך באופן אוטומטי. הלקוחות צריכים לאפשר לשרת לבחור ערך. |
FOUR_BYTES |
כל גיבוב הוא קידומת של ארבעה בייטים. |
EIGHT_BYTES |
כל גיבוב הוא קידומת של שמונה בייטים. |
SIXTEEN_BYTES |
כל גיבוב הוא קידומת של שישה-עשר בייטים. |
THIRTY_TWO_BYTES |
כל גיבוב הוא גיבוב (hash) מלא של שלושים בייטים. |
שיטות |
|
---|---|
|
קבלת התוכן העדכני ביותר של רשימת גיבוב (hash). |