- Zasób: HashList
- RiceDeltaEncoded32Bit
- RiceDeltaEncoded64Bit
- RiceDeltaEncoded128Bit
- RiceDeltaEncoded256Bit
- HashListMetadata
- ThreatType
- LikelySafeType
- HashLength
- Metody
Zasób: HashList
Lista haszy zidentyfikowanych po nazwie.
Zapis JSON |
---|
{ "name": string, "version": string, "partialUpdate": boolean, "compressedRemovals": { object ( |
Pola | |
---|---|
name |
Nazwa listy haszy. Pamiętaj, że globalny bufor jest również tylko listą haszy i może być tutaj używany. |
version |
Wersja listy haszy. Klient NIE MOŻE manipulować tymi bajtami. Ciąg znaków zakodowany w formacie Base64. |
partialUpdate |
Jeśli wartość jest prawdziwa, jest to różnica częściowa zawierająca dodatki i usunięcia na podstawie tego, co klient już ma. Jeśli jest ustawione na false, jest to pełna lista haszy. Jeśli jest ustawiona na wartość fałsz, klient MUSI usunąć wszystkie wersje zapisane lokalnie dla tej listy haszy. Oznacza to, że wersja klienta jest bardzo przestarzała lub dane klienta są uszkodzone. Pole Jeśli wartość to prawda, klient MUSI zastosować aktualizację przyrostową, najpierw stosując usunięcia, a potem dodania. |
compressedRemovals |
Wersja kodowana według metody Rice-delta indeksów usuwania. Każda lista haszy ma mniej niż 2^32 pozycji, więc indeksy są traktowane jako 32-bitowe liczby całkowite i kodowane. |
minimumWaitDuration |
Klienci powinni odczekać co najmniej tyle, aby ponownie uzyskać listę haszy. Jeśli wartość jest pominięta lub wynosi 0, klienci POWINNI odświeżyć dane natychmiast, ponieważ oznacza to, że serwer ma dodatkowe informacje do wysłania do klienta, ale nie mógł tego zrobić z powodu ograniczeń określonych przez klienta. Czas w sekundach z maksymalnie 9 miejscami po przecinku, zakończony literą „ |
sha256Checksum |
Posortowana lista wszystkich haszy, zaszyfrowanych ponownie za pomocą algorytmu SHA256. Jest to suma kontrolna posortowanej listy wszystkich haszy obecnych w bazie danych po zastosowaniu dostarczonej aktualizacji. Jeśli nie zostały przesłane żadne aktualizacje, serwer pominie to pole, aby wskazać, że klient powinien użyć istniejącej sumy kontrolnej. Ciąg znaków zakodowany w formacie Base64. |
metadata |
metadane dotyczące listy haszy; Nie jest ono wypełniane za pomocą metody |
Pole unii compressed_additions . Wersja dodatków zakodowana metodą Rice-delta. Długości prefiksów haszy wszystkich dodatków na liście są takie same. compressed_additions może być tylko jednym z tych elementów: |
|
additionsFourBytes |
Dodatki 4-bajtowe. |
additionsEightBytes |
Dodatki 8-bajtowe. |
additionsSixteenBytes |
Dodatki 16-bajtowe. |
additionsThirtyTwoBytes |
Dodatki 32-bajtowe. |
RiceDeltaEncoded32Bit
Dane zakodowane za pomocą algorytmu Rice-Golomb. Służy do haszów lub indeksów usuwania. Gwarantuje się, że każdy z tych haszy lub indeksów ma taką samą długość, która wynosi dokładnie 32 bity.
Ogólnie rzecz biorąc, jeśli posortujemy wszystkie wpisy w kolejności alfabetycznej, zauważymy, że bity o większej mocy nie zmieniają się tak często jak bity o mniejszej mocy. Oznacza to, że jeśli weźmiemy pod uwagę różnicę między sąsiednimi wpisami, bity o wyższym priorytecie z dużym prawdopodobieństwem będą miały wartość 0. Wykorzystuje to wysokie prawdopodobieństwo wystąpienia zera, wybierając określoną liczbę bitów. Wszystkie bity o większym znaczeniu niż ten prawdopodobnie będą równe zeru, więc używamy kodowania jednobitowego. Zapoznaj się z polem riceParameter
.
Uwaga historyczna: kodowanie Rice-delta zostało po raz pierwszy użyte w wersji 4 tego interfejsu API. W wersji 5 wprowadzono 2 istotne ulepszenia: po pierwsze, kodowanie Rice-delta jest teraz dostępne z prefiksami szyfrowania dłuższymi niż 4 bajty; po drugie, zakodowane dane są teraz traktowane jako duże, aby uniknąć czasochłonnego etapu sortowania.
Zapis JSON |
---|
{ "firstValue": integer, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Pola | |
---|---|
firstValue |
Pierwszy wpis w zakodowanych danych (hasze lub indeksy) albo, jeśli zakodowano tylko jeden prefiks haszowania lub indeks, wartość tego wpisu. Jeśli pole jest puste, wpis ma wartość 0. |
riceParameter |
Parametr Golomb-Rice. Wartość tego parametru musi mieścić się w przedziale od 3 do 30 włącznie. |
entriesCount |
Liczba wpisów zakodowanych w danych zakodowanych. Jeśli zakodowana została tylko jedna liczba całkowita, będzie ona równa 0, a jedyna wartość zostanie zapisana w polu |
encodedData |
zakodowane delty, które są kodowane za pomocą kodera Golomb-Rice; Ciąg znaków zakodowany w formacie Base64. |
RiceDeltaEncoded64Bit
To samo co RiceDeltaEncoded32Bit
, ale koduje liczby 64-bitowe.
Zapis JSON |
---|
{ "firstValue": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Pola | |
---|---|
firstValue |
Pierwszy wpis w zakodowanych danych (haszach) lub, jeśli zakodowano tylko jeden prefiks haszowania, wartość tego wpisu. Jeśli pole jest puste, wpis ma wartość 0. |
riceParameter |
Parametr Golomb-Rice. Parametr ten musi zawierać się w przedziale od 35 do 62 włącznie. |
entriesCount |
Liczba wpisów zakodowanych w danych zakodowanych. Jeśli zakodowana została tylko jedna liczba całkowita, będzie ona równa 0, a jedyna wartość zostanie zapisana w polu |
encodedData |
zakodowane delty, które są kodowane za pomocą kodera Golomb-Rice; Ciąg znaków zakodowany w formacie Base64. |
RiceDeltaEncoded128Bit
To samo co RiceDeltaEncoded32Bit
, z tą różnicą, że koduje liczby 128-bitowe.
Zapis JSON |
---|
{ "firstValueHi": string, "firstValueLo": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Pola | |
---|---|
firstValueHi |
Górne 64 bity pierwszego wpisu w zakodowanych danych (haszy). Jeśli pole jest puste, 64 górne bity są ustawione na 0. |
firstValueLo |
64 najniższe bity pierwszego wpisu w zakodowanych danych (haszy). Jeśli pole jest puste, 64 najniższe bity są ustawione na 0. |
riceParameter |
Parametr Golomb-Rice. Wartość tego parametru musi mieścić się w przedziale od 99 do 126 włącznie. |
entriesCount |
Liczba wpisów zakodowanych w danych zakodowanych. Jeśli zakodowana została tylko jedna liczba całkowita, będzie ona równa 0, a jedyna wartość zostanie zapisana w polu |
encodedData |
zakodowane delty, które są kodowane za pomocą kodera Golomb-Rice; Ciąg znaków zakodowany w formacie Base64. |
RiceDeltaEncoded256Bit
To samo co RiceDeltaEncoded32Bit
, z tą różnicą, że koduje liczby 256-bitowe.
Zapis JSON |
---|
{ "firstValueFirstPart": string, "firstValueSecondPart": string, "firstValueThirdPart": string, "firstValueFourthPart": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Pola | |
---|---|
firstValueFirstPart |
Pierwsze 64 bity pierwszego wpisu w zakodowanych danych (haszy). Jeśli pole jest puste, pierwsze 64 bity są wszystkie zerami. |
firstValueSecondPart |
65–128 bity pierwszego wpisu w zakodowanych danych (hasze). Jeśli pole jest puste, bity od 65. do 128. są ustawione na 0. |
firstValueThirdPart |
129–192 bity pierwszego wpisu w zakodowanych danych (hasze). Jeśli pole jest puste, bity od 129 do 192 mają wartość 0. |
firstValueFourthPart |
Ostatnie 64 bity pierwszego wpisu w zaszyfrowanych danych (hasze). Jeśli pole jest puste, ostatnie 64 bity są ustawione na 0. |
riceParameter |
Parametr Golomb-Rice. Wartość tego parametru musi mieścić się w przedziale od 227 do 254 (włącznie). |
entriesCount |
Liczba wpisów zakodowanych w danych zakodowanych. Jeśli zakodowana została tylko jedna liczba całkowita, będzie ona równa 0, a jedyna wartość zostanie zapisana w polu |
encodedData |
zakodowane delty, które są kodowane za pomocą kodera Golomb-Rice; Ciąg znaków zakodowany w formacie Base64. |
HashListMetadata
Metadane dotyczące konkretnej listy haszy.
Zapis JSON |
---|
{ "threatTypes": [ enum ( |
Pola | |
---|---|
threatTypes[] |
Lista nieuporządkowana. Jeśli nie jest pusta, określa, że lista haszy jest rodzajem listy zagrożeń i wylicza rodzaje zagrożeń powiązanych z haszami lub prefiksami haszy na tej liście. Może być pusty, jeśli wpis nie stanowi zagrożenia, czyli jest to prawdopodobnie bezpieczny typ. |
likelySafeTypes[] |
Lista nieuporządkowana. Jeśli nie jest pusty, określa, że lista haszy reprezentuje listę prawdopodobnie bezpiecznych haszy i wylicza sposoby, na jakie są one uznawane za bezpieczne. To pole wyklucza się z polem threatTypes. |
description |
Zrozumiały dla człowieka opis tej listy. musi być napisany w języku angielskim. |
hashLength |
Obsługiwana długość hasha na tej liście haszy. Każda lista haszy będzie obsługiwać dokładnie jedną długość. Jeśli dla tego samego zbioru typów zagrożeń lub typów bezpiecznych wprowadzimy inną długość hasha, zostanie ona dodana jako osobna lista z odrębną nazwą i odpowiednim zbiorem długości hasha. |
ThreatType
Rodzaje zagrożeń
Wartości w polu enum | |
---|---|
THREAT_TYPE_UNSPECIFIED |
Nieznany typ zagrożenia. Jeśli serwer zwróci ten kod, klient powinien całkowicie zignorować otoczkę FullHashDetail . |
MALWARE |
Typ zagrożenia związanego ze złośliwym oprogramowaniem. Termin „złośliwe oprogramowanie” odnosi się do programów komputerowych lub aplikacji mobilnych zaprojektowanych specjalnie w celu zaszkodzenia użytkownikom lub zakłócania pracy komputera, urządzenia mobilnego bądź zainstalowanych na nim aplikacji. Działanie złośliwego oprogramowania objawia się instalowaniem programów bez zgody użytkownika lub instalowaniem szkodliwych aplikacji, np. wirusów. Więcej informacji znajdziesz tutaj. |
SOCIAL_ENGINEERING |
Typ zagrożenia związanego z inżynierią społeczną. Strony wykorzystujące inżynierię społeczną podają się za osoby działające w imieniu osób trzecich, aby zdezorientować widzów i nakłonić ich do wykonania czynności, do której wykonania widzowie zaufaliby tylko prawdziwemu przedstawicielowi danej osoby trzeciej. Phishing to rodzaj inżynierii społecznej, który podstępem nakłania widza do wykonania określonego działania, np. podania informacji, takich jak dane logowania. Więcej informacji znajdziesz tutaj. |
UNWANTED_SOFTWARE |
Typ zagrożenia związanego z niechcianym oprogramowaniem. Niechciane oprogramowanie to dowolne oprogramowanie, które nie jest zgodne z zasadami Google dotyczącymi oprogramowania, ale nie jest złośliwym oprogramowaniem. |
POTENTIALLY_HARMFUL_APPLICATION |
Typ zagrożenia związanego z potencjalnie szkodliwą aplikacją wykorzystywany przez Google Play Protect w Sklepie Play. |
LikelySafeType
Typy bezpiecznych witryn
Uwaga: SearchHashesResponse
celowo nie zawiera LikelySafeType
.
Wartości w polu enum | |
---|---|
LIKELY_SAFE_TYPE_UNSPECIFIED |
Nieznany. |
GENERAL_BROWSING |
Ta witryna jest prawdopodobnie wystarczająco bezpieczna do ogólnego przeglądania. Jest to tak zwana pamięć podręczna globalna. |
CSD |
Ta strona jest prawdopodobnie na tyle bezpieczna, że nie trzeba uruchamiać modeli wykrywania po stronie klienta ani sprawdzać ochrony hasłem. |
DOWNLOAD |
Ta strona jest prawdopodobnie na tyle bezpieczna, że nie trzeba sprawdzać plików pobieranych z niej. |
HashLength
Długość haszy na liście haszy.
Wartości w polu enum | |
---|---|
HASH_LENGTH_UNSPECIFIED |
Nieokreślona długość. |
FOUR_BYTES |
Każdy hasz to 4-bajtowy prefiks. |
EIGHT_BYTES |
Każdy skrót jest 8-bajtowym prefiksem. |
SIXTEEN_BYTES |
Każdy skrót jest 16-bajtowym prefiksem. |
THIRTY_TWO_BYTES |
Każdy hasz to 32-bajtowy pełny hasz. |
Metody |
|
---|---|
|
Pobierz najnowsze treści z listy haszy. |