Package google.security.safebrowsing.v5alpha1

Index

SafeBrowsing

Mit den Safe Browsing APIs können Clients Webressourcen (in der Regel URLs) mit den ständig aktualisierten Listen unsicherer Webressourcen von Google abgleichen.

BatchGetHashLists

rpc BatchGetHashLists(BatchGetHashListsRequest) returns (BatchGetHashListsResponse)

Mehrere Hash-Listen gleichzeitig abrufen

Es ist sehr häufig, dass ein Client mehrere Hash-Listen abrufen muss. Die Verwendung dieser Methode ist vorzuziehen, anstatt die reguläre Get-Methode mehrmals zu verwenden.

Dies ist eine standardmäßige Batch-Get-Methode gemäß https://google.aip.dev/231 und die HTTP-Methode ist ebenfalls GET.

GetHashList

rpc GetHashList(GetHashListRequest) returns (HashList)

Ruft den aktuellen Inhalt einer Hash-Liste ab. Eine Hash-Liste kann entweder eine Bedrohungsliste oder eine Liste ohne Bedrohung sein, z. B. der globale Cache.

Dies ist eine standardmäßige Get-Methode gemäß https://google.aip.dev/131 und die HTTP-Methode ist ebenfalls GET.

ListHashLists

rpc ListHashLists(ListHashListsRequest) returns (ListHashListsResponse)

Hash-Listen auflisten

In der V5 API entfernt Google niemals eine Hashliste, die jemals von dieser Methode zurückgegeben wurde. So können Clients diese Methode überspringen und alle erforderlichen Hash-Listen einfach hartcodieren.

Dies ist eine Standard-Listmethode gemäß https://google.aip.dev/132 und die HTTP-Methode ist GET.

SearchHashes

rpc SearchHashes(SearchHashesRequest) returns (SearchHashesResponse)

Es wird nach vollständigen Hashes gesucht, die mit den angegebenen Präfixen übereinstimmen.

Dies ist eine benutzerdefinierte Methode gemäß https://google.aip.dev/136. Die benutzerdefinierte Methode bezieht sich auf diese Methode, die einen benutzerdefinierten Namen innerhalb der allgemeinen Nomenklatur für die API-Entwicklung von Google hat. Sie bezieht sich nicht auf die Verwendung einer benutzerdefinierten HTTP-Methode.

BatchGetHashListsRequest

Die Anfrage zum Abrufen mehrerer Hashlisten gleichzeitig.

Felder
names[]

string

Erforderlich. Die Namen der jeweiligen Hash-Listen. Es kann sich um eine Bedrohungsliste oder um den globalen Cache handeln. Die Namen dürfen KEINE doppelten Einträge enthalten. Andernfalls erhält der Kunde eine Fehlermeldung.

version[]

bytes

Die Versionen der Hash-Liste, die der Client bereits hat. Wenn der Client die Hash-Listen zum ersten Mal abruft, sollte das Feld leer bleiben. Andernfalls sollte der Client die Versionen angeben, die er zuvor vom Server erhalten hat. Der Client darf diese Bytes NICHT manipulieren.

Der Client muss die Versionen nicht in der Reihenfolge der entsprechenden Listennamen senden. Der Client kann in einer Anfrage weniger oder mehr Versionen senden, als es Namen gibt. Der Client darf jedoch KEINE mehrere Versionen mit demselben Namen senden. Andernfalls erhält der Client eine Fehlermeldung.

Hinweis zur Versionsgeschichte: In Version 4 der API hieß dieses Feld states. Es wurde aus Gründen der Klarheit in version umbenannt.

desired_hash_length
(deprecated)

HashLength

Die gewünschte Hash-Präfixlänge der zurückgegebenen Hashes in Byte. Der Server gibt dann alle Hash-Präfixe mit dieser angegebenen Länge zurück.

Für verschiedene Hash-Listen gelten unterschiedliche Anforderungen an die zulässigen Werte des Felds desired_hash_length. Sie finden ihn in HashListMetadata im Feld supported_hash_lengths. Wenn für desired_hash_length kein Wert innerhalb von supported_hash_lengths angegeben ist, wird für Clients ein Fehler zurückgegeben.

Insbesondere ist es für Clients nicht möglich, für verschiedene Listen eine unterschiedliche desired_hash_length anzugeben.BatchGetHashListsRequest Falls erforderlich, sollte der Kunde die BatchGetHashListsRequest in mehrere Teile aufteilen.

size_constraints

SizeConstraints

Die Größenbeschränkungen für jede Liste. Wenn sie weggelassen wird, gelten keine Einschränkungen. Die hier aufgeführten Größen beziehen sich auf einzelne Listen und nicht auf alle Listen zusammen.

BatchGetHashListsResponse

Die Antwort enthält mehrere Hash-Listen.

Felder
hash_lists[]

HashList

Die Hash-Listen in der Reihenfolge, die in der Anfrage angegeben ist.

FullHash

Der vollständige Hashwert, der mit einer oder mehreren Übereinstimmungen identifiziert wurde.

Felder
full_hash

bytes

Der übereinstimmende vollständige Hash. Das ist der SHA256-Hash. Die Länge beträgt genau 32 Byte.

full_hash_details[]

FullHashDetail

Unsortierte Liste. Ein wiederholtes Feld, das die für diesen vollständigen Hash relevanten Details angibt.

FullHashDetail

Details zu einem übereinstimmenden vollständigen Hash.

Wichtiger Hinweis zur Zukunftssicherheit: Neue Bedrohungstypen und Bedrohungsattribute können vom Server jederzeit hinzugefügt werden. Diese Ergänzungen gelten als Versionsänderungen der Nebenversion. Gemäß der Google-Richtlinie dürfen Nebenversionsnummern nicht in APIs freigegeben werden (siehe https://cloud.google.com/apis/design/versioning). Clients müssen also darauf vorbereitet sein, FullHashDetail-Nachrichten mit ThreatType- oder ThreatAttribute-Enum-Werten zu erhalten, die vom Client als ungültig betrachtet werden. Daher liegt es in der Verantwortung des Clients, die Gültigkeit aller ThreatType- und ThreatAttribute-Enum-Werte zu prüfen. Wenn ein Wert als ungültig eingestuft wird, MUSS der Client die gesamte FullHashDetail-Nachricht ignorieren.

Felder
threat_type

ThreatType

Die Art der Bedrohung. Dieses Feld ist immer ausgefüllt.

attributes[]

ThreatAttribute

Unsortierte Liste. Zusätzliche Attribute zu diesen vollständigen Hash-Werten. Dieses Feld kann leer sein.

GetHashListRequest

Eine Anfrage zum Abrufen einer Hash-Liste, die eine Bedrohungsliste oder eine Liste ohne Bedrohungen wie der globale Cache sein kann.

Neu in Version 5: Was in Version 4 states hieß, wurde aus Gründen der besseren Übersichtlichkeit in version umbenannt. Listen haben jetzt einen Namen, Plattformtypen und Typen von Bedrohungseinträgen wurden entfernt. Es ist jetzt möglich, dass mehrere Listen denselben Bedrohungstyp haben oder dass eine einzelne Liste mehrere Bedrohungstypen umfasst. Kunden können jetzt eine gewünschte Hash-Länge angeben. Dies ist Teil der Antwort auf die Hash-Präfixe mit variabler Länge von Version 4, die bei vielen Clientimplementierungen zu Problemen geführt haben: Alle Hashes in einer Liste haben jetzt dieselbe Länge, was viel effizientere Clientimplementierungen ermöglicht. Die Einschränkungen wurden vereinfacht und der Komprimierungstyp wurde entfernt (Komprimierung wird immer angewendet).

Felder
name

string

Erforderlich. Der Name dieser Hash-Liste. Es kann sich um eine Bedrohungsliste oder den globalen Cache handeln.

version

bytes

Die Version der Hash-Liste, die der Client bereits hat. Wenn der Client die Hash-Liste zum ersten Mal abruft, MUSS dieses Feld leer sein. Andernfalls MUSS der Client die Version angeben, die er zuvor vom Server erhalten hat. Der Client darf diese Bytes NICHT manipulieren.

Neuerungen in Version 5: In Version 4 der API hieß dieses Feld states. Es wurde aus Gründen der Klarheit in version umbenannt.

desired_hash_length
(deprecated)

HashLength

Die gewünschte Hash-Präfixlänge der zurückgegebenen Hashes in Byte. Der Server gibt dann alle Hash-Präfixe mit dieser angegebenen Länge zurück.

Für verschiedene Hash-Listen gelten unterschiedliche Anforderungen an die zulässigen Werte des Felds desired_hash_length. Sie finden ihn in HashListMetadata im Feld supported_hash_lengths. Wenn für desired_hash_length kein Wert innerhalb von supported_hash_lengths angegeben ist, wird ein Fehler zurückgegeben.

size_constraints

SizeConstraints

Die Größenbeschränkungen für die Liste. Wenn sie weggelassen wird, gelten keine Einschränkungen. Einschränkungen werden für alle Geräte mit begrenzter Verarbeitungsleistung, Bandbreite oder Speicher empfohlen.

HashList

Eine Liste von Hashes, die anhand ihres Namens identifiziert werden.

Felder
name

string

Der Name der Hash-Liste. Der globale Cache ist ebenfalls nur eine Hashliste und kann hier referenziert werden.

version

bytes

Die Version der Hash-Liste. Der Client darf diese Bytes NICHT manipulieren.

partial_update

bool

Wenn „true“ ist, handelt es sich um eine teilweise Differenz, die Ergänzungen und Entfernungen enthält, die auf dem bereits vorhandenen Inhalt des Clients basieren. Wenn „false“ ist, ist dies die vollständige Hash-Liste.

Wenn „false“ ist, MUSS der Client alle lokal gespeicherten Versionen für diese Hashliste löschen. Das bedeutet, dass entweder die Version des Clients stark veraltet ist oder die Clientdaten beschädigt sind. Das Feld compressed_removals ist leer.

Wenn „true“ angegeben ist, MUSS der Client ein inkrementelles Update anwenden, indem er zuerst Elemente entfernt und dann hinzufügt.

compressed_removals

RiceDeltaEncoded32Bit

Die mit Rice-Delta codierte Version von Entfernungsindexen. Da jede Hashliste weniger als 2^32 Einträge hat, werden die Indizes als 32‑Bit-Ganzzahlen behandelt und codiert.

minimum_wait_duration

Duration

Clients sollten mindestens so lange warten, um die Hash-Liste noch einmal abzurufen. Wenn dieser Parameter weggelassen oder null ist, MÜSSEN Clients ihn sofort abrufen, da dies darauf hinweist, dass der Server ein zusätzliches Update an den Client senden kann, dies aber aufgrund der vom Client angegebenen Einschränkungen nicht konnte.

sha256_checksum

bytes

Die sortierte Liste aller Hashes, die noch einmal mit SHA256 gehasht werden. Dies ist die Prüfsumme für die sortierte Liste aller Hashes, die nach dem Anwenden 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.

metadata

HashListMetadata

Metadaten zur Hashliste. Dieser Wert wird nicht mit der Methode GetHashList, sondern mit der Methode ListHashLists ausgefüllt.

Union-Feld compressed_additions. Die mit Rice-Delta codierte Version der Ergänzungen. Die Länge der Hash-Präfixe von Ergänzungen ist für alle Ergänzungen in der Liste gleich. Es ist entweder der vom Client gesendete desired_hash_length oder ein vom Server ausgewählter Wert, wenn der Client dieses Feld ausgelassen hat. Für compressed_additions ist nur einer der folgenden Werte zulässig:
additions_four_bytes

RiceDeltaEncoded32Bit

Die 4-Byte-Zusätze.

additions_eight_bytes

RiceDeltaEncoded64Bit

Die 8-Byte-Zusätze.

additions_sixteen_bytes

RiceDeltaEncoded128Bit

Die 16-Byte-Zusätze.

additions_thirty_two_bytes

RiceDeltaEncoded256Bit

Die 32-Byte-Zusätze.

HashListMetadata

Metadaten zu einer bestimmten Hashliste.

Felder
threat_types[]

ThreatType

Unsortierte Liste. Wenn die Liste nicht leer ist, handelt es sich um eine Art von Bedrohungsliste, in der die Art der Bedrohungen aufgelistet ist, die mit Hashes oder Hash-Präfixen in dieser Hash-Liste verknüpft sind. Kann leer sein, wenn der Eintrag keine Bedrohung darstellt, d.h. wenn er einen wahrscheinlich sicheren Typ darstellt.

likely_safe_types[]

LikelySafeType

Unsortierte Liste. Wenn die Liste nicht leer ist, gibt sie an, dass die Hash-Liste eine Liste mit wahrscheinlich sicheren Hashes darstellt, und hier werden die Gründe aufgeführt, warum sie als wahrscheinlich sicher eingestuft werden. Dieses Feld schließt das Feld „threat_types“ aus.

description

string

Eine für Menschen lesbare Beschreibung dieser Liste. Sie muss auf Englisch verfasst sein.

supported_hash_lengths[]
(deprecated)

HashLength

Die unterstützten Hash-Längen für diese Hash-Liste. Jede Hashliste unterstützt mindestens eine Länge. Dieses Feld ist daher nicht leer.

hash_length

HashLength

Die unterstützte Hash-Länge für diese Hash-Liste. Jede Hashliste unterstützt genau eine Länge. Wenn für dieselbe Gruppe von Bedrohungs- oder sicheren Typen eine andere Hash-Länge eingeführt wird, wird sie als separate Liste mit einem eindeutigen Namen und einer entsprechenden Hash-Länge festgelegt.

HashLength

Die Länge der Hashes in einer Hash-Liste.

Enums
HASH_LENGTH_UNSPECIFIED Unbestimmte Länge. Der Server gibt diesen Wert nicht in Antworten an den Client zurück (im Feld supported_hash_lengths). Der Client darf diesen Wert jedoch an den Server senden (im Feld desired_hash_length). In diesem Fall wählt der Server automatisch einen Wert aus. Clients sollten dem Server erlauben, einen Wert auszuwählen.
FOUR_BYTES Jeder Hash ist ein Präfix mit vier Byte.
EIGHT_BYTES Jeder Hash ist ein Präfix mit acht Byte.
SIXTEEN_BYTES Jeder Hash ist ein 16-Byte-Präfix.
THIRTY_TWO_BYTES Jeder Hash ist ein 32-Byte-Vollhash.

LikelySafeType

Arten von Websites, die wahrscheinlich sicher sind

Beachten Sie, dass SearchHashesResponse absichtlich kein LikelySafeType enthält.

Enums
LIKELY_SAFE_TYPE_UNSPECIFIED Unbekannt
GENERAL_BROWSING Diese Website ist wahrscheinlich sicher genug für allgemeines Surfen. Dieser wird auch als globaler Cache bezeichnet.
CSD Diese Website ist wahrscheinlich so sicher, dass keine clientseitigen Erkennungsmodelle oder Passwortschutzprüfungen ausgeführt werden müssen.
DOWNLOAD Diese Website ist wahrscheinlich so sicher, dass Downloads von der Website nicht überprüft werden müssen.

ListHashListsRequest

Die Anfrage zum Auflisten der verfügbaren Hash-Listen.

Felder
page_size

int32

Die maximale Anzahl der Hashlisten, die zurückgegeben werden sollen. Der Dienst gibt möglicherweise weniger als diesen Wert zurück. Wenn Sie keine Seitengröße angeben, wählt der Server eine Seitengröße aus, die möglicherweise größer als die Anzahl der Hashlisten ist, sodass keine Paginierung erforderlich ist.

page_token

string

Ein Seitentoken, das von einem vorherigen ListHashLists-Aufruf empfangen wurde. Geben Sie diese an, um die nachfolgende Seite abzurufen.

ListHashListsResponse

Die Antwort enthält Metadaten zu Hash-Listen.

Felder
hash_lists[]

HashList

Die Hash-Listen in einer beliebigen Reihenfolge. Es werden nur Metadaten zu den Hash-Listen, nicht der Inhalt, enthalten sein.

next_page_token

string

Ein Token, das als page_token gesendet werden kann, um die nächste Seite abzurufen. Wenn dieses Feld weggelassen wird, gibt es keine nachfolgenden Seiten.

RiceDeltaEncoded128Bit

Entspricht RiceDeltaEncoded32Bit, codiert aber 128‑Bit-Zahlen.

Felder
first_value_hi

uint64

Die oberen 64 Bit des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die oberen 64 Bit alle Null.

first_value_lo

fixed64

Die unteren 64 Bit des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die unteren 64 Bit alle Null.

rice_parameter

int32

Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 99 und 126.

entries_count

int32

Die Anzahl der Einträge, die in den codierten Daten deltacodiert sind. Wenn nur eine einzelne Ganzzahl codiert wurde, ist dieser Wert null und der einzelne Wert wird in first_value gespeichert.

encoded_data

bytes

Die codierten Deltas, die mit dem Golomb-Rice-Codierer codiert werden.

RiceDeltaEncoded256Bit

Entspricht RiceDeltaEncoded32Bit, codiert aber 256‑Bit-Zahlen.

Felder
first_value_first_part

uint64

Die ersten 64 Bit des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die ersten 64 Bits alle Null.

first_value_second_part

fixed64

Die 65. bis 128. Bit des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die 65. bis 128. Bits alle Null.

first_value_third_part

fixed64

Die 129. bis 192. Bits des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die Bits 129 bis 192 alle Nullen.

first_value_fourth_part

fixed64

Die letzten 64 Bit des ersten Eintrags in den codierten Daten (Hashes). Wenn das Feld leer ist, sind die letzten 64 Bit alle null.

rice_parameter

int32

Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 227 und 254 (einschließlich).

entries_count

int32

Die Anzahl der Einträge, die in den codierten Daten deltacodiert sind. Wenn nur eine einzelne Ganzzahl codiert wurde, ist dieser Wert null und der einzelne Wert wird in first_value gespeichert.

encoded_data

bytes

Die codierten Deltas, die mit dem Golomb-Rice-Codierer codiert werden.

RiceDeltaEncoded32Bit

Die Rice-Golomb-codierten Daten. Wird entweder für Hashes oder Entfernungsindizes verwendet. Es ist garantiert, dass jeder Hash oder Index hier dieselbe Länge hat und diese Länge genau 32 Bit beträgt.

Wenn wir alle Einträge lexikografisch sortieren, stellen wir in der Regel fest, dass sich die Bits höherer Ordnung in der Regel nicht so häufig ändern wie die Bits niedrigerer Ordnung. Wenn wir also auch die benachbarte Differenz zwischen den Einträgen berücksichtigen, haben die Bits höherer Ordnung mit hoher Wahrscheinlichkeit den Wert 0. Diese hohe Wahrscheinlichkeit von Null wird ausgenutzt, indem im Wesentlichen eine bestimmte Anzahl von Bits ausgewählt wird. Alle Bitpositionen, die höher sind, sind wahrscheinlich Null. Daher wird die unary-Codierung verwendet. Siehe Feld rice_parameter.

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.

Felder
first_value

uint32

Der erste Eintrag in den codierten Daten (Hashes oder Indexe) oder, wenn nur ein einzelnes Hash-Präfix oder ein Index codiert wurde, der Wert dieses Eintrags. Wenn das Feld leer ist, ist der Eintrag „0“.

rice_parameter

int32

Der Golomb-Rice-Parameter. Dieser Parameter hat garantiert eine Länge von 3 bis 30 Zeichen.

entries_count

int32

Die Anzahl der Einträge, die in den codierten Daten deltacodiert sind. Wenn nur eine einzelne Ganzzahl codiert wurde, ist dieser Wert null und der einzelne Wert wird in first_value gespeichert.

encoded_data

bytes

Die codierten Deltas, die mit dem Golomb-Rice-Codierer codiert werden.

RiceDeltaEncoded64Bit

Entspricht RiceDeltaEncoded32Bit, codiert aber 64‑Bit-Zahlen.

Felder
first_value

uint64

Der erste Eintrag in den codierten Daten (Hashes) oder, wenn nur ein einzelnes Hash-Präfix codiert wurde, der Wert dieses Eintrags. Wenn das Feld leer ist, ist der Eintrag „0“.

rice_parameter

int32

Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 35 und 62.

entries_count

int32

Die Anzahl der Einträge, die in den codierten Daten deltacodiert sind. Wenn nur eine einzelne Ganzzahl codiert wurde, ist dieser Wert null und der einzelne Wert wird in first_value gespeichert.

encoded_data

bytes

Die codierten Deltas, die mit dem Golomb-Rice-Codierer codiert werden.

SearchHashesRequest

Eine Anfrage, die vom Client gesendet wird, um nach bestimmten Hash-Präfixen zu suchen.

Dabei werden nur Bedrohungslisten und keine anderen Listen wie der globale Cache durchsucht.

Neuerungen in Version 5: Clients müssen weder eine ClientInfo noch den Status der Hash-Listen in ihrer lokalen Datenbank angeben. So wird Ihre Privatsphäre besser geschützt. Außerdem müssen Kunden nicht angeben, an welchen Bedrohungstypen sie interessiert sind.

Felder
hash_prefixes[]

bytes

Erforderlich. Die zu suchenden Hash-Präfixe. Clients dürfen NICHT mehr als 1.000 Hash-Präfixe senden. Gemäß dem Verfahren zur URL-Verarbeitung sollten Clients jedoch NICHT mehr als 30 Hash-Präfixe senden.

Derzeit muss jedes Hash-Präfix genau 4 Byte lang sein. Diese Einschränkung kann in Zukunft aufgehoben werden.

filter

string

Optional. Wenn der Kunde Filter verwenden möchte, z. B. nur bestimmte Arten von Bedrohungen abrufen, kann dies angegeben werden. Wird dieser Parameter weggelassen, werden alle übereinstimmenden Bedrohungen zurückgegeben. Wir empfehlen dringend, diese Option zu deaktivieren, um den bestmöglichen Safe Browsing-Schutz zu erhalten.

Der Filter wird in der Google Common Expression Language (CEL) angegeben. Weitere Informationen und allgemeine Beispiele finden Sie unter https://github.com/google/cel-spec. Hier sind einige Beispiele, die Sie verwenden können:

Für den Filter "threat_type == ThreatType.SOCIAL_ENGINEERING" muss der Bedrohungstyp in FullHashDetail SOCIAL_ENGINEERING sein. Die Kennung "threat_type" bezieht sich auf den aktuellen Bedrohungstyp. Die Kennung "ThreatType" bezieht sich auf die Sammlung aller möglichen Bedrohungstypen.

Für den Filter "threat_type in [ ThreatType.UNWANTED_SOFTWARE, ThreatType.MALWARE ]" muss der Bedrohungstyp entweder UNWANTED_SOFTWARE oder MALWARE sein.

SearchHashesResponse

Die Antwort, die nach der Suche nach Bedrohungshaschen zurückgegeben wurde.

Wenn nichts gefunden wird, gibt der Server den Status „OK“ (HTTP-Statuscode 200) mit einem leeren Feld full_hashes zurück, anstatt den Status „NICHT GEFUNDEN“ (HTTP-Statuscode 404) zurückzugeben.

Neu in Version 5: Es gibt eine Trennung zwischen FullHash und FullHashDetail. Wenn ein Hash für eine Website mit mehreren Bedrohungen steht (z.B. MALWARE und SOCIAL_ENGINEERING), muss der vollständige Hash nicht wie in Version 4 zweimal gesendet werden. Außerdem wurde die Cachedauer in ein einzelnes cache_duration-Feld vereinfacht.

Felder
full_hashes[]

FullHash

Unsortierte Liste. Die unsortierte Liste der gefundenen vollständigen Hash-Werte.

cache_duration

Duration

Die Dauer des clientseitigen Caches. Der Client MUSS diese Dauer zur aktuellen Zeit hinzufügen, um die Ablaufzeit zu bestimmen. Die Ablaufzeit gilt dann für jedes Hash-Präfix, das vom Client in der Anfrage abgefragt wird, unabhängig davon, wie viele vollständige Hashes in der Antwort zurückgegeben werden. Auch wenn der Server keine vollständigen Hashes für ein bestimmtes Hash-Präfix zurückgibt, MUSS diese Tatsache vom Client im Cache gespeichert werden.

Nur wenn das Feld full_hashes leer ist, DARF der Client cache_duration erhöhen, um ein neues Ablaufdatum festzulegen, das später als das vom Server angegebene ist. Die erhöhte Cachedauer darf in jedem Fall nicht länger als 24 Stunden sein.

Wichtig: Der Client darf nicht davon ausgehen, dass der Server für alle Antworten dieselbe Cachedauer zurückgibt. Der Server KANN je nach Situation unterschiedliche Cachedauern für unterschiedliche Antworten auswählen.

SizeConstraints

Die Einschränkungen für die Größe der Hash-Listen.

Felder
max_update_entries

int32

Die maximale Größe in der Anzahl der Einträge. Das Update enthält nicht mehr Einträge als dieser Wert, aber es ist möglich, dass es weniger Einträge enthält. Dieser Wert MUSS mindestens 1.024 sein. Wenn das Feld leer ist oder „0“ enthält, wird kein Limit für die Größe von Updates festgelegt.

max_database_entries

int32

Legt die maximale Anzahl von Einträgen fest, die der Kunde in der lokalen Datenbank für die Liste haben möchte. Der Server kann dazu führen, dass der Client weniger als diese Anzahl von Einträgen speichert. Wenn das Feld leer ist oder „0“ enthält, wird kein Limit für die Datenbankgröße festgelegt.

ThreatAttribute

Attribute von Bedrohungen. Diese Attribute können einer bestimmten Bedrohung zusätzliche Bedeutung verleihen, haben aber keinen Einfluss auf den Bedrohungstyp. So kann ein Attribut beispielsweise eine niedrigere Zuverlässigkeit angeben, während ein anderes Attribut eine höhere Zuverlässigkeit angibt. In Zukunft werden möglicherweise weitere Attribute hinzugefügt.

Enums
THREAT_ATTRIBUTE_UNSPECIFIED Unbekanntes Attribut. Wenn dies vom Server zurückgegeben wird, muss der Client die umschließende FullHashDetail vollständig ignorieren.
CANARY Gibt an, dass der „threat_type“ nicht für die Erzwingung verwendet werden soll.
FRAME_ONLY Gibt an, dass der „threat_type“ nur für die Erzwingung von Frames verwendet werden sollte.

ThreatType

Arten von Bedrohungen

Enums
THREAT_TYPE_UNSPECIFIED Unbekannter Bedrohungstyp. Wenn dies vom Server zurückgegeben wird, muss der Client die umschließende FullHashDetail vollständig 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 finden Sie hier.

SOCIAL_ENGINEERING

Art der Social Engineering-Bedrohung. Social Engineering-Seiten geben vor, im Namen eines Drittanbieters zu handeln, um Nutzer dazu zu bringen, eine Aktion auszuführen, der sie nur einem echten Vertreter dieses Drittanbieters vertrauen würden. Phishing ist eine Form von Social Engineering, bei der Nutzer dazu verleitet werden, bestimmte Aktionen auszuführen, z. B. die Angabe von Informationen wie Anmeldedaten.

Weitere Informationen finden Sie hier.

UNWANTED_SOFTWARE Bedrohungstyp für unerwünschte Software. Unerwünschte Software ist Software, die nicht den Software-Prinzipien von Google entspricht, aber keine Malware ist.
POTENTIALLY_HARMFUL_APPLICATION Art der Bedrohung durch potenziell schädliche Apps, wie von Google Play Protect für den Play Store verwendet.