- Ressource: HashList
- RiceDeltaEncoded32Bit
- RiceDeltaEncoded64Bit
- RiceDeltaEncoded128Bit
- RiceDeltaEncoded256Bit
- HashListMetadata
- ThreatType
- LikelySafeType
- HashLength
- Methoden
Ressource: HashList
Eine Liste von Hashes, die durch ihren Namen identifiziert werden.
| JSON-Darstellung |
|---|
{ "name": string, "version": string, "partialUpdate": boolean, "compressedRemovals": { object ( |
| Felder | |
|---|---|
name |
Der Name der Hash-Liste. Beachten Sie, dass der globale Cache auch nur eine Hashliste ist und hier darauf verwiesen werden kann. |
version |
Die Version der Hash-Liste. Der Client DARF diese Bytes NICHT manipulieren. Ein base64-codierter String. |
partialUpdate |
Wenn „true“, handelt es sich um einen partiellen Unterschied, der auf dem basiert, was der Client bereits hat, und der Ergänzungen und Entfernungen enthält. Wenn „false“, ist dies die vollständige Hash-Liste. Wenn „false“, MUSS der Client alle lokal gespeicherten Versionen für diese Hash-Liste löschen. Das bedeutet, dass die Version, die der Client besitzt, entweder stark veraltet ist oder die Clientdaten beschädigt sind. Das Feld Wenn „true“ festgelegt ist, MUSS der Client ein inkrementelles Update durchführen, indem er zuerst Entfernungen und dann Ergänzungen anwendet. |
compressedRemovals |
Die Rice-Delta-codierte Version der Entfernungsindexe. Da jede Hash-Liste definitiv weniger als 2^32 Einträge hat, werden die Indexe als 32-Bit-Ganzzahlen behandelt und codiert. |
minimumWaitDuration |
Clients sollten mindestens so lange warten, bis sie die Hash-Liste wieder abrufen. Wenn der Wert ausgelassen oder null ist, SOLLTEN Clients die Daten sofort abrufen, da dies darauf hinweist, dass der Server ein zusätzliches Update für den Client hat, das aufgrund der vom Client angegebenen Einschränkungen nicht gesendet werden konnte. Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „ |
sha256Checksum |
Die sortierte Liste aller Hashes, die noch einmal mit SHA256 gehasht wurden. Dies ist die Prüfsumme für die sortierte Liste aller Hashes, die nach der Anwendung des bereitgestellten Updates in der Datenbank vorhanden sind. Wenn keine Updates bereitgestellt wurden, lässt der Server dieses Feld aus, um anzugeben, dass der Client die vorhandene Prüfsumme verwenden soll. Ein base64-codierter String. |
metadata |
Metadaten zur Hash-Liste. Diese wird nicht von der Methode |
Union-Feld compressed_additions. Die Rice-Delta-codierte Version der Ergänzungen. Die Hash-Präfixlängen der Ergänzungen sind für alle Ergänzungen in der Liste einheitlich. Für compressed_additions ist nur einer der folgenden Werte zulässig: |
|
additionsFourBytes |
Die 4-Byte-Ergänzungen. |
additionsEightBytes |
Die 8‑Byte-Ergänzungen. |
additionsSixteenBytes |
Die 16‑Byte-Ergänzungen. |
additionsThirtyTwoBytes |
Die 32-Byte-Ergänzungen. |
RiceDeltaEncoded32Bit
Die Rice-Golomb-codierten Daten. Wird für Hashes oder Entfernungsindizes verwendet. Jeder Hash oder Index hier hat garantiert dieselbe Länge, nämlich genau 32 Bit.
Wenn wir alle Einträge lexikografisch sortieren, stellen wir fest, dass sich die höherwertigen Bits in der Regel nicht so häufig ändern wie die niederwertigen Bits. Wenn wir also auch die angrenzende Differenz zwischen Einträgen berücksichtigen, ist die Wahrscheinlichkeit, dass die höherwertigen Bits null sind, hoch. Dabei wird die hohe Wahrscheinlichkeit von Null ausgenutzt, indem eine bestimmte Anzahl von Bits ausgewählt wird. Alle Bits, die signifikanter als diese sind, sind wahrscheinlich Null, daher verwenden wir die Unärcode. Sehen Sie sich das Feld riceParameter an.
Historischer Hinweis: Die Rice-Delta-Codierung wurde erstmals in Version 4 dieser API verwendet. In Version 5 wurden zwei wichtige Verbesserungen vorgenommen: Erstens ist die Rice-Delta-Codierung jetzt mit Hash-Präfixen verfügbar, die länger als 4 Byte sind. Zweitens werden die codierten Daten jetzt als Big-Endian behandelt, um einen kostspieligen Sortierschritt zu vermeiden.
| JSON-Darstellung |
|---|
{ "firstValue": integer, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
| Felder | |
|---|---|
firstValue |
Der erste Eintrag in den codierten Daten (Hashes oder Indexe) oder, falls nur ein einzelnes Hash-Präfix oder ein einzelner Index codiert wurde, der Wert dieses Eintrags. Wenn das Feld leer ist, ist der Eintrag null. |
riceParameter |
Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 3 und 30 (einschließlich). |
entriesCount |
Die Anzahl der Einträge, die in den codierten Daten delta-codiert sind. Wenn nur eine einzelne Ganzzahl codiert wurde, ist dieser Wert null und der einzelne Wert wird in |
encodedData |
Die codierten Deltas, die mit dem Golomb-Rice-Coder codiert werden. Ein base64-codierter String. |
RiceDeltaEncoded64Bit
Wie RiceDeltaEncoded32Bit, nur dass hier 64-Bit-Zahlen codiert werden.
| JSON-Darstellung |
|---|
{ "firstValue": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
| Felder | |
|---|---|
firstValue |
Der erste Eintrag in den codierten Daten (Hashes) oder, falls nur ein einzelnes Hash-Präfix codiert wurde, der Wert dieses Eintrags. Wenn das Feld leer ist, ist der Eintrag null. |
riceParameter |
Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 35 und 62 (einschließlich). |
entriesCount |
Die Anzahl der Einträge, die in den codierten Daten delta-codiert sind. Wenn nur eine einzelne Ganzzahl codiert wurde, ist dieser Wert null und der einzelne Wert wird in |
encodedData |
Die codierten Deltas, die mit dem Golomb-Rice-Coder codiert werden. Ein base64-codierter String. |
RiceDeltaEncoded128Bit
Wie RiceDeltaEncoded32Bit, nur dass hier 128-Bit-Zahlen codiert werden.
| JSON-Darstellung |
|---|
{ "firstValueHi": string, "firstValueLo": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
| Felder | |
|---|---|
firstValueHi |
Die oberen 64 Bit des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die oberen 64 Bits alle null. |
firstValueLo |
Die unteren 64 Bit des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die unteren 64 Bit alle null. |
riceParameter |
Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 99 und 126 (einschließlich). |
entriesCount |
Die Anzahl der Einträge, die in den codierten Daten delta-codiert sind. Wenn nur eine einzelne Ganzzahl codiert wurde, ist dieser Wert null und der einzelne Wert wird in |
encodedData |
Die codierten Deltas, die mit dem Golomb-Rice-Coder codiert werden. Ein base64-codierter String. |
RiceDeltaEncoded256Bit
Wie RiceDeltaEncoded32Bit, nur dass hier 256-Bit-Zahlen codiert werden.
| JSON-Darstellung |
|---|
{ "firstValueFirstPart": string, "firstValueSecondPart": string, "firstValueThirdPart": string, "firstValueFourthPart": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
| Felder | |
|---|---|
firstValueFirstPart |
Die ersten 64 Bit des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die ersten 64 Bits alle null. |
firstValueSecondPart |
Die 65. bis 128. Bits des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die Bits 65 bis 128 alle null. |
firstValueThirdPart |
Die Bits 129 bis 192 des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die Bits 129 bis 192 alle null. |
firstValueFourthPart |
Die letzten 64 Bit des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die letzten 64 Bits alle null. |
riceParameter |
Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 227 und 254 (einschließlich). |
entriesCount |
Die Anzahl der Einträge, die in den codierten Daten delta-codiert sind. Wenn nur eine einzelne Ganzzahl codiert wurde, ist dieser Wert null und der einzelne Wert wird in |
encodedData |
Die codierten Deltas, die mit dem Golomb-Rice-Coder codiert werden. Ein base64-codierter String. |
HashListMetadata
Metadaten zu einer bestimmten Hash-Liste.
| JSON-Darstellung |
|---|
{ "threatTypes": [ enum ( |
| Felder | |
|---|---|
threatTypes[] |
Unsortierte Liste. Wenn diese Liste nicht leer ist, gibt sie an, dass die Hash-Liste eine Art Bedrohungsliste ist. Außerdem werden die Arten von Bedrohungen aufgeführt, die mit Hashes oder Hash-Präfixen in dieser Hash-Liste verknüpft sind. Kann leer sein, wenn der Eintrag keine Bedrohung darstellt, z.B. wenn er einen wahrscheinlich sicheren Typ darstellt. |
likelySafeTypes[] |
Unsortierte Liste. Wenn diese Liste nicht leer ist, gibt sie an, dass die Hash-Liste eine Liste wahrscheinlich sicherer Hashes darstellt. Außerdem werden die Gründe dafür aufgeführt, warum sie als wahrscheinlich sicher gelten. Dieses Feld schließt das Feld „threatTypes“ aus. |
description |
Eine für Menschen lesbare Beschreibung dieser Liste. Auf Englisch verfasst. |
hashLength |
Die unterstützte Hashlänge für diese Hashliste. Jede Hash-Liste unterstützt genau eine Länge. Wenn für dieselben Arten von Bedrohungen oder sicheren Typen eine andere Hash-Länge eingeführt wird, wird sie als separate Liste mit einem eindeutigen Namen und der entsprechenden Hash-Länge eingeführt. |
ThreatType
Arten von Bedrohungen.
| Enums | |
|---|---|
THREAT_TYPE_UNSPECIFIED |
Unbekannter Bedrohungstyp. Wenn dies vom Server zurückgegeben wird, muss der Client das umschließende FullHashDetail ignorieren. |
MALWARE |
Malware-Bedrohungstyp. Malware ist eine Software oder mobile App, die speziell dazu entwickelt wurde, einem Computer, einem Mobilgerät, der darauf ausgeführten Software oder deren Nutzern zu schaden. Malware weist bösartiges Verhalten auf und installiert unter anderem Software ohne das Einverständnis des Nutzers sowie schädliche Software wie Viren. Weitere Informationen findest du hier. |
SOCIAL_ENGINEERING |
Social-Engineering-Bedrohungstyp. Auf Social Engineering-Seiten wird fälschlicherweise behauptet, dass sie im Namen eines Dritten handeln. Zuschauer sollen so dazu gebracht werden, eine Aktion auszuführen, die sie nur einem echten Vertreter dieses Dritten anvertrauen würden. Phishing ist eine Form von Social Engineering, bei der der Zuschauer durch Täuschung dazu gebracht werden soll, bestimmte Informationen wie Anmeldedaten preiszugeben. Weitere Informationen findest du hier. |
UNWANTED_SOFTWARE |
Bedrohungstyp „Unerwünschte Software“. Unerwünschte Software ist Software, die nicht den Software-Prinzipien von Google entspricht, aber keine Malware ist. |
POTENTIALLY_HARMFUL_APPLICATION |
Der Bedrohungstyp „Potenziell schädliche App“ wie er von Google Play Protect für den Play Store verwendet wird. |
LikelySafeType
Arten von Websites, die wahrscheinlich sicher sind.
Beachten Sie, dass SearchHashesResponse absichtlich nicht LikelySafeType enthält.
| Enums | |
|---|---|
LIKELY_SAFE_TYPE_UNSPECIFIED |
Unbekannt |
GENERAL_BROWSING |
Diese Website ist wahrscheinlich sicher genug für das allgemeine Surfen. Dies wird auch als globaler Cache bezeichnet. |
CSD |
Diese Website ist wahrscheinlich sicher genug, sodass keine clientseitigen Erkennungsmodelle oder Passwortschutzprüfungen ausgeführt werden müssen. |
DOWNLOAD |
Diese Website ist wahrscheinlich sicher genug, sodass Downloads von der Website nicht geprüft werden müssen. |
HashLength
Die Länge von Hashes in einer Hash-Liste.
| Enums | |
|---|---|
HASH_LENGTH_UNSPECIFIED |
Nicht angegebene Länge. |
FOUR_BYTES |
Jeder Hash ist ein 4‑Byte-Präfix. |
EIGHT_BYTES |
Jeder Hash ist ein Acht-Byte-Präfix. |
SIXTEEN_BYTES |
Jeder Hash ist ein 16‑Byte-Präfix. |
THIRTY_TWO_BYTES |
Jeder Hash ist ein 32 Byte langer vollständiger Hash. |
Methoden |
|
|---|---|
|
Ruft die aktuellen Inhalte einer Hash-Liste ab. |