Package google.security.safebrowsing.v5alpha1

Index

SafeBrowsing

Mit den Safe Browsing APIs können Clients Webressourcen (häufig URLs) mit den fortlaufend aktualisierten Google-Listen unsicherer Webressourcen vergleichen.

BatchGetHashLists

rpc BatchGetHashLists(BatchGetHashListsRequest) returns (BatchGetHashListsResponse)

Rufen Sie mehrere Hash-Listen gleichzeitig ab.

Häufig benötigt ein Client mehrere Hash-Listen. Diese Methode ist gegenüber der regulären Get-Methode besser geeignet, als mehrere Male zu verwenden.

Dies ist eine Standard-Batch-Get-Methode gemäß https://google.aip.dev/231. Die HTTP-Methode ist ebenfalls GET.

GetHashList

rpc GetHashList(GetHashListRequest) returns (HashList)

Ruft den neuesten Inhalt einer Hash-Liste ab. Eine Hash-Liste kann entweder nach einer Bedrohungsliste oder einer Liste ohne Bedrohungen, wie dem globalen Cache, sortiert werden.

Dies ist eine standardmäßige Get-Methode gemäß der Definition unter https://google.aip.dev/131. Die HTTP-Methode ist ebenfalls GET.

ListHashLists

rpc ListHashLists(ListHashListsRequest) returns (ListHashListsResponse)

Listen Sie Hash-Listen auf.

In der V5 API entfernt Google niemals eine Hash-Liste, die jemals über diese Methode zurückgegeben wurde. Dadurch können Clients diese Methode überspringen und einfach alle benötigten Hash-Listen hartcodieren.

Dies ist eine Standardmethode vom Typ „List“ gemäß https://google.aip.dev/132. Die HTTP-Methode ist GET.

SearchHashes

rpc SearchHashes(SearchHashesRequest) returns (SearchHashesResponse)

Nach vollständigen Hashes suchen, die den angegebenen Präfixen entsprechen.

Dies ist eine benutzerdefinierte Methode, wie in https://google.aip.dev/136 definiert. Die benutzerdefinierte Methode bezieht sich auf diese Methode, die einen benutzerdefinierten Namen innerhalb der allgemeinen API-Entwicklungsnommenklatur von Google hat. Sie bezieht sich nicht auf die Verwendung einer benutzerdefinierten HTTP-Methode.

BatchGetHashListsRequest

Die Anfrage zum gleichzeitigen Abrufen mehrerer Hash-Listen.

Felder
names[]

string

Erforderlich. Die Namen der jeweiligen Hash-Listen. Die Liste KANN eine Bedrohungsliste oder der globale Cache sein. Die Namen DÜRFEN KEINE Duplikate enthalten. Andernfalls erhält der Client eine Fehlermeldung.

version[]

bytes

Die Versionen der Hash-Liste, die der Client bereits hat. Wenn der Client zum ersten Mal die Hash-Listen abruft, sollte das Feld leer bleiben. Andernfalls sollte der Client die zuvor vom Server erhaltenen Versionen bereitstellen. Der Client DARF diese Byte NICHT bearbeiten.

Der Client muss die Versionen nicht in derselben Reihenfolge wie die entsprechenden Listennamen senden. Der Client sendet möglicherweise weniger oder mehr Versionen in einer Anfrage, als Namen vorhanden sind. Der Client DARF NICHT jedoch mehrere Versionen senden, die demselben Namen entsprechen. Andernfalls erhält der Client eine Fehlermeldung.

Hinweis: In Version 4 der API wurde dies als states bezeichnet. Jetzt wurde sie aus Gründen der Verständlichkeit in version umbenannt.

desired_hash_length

HashLength

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

Unterschiedliche Hash-Listen haben unterschiedliche Anforderungen an die zulässigen Werte des Felds desired_hash_length. Diese finden Sie im Feld supported_hash_lengths in HashListMetadata. Wenn desired_hash_length keinen Wert innerhalb von supported_hash_lengths angibt, wird an die Clients ein Fehler zurückgegeben.

Insbesondere für BatchGetHashListsRequest können Kunden keine unterschiedlichen desired_hash_length für verschiedene Listen angeben. Ist dies erforderlich, sollte der Client in mehrere BatchGetHashListsRequests aufgeteilt werden.

size_constraints

SizeConstraints

Die Größenbeschränkungen für jede Liste. Bei Auslassung gibt es keine Einschränkungen. Die Größen hier gelten pro Liste und nicht für alle Listen zusammengefasst.

BatchGetHashListsResponse

Die Antwort mit mehreren Hash-Listen.

Felder
hash_lists[]

HashList

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

FullHash

Der vollständige Hash, 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. Wiederkehrendes Feld, das die für diesen vollständigen Hash relevanten Details angibt.

FullHashDetail

Details zum übereinstimmenden vollständigen Hash.

Wichtiger Hinweis zur Aufwärtskompatibilität: Neue Bedrohungstypen und Bedrohungsattribute können jederzeit vom Server hinzugefügt werden; diese Hinzufügungen gelten als geringfügige Versionsänderungen. Gemäß den Google-Richtlinien müssen in APIs keine Nebenversionsnummern offengelegt werden. Weitere Informationen zur Richtlinie zur Versionsverwaltung finden Sie unter https://cloud.google.com/apis/design/versioning. Daher MÜSSEN Clients auf den Empfang von FullHashDetail-Nachrichten vorbereitet sein, die ThreatType- oder ThreatAttribute-Enum-Werte enthalten, die vom Client als ungültig eingestuft werden. Daher liegt es in der Verantwortung des Clients, die Gültigkeit aller ThreatType- und ThreatAttribute-Enum-Werte zu prüfen. Wird ein Wert als ungültig betrachtet, MUSS der Client die gesamte FullHashDetail-Nachricht ignorieren.

Felder
threat_type

ThreatType

Die Art der Bedrohung. Dieses Feld wird nie leer sein.

attributes[]

ThreatAttribute

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

GetHashListRequest

Eine Anfrage zum Abrufen einer Hash-Liste. Das kann eine Liste mit Bedrohungen oder eine Liste ohne Bedrohungen wie der globale Cache sein.

Neu in Version 5: Das in Version 4 verwendete Datum (bisher states) wird jetzt in version umbenannt. Listen werden jetzt benannt, Plattformtypen und Typen von Bedrohungseinträgen werden entfernt. Es ist jetzt möglich, dass mehrere Listen denselben Bedrohungstyp haben oder eine einzelne Liste mit mehreren Bedrohungstypen betroffen ist. Clients haben jetzt die Möglichkeit, eine gewünschte Hash-Länge anzugeben. Dies ist Teil der Antwort auf die V4-Hash-Präfixe mit variabler Länge, die bei vielen Clientimplementierungen zu Problemen geführt hat: Alle Hashes in einer Liste haben jetzt nur eine einzige Länge, was wesentlich effizientere Clientimplementierungen ermöglicht. Die Einschränkungen wurden vereinfacht und der Komprimierungstyp wurde entfernt (es wird immer eine Komprimierung angewandt).

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 zum ersten Mal die Hash-Liste abruft, MUSS dieses Feld leer bleiben. Andernfalls SOLLTE der Client die zuvor vom Server erhaltene Version angeben. Der Client DARF diese Byte NICHT bearbeiten.

Neu in Version 5: In Version 4 der API wurde die Bezeichnung states genannt. Zur Verdeutlichung wurde sie jetzt in version umbenannt.

desired_hash_length

HashLength

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

Unterschiedliche Hash-Listen haben unterschiedliche Anforderungen an die zulässigen Werte des Felds desired_hash_length. Diese finden Sie im Feld supported_hash_lengths in HashListMetadata. Wenn desired_hash_length keinen Wert innerhalb von supported_hash_lengths angibt, wird ein Fehler zurückgegeben.

size_constraints

SizeConstraints

Die Größenbeschränkungen der Liste. Bei Auslassung gibt es keine Einschränkungen. Einschränkungen werden für alle Geräte mit eingeschränkter Rechenleistung, Bandbreite oder Speicher empfohlen.

HashList

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

Felder
name

string

Der Name der Hash-Liste. Beachten Sie, dass der globale Cache ebenfalls nur eine Hash-Liste ist und hier Bezug genommen werden kann.

version

bytes

Die Version der Hash-Liste. Der Client DARF diese Byte NICHT bearbeiten.

partial_update

bool

Wenn „true“ festgelegt ist, ist dies ein partieller Unterschied, der Ergänzungen und Entfernungen auf Grundlage der bereits vorhandenen Elemente des Clients enthält. Bei „false“ ist dies die vollständige Hash-Liste.

Bei „false“ MUSS der Client jede lokal gespeicherte Version für diese Hash-Liste löschen. Dies bedeutet, dass entweder die Version des Clients wirklich veraltet ist oder dass angenommen wird, dass die Clientdaten beschädigt sind. Das Feld „compressed_removals“ ist leer.

Wenn dies auf „true“ gesetzt ist, MUSS der Client ein inkrementelles Update anwenden, indem Entfernungen und dann Ergänzungen angewendet werden.

compressed_removals

RiceDeltaEncoded32Bit

Die Rice-Delta-codierte Version der Entfernungsindexe. Da jede Hash-Liste definitiv weniger als 2^32 Einträge enthält, werden die Indizes als 32-Bit-Ganzzahlen behandelt und codiert.

minimum_wait_duration

Duration

Clients sollten mindestens so lange warten, bis sie die Hash-Liste noch einmal abrufen können. Wird er weggelassen oder null, MÖCHTEN die Clients sofort abrufen, da dies anzeigt, dass der Server ein weiteres Update an den Client senden muss, aber aufgrund der vom Client angegebenen Einschränkungen nicht möglich ist.

metadata

HashListMetadata

Metadaten zur Hash-Liste. Dieser Wert wird von der Methode GetHashList nicht automatisch ausgefüllt, sondern von der Methode ListHashLists.

Union-Feld compressed_additions. Die Rice-Delta-codierte Version von Ergänzungen. Die Länge des Hash-Präfixes für Hinzufügungen ist für alle Hinzufügungen in der Liste einheitlich. 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-Ergänzungen.

additions_eight_bytes

RiceDeltaEncoded64Bit

Die 8-Byte-Ergänzungen.

additions_sixteen_bytes

RiceDeltaEncoded128Bit

Die 16-Byte-Ergänzungen.

additions_thirty_two_bytes

RiceDeltaEncoded256Bit

Die 32-Byte-Ergänzungen.

Union-Feld checksum. Dies ist die Prüfsumme für die sortierte Liste aller in der Datenbank vorhandenen Hashes, nachdem das bereitgestellte Update angewendet wurde. Dies ist ein „oneof“-Feld, das mehrere Hash-Algorithmen zulässt. Der Server kann dieses Feld auch auslassen (falls keine Aktualisierungen bereitgestellt wurden), um anzugeben, dass der Client die vorhandene Prüfsumme verwenden soll. Für checksum ist nur einer der folgenden Werte zulässig:
sha256_checksum

bytes

Die sortierte Liste aller Hashes, nochmals mit SHA256 gehasht.

HashListMetadata

Metadaten zu einer bestimmten Hash-Liste.

Felder
threat_types[]

ThreatType

Unsortierte Liste. Wenn das Feld nicht leer ist, gibt es an, dass es sich bei der Hash-Liste um eine Art von Bedrohungsliste handelt. Es listet die Art der Bedrohungen auf, die mit Hashes oder Hash-Präfixen in dieser Hash-Liste verbunden sind. Kann leer sein, wenn der Eintrag keine Bedrohung darstellt, z.B. wenn es sich um einen wahrscheinlich sicheren Typ handelt.

likely_safe_types[]

LikelySafeType

Unsortierte Liste. Wenn das Feld nicht leer ist, wird hier angegeben, dass die Hash-Liste eine Liste wahrscheinlich sicherer Hashes darstellt. Darüber hinaus werden diese aufgezählt, wie sie als wahrscheinlich sicher eingestuft werden. Dieses Feld und das Feld threat_types schließen sich gegenseitig aus.

mobile_optimized

bool

Gibt an, ob diese Liste für Mobilgeräte (Android und iOS) optimiert ist.

description

string

Eine menschenlesbare Beschreibung dieser Liste. Auf Englisch verfasst.

supported_hash_lengths[]

HashLength

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

HashLength

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

Enums
HASH_LENGTH_UNSPECIFIED Nicht angegebene Länge. Der Server gibt diesen Wert nicht als Antwort an den Client zurück (im Feld supported_hash_lengths), darf ihn aber an den Server senden (im Feld desired_hash_length). In diesem Fall wählt der Server automatisch einen Wert aus. Clients SOLLTE den Server einen Wert auswählen lassen.
FOUR_BYTES Jeder Hash ist ein Vier-Byte-Präfix.
EIGHT_BYTES Jeder Hash ist ein 8-Byte-Präfix.
SIXTEEN_BYTES Jeder Hash ist ein Präfix von 16 Byte.
THIRTY_TWO_BYTES Jeder Hash ist ein vollständiger Hash mit 32 Byte.

LikelySafeType

Arten wahrscheinlich sicherer Websites.

Beachten Sie, dass LikelySafeType absichtlich nicht in SearchHashesResponse enthalten ist.

Enums
LIKELY_SAFE_TYPE_UNSPECIFIED Unbekannt.
GENERAL_BROWSING Diese Website ist wahrscheinlich sicher genug für allgemeines Surfen. Dies 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 sicher genug, sodass 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 von Hash-Listen, die zurückgegeben werden sollen. Der Dienst gibt möglicherweise weniger als diesen Wert zurück. Wenn keine Vorgabe erfolgt, wählt der Server eine Seitengröße aus, die möglicherweise größer als die Anzahl der Hash-Listen 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 mit Metadaten zu Hash-Listen.

Felder
hash_lists[]

HashList

Die Hash-Listen sind in einer beliebigen Reihenfolge angeordnet. Es werden nur Metadaten über die Hash-Listen aufgenommen, nicht die Inhalte.

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

Wie RiceDeltaEncoded32Bit, mit dem Unterschied, dass 128-Bit-Zahlen codiert werden.

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 Bits 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 Bits alle null.

rice_parameter

int32

Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 99 und 126 (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 dies null und der einzelne Wert wird in first_value gespeichert.

encoded_data

bytes

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

RiceDeltaEncoded256Bit

Wie RiceDeltaEncoded32Bit, mit dem Unterschied, dass 256-Bit-Zahlen codiert werden.

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 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.

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 Bits 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 dies null und der einzelne Wert wird in first_value gespeichert.

encoded_data

bytes

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

RiceDeltaEncoded32Bit

Die Rice-Golomb-codierten Daten. Wird entweder für Hashes oder Entfernungsindexe verwendet. Jeder Hash oder Index hier hat die gleiche Länge, die genau 32 Bit beträgt.

Allgemein gilt: Wenn wir alle Einträge lexikografisch sortieren, werden wir feststellen, dass sich die Bits höherer Ordnung tendenziell nicht so häufig ändern wie Bits niedrigerer Ordnung. Wenn wir also auch die benachbarte Differenz zwischen den Einträgen berücksichtigen, haben die Bits höherer Ordnung eine hohe Wahrscheinlichkeit, null zu sein. Diese hohe Wahrscheinlichkeit von Null wird ausgenutzt, indem im Wesentlichen eine bestimmte Anzahl von Bits ausgewählt wird. Alle Bits, die größer sind als diese, sind wahrscheinlich null, daher verwenden wir die unäre Codierung. Siehe Feld rice_parameter.

Hinweis: Die Rice-Delta-Codierung wurde erstmals in Version 4 dieser API verwendet. In V5 wurden zwei wesentliche 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 Indizes) oder, wenn nur ein einzelnes Hash-Präfix oder -Index codiert wurde, der Wert dieses Eintrags. Wenn das Feld leer ist, ist der Eintrag null.

rice_parameter

int32

Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 3 und 30 (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 dies null und der einzelne Wert wird in first_value gespeichert.

encoded_data

bytes

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

RiceDeltaEncoded64Bit

Wie RiceDeltaEncoded32Bit, mit dem Unterschied, dass 64-Bit-Zahlen codiert werden.

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 null.

rice_parameter

int32

Der Golomb-Rice-Parameter. Dieser Parameter liegt garantiert zwischen 35 und 62 (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 dies null und der einzelne Wert wird in first_value gespeichert.

encoded_data

bytes

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

SearchHashesRequest

Eine Anfrage, die der Client für die Suche nach bestimmten Hash-Präfixen ausgibt.

Damit wird nur nach Bedrohungslisten gesucht – nicht in Listen, die keine Bedrohungen sind, wie z. B. im globalen Cache.

Neu in Version 5: Clients müssen weder ClientInfo noch die Status der Hash-Listen in ihrer lokalen Datenbank angeben. Dies dient dem besseren Datenschutz. Außerdem müssen sie nicht senden, welche Bedrohungsarten sie interessieren.

Felder
hash_prefixes[]

bytes

Erforderlich. Die Hash-Präfixe, die nachgeschlagen werden sollen. Clients DÜRFEN NICHT mehr als 1.000 Hash-Präfixe senden. Nach dem URL-Verarbeitungsverfahren sollten Kunden jedoch NICHT mehr als 30 Hash-Präfixe senden müssen.

Derzeit muss jedes Hash-Präfix genau 4 Byte lang sein. Dieses KANN in Zukunft gelockert werden.

filter

string

Optional. Wenn der Client an Filtern interessiert ist, um beispielsweise nur bestimmte Arten von Bedrohungen abzurufen, kann dies angegeben werden. Wenn keine Angabe gemacht wird, werden alle übereinstimmenden Bedrohungen zurückgegeben. Wir empfehlen dringend, dies wegzulassen, um den bestmöglichen Schutz zu erhalten, den Safe Browsing bietet.

Der Filter wird mithilfe von Google Common Expression Language angegeben, die Sie unter https://github.com/google/cel-spec sowie allgemeinen Beispielen finden. Hier sind einige konkrete Beispiele, die hier verwendet werden können:

Für den Filter "threat_type == ThreatType.SOCIAL_ENGINEERING" muss innerhalb von FullHashDetail der Bedrohungstyp 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 Bedrohungs-Hashes zurückgegeben wurde.

Wird nichts gefunden, gibt der Server den Status „OK“ (HTTP-Statuscode 200) zurück, wobei das Feld full_hashes leer ist, statt den Status NOT_FOUND (HTTP-Statuscode 404).

Neuerungen in Version 5: Es gibt eine Trennung zwischen FullHash und FullHashDetail. Wenn ein Hash eine Website mit mehreren Bedrohungen darstellt (z.B. sowohl MALWARE als auch SOCIAL_ENGINEERING), muss der vollständige Hash nicht doppelt gesendet werden wie in V4. Außerdem wurde die Cache-Dauer auf ein einzelnes cache_duration-Feld vereinfacht.

Felder
full_hashes[]

FullHash

Unsortierte Liste. Die ungeordnete Liste aller vollständigen Hashes, die gefunden wurden.

cache_duration

Duration

Die clientseitige Cache-Dauer. 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. Selbst wenn der Server keine vollständigen Hashes für ein bestimmtes Hash-Präfix zurückgibt, MUSS dies ebenfalls vom Client im Cache gespeichert werden.

Nur wenn das Feld full_hashes leer ist, KANN der Client cache_duration erhöhen, um ein neues Ablaufdatum zu ermitteln, das nach dem vom Server angegebenen Wert liegt. In jedem Fall darf die erhöhte Cache-Dauer nicht länger als 24 Stunden sein.

Wichtig: Der Client DARF NICHT davon ausgehen, dass der Server für alle Antworten die gleiche Cache-Dauer zurückgibt. Der Server KANN unterschiedliche Cache-Dauer für unterschiedliche Antworten je nach Situation auswählen.

SizeConstraints

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

Felder
max_update_entries

int32

Die maximale Größe der Anzahl von Einträgen. Die Aktualisierung enthält nicht mehr Einträge als dieser Wert, es ist jedoch möglich, dass sie weniger Einträge enthält. Dieser MUSS mindestens 1.024 sein. Wenn das Feld weggelassen oder null ist, wird keine Größenbeschränkung für die Aktualisierung festgelegt.

max_database_entries

int32

Legt die maximale Anzahl von Einträgen fest, die der Client in der lokalen Datenbank für die Liste speichern möchte. (Der Server kann bewirken, dass der Client weniger Einträge speichert.) Wenn keine Angabe gemacht wird oder null ist, wird keine Größenbeschränkung für die Datenbank festgelegt.

ThreatAttribute

Attribute von Bedrohungen. Diese Attribute verleihen einer bestimmten Bedrohung möglicherweise eine zusätzliche Bedeutung, wirken sich aber nicht auf die Art der Bedrohung aus. Beispielsweise kann ein Attribut eine niedrigere Konfidenz angeben, während ein anderes Attribut eine höhere Konfidenz angeben kann. In Zukunft werden möglicherweise weitere Attribute hinzugefügt.

Enums
THREAT_ATTRIBUTE_UNSPECIFIED Unbekanntes Attribut. Wird dies vom Server zurückgegeben, muss der Client die einschließende FullHashDetail vollständig ignorieren.
CANARY Gibt an, dass „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 soll.

ThreatType

Arten von Bedrohungen.

Enums
THREAT_TYPE_UNSPECIFIED Unbekannter Bedrohungstyp. Wird dies vom Server zurückgegeben, muss der Client die einschließ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

Bedrohungstyp des Social Engineering. Social-Engineering-Seiten geben vor, im Namen eines Dritten zu handeln, um Zuschauer zu einer Aktion zu bewegen, bei der sie nur einem wahren Vertreter dieses Dritten vertrauen würden. Phishing ist eine Art von Social Engineering, bei der Zuschauer dazu verleitet werden, eine bestimmte Aktion auszuführen, bei der Informationen wie Anmeldedaten angegeben werden.

Weitere Informationen finden Sie hier.

UNWANTED_SOFTWARE Bedrohungstyp "Unerwünschte Software" Unerwünschte Software ist Software, die nicht den Prinzipien in Bezug auf Software entspricht, aber keine Malware ist.
POTENTIALLY_HARMFUL_APPLICATION Potenziell schädlicher Anwendungsbedrohungstyp, wie von Google Play Protect für den Play Store verwendet.