- Recurso: HashList
- RiceDeltaEncoded32Bit
- RiceDeltaEncoded64Bit
- RiceDeltaEncoded128Bit
- RiceDeltaEncoded256Bit
- HashListMetadata
- ThreatType
- LikelySafeType
- HashLength
- Métodos
Recurso: HashList
Uma lista de hashes identificados pelo nome.
| Representação JSON |
|---|
{ "name": string, "version": string, "partialUpdate": boolean, "compressedRemovals": { object ( |
| Campos | |
|---|---|
name |
O nome da lista de hash. O cache global também é apenas uma lista de hash e pode ser consultado aqui. |
version |
A versão da lista de hash. O cliente NÃO PODE manipular esses bytes. Uma string codificada em base64. |
partialUpdate |
Quando verdadeiro, esse é um diff parcial que contém adições e remoções com base no que o cliente já tem. Quando for "false", esta será a lista de hash completa. Quando for "false", o cliente PRECISA excluir qualquer versão armazenada localmente dessa lista de hash. Isso significa que a versão do cliente está muito desatualizada ou que os dados do cliente estão corrompidos. O campo Quando for "true", o cliente PRECISA aplicar uma atualização incremental removendo e adicionando. |
compressedRemovals |
A versão codificada em Rice-delta dos índices de remoção. Como cada lista de hash tem menos de 2^32 entradas, os índices são tratados como números inteiros de 32 bits e codificados. |
minimumWaitDuration |
Os clientes precisam esperar pelo menos esse tempo para receber a lista de hash novamente. Se for omitido ou zero, os clientes DEVERÃO buscar imediatamente porque isso indica que o servidor tem uma atualização adicional para enviar ao cliente, mas não pôde devido às restrições especificadas pelo cliente. Duração em segundos com até nove dígitos fracionários, terminando em " |
sha256Checksum |
A lista classificada de todos os hashes, com hash novamente usando SHA256. Este é o checksum da lista classificada de todos os hashes presentes no banco de dados após a aplicação da atualização fornecida. Se nenhuma atualização for fornecida, o servidor vai omitir esse campo para indicar que o cliente deve usar a soma de verificação atual. Uma string codificada em base64. |
metadata |
Metadados sobre a lista de hash. Ele não é preenchido pelo método |
Campo de união compressed_additions. A versão codificada por Rice-delta das adições. Os comprimentos dos prefixos de hash das adições são uniformes em todas as adições da lista. compressed_additions pode ser apenas de um dos tipos a seguir: |
|
additionsFourBytes |
As adições de 4 bytes. |
additionsEightBytes |
As adições de 8 bytes. |
additionsSixteenBytes |
As adições de 16 bytes. |
additionsThirtyTwoBytes |
As adições de 32 bytes. |
RiceDeltaEncoded32Bit
Os dados codificados com Rice-Golomb. Usado para hashes ou índices de remoção. É garantido que cada hash ou índice aqui tem o mesmo comprimento, e esse comprimento é exatamente de 32 bits.
Em geral, se classificarmos todas as entradas lexicograficamente, vamos descobrir que os bits de ordem superior não mudam com tanta frequência quanto os de ordem inferior. Isso significa que, se também considerarmos a diferença adjacente entre as entradas, os bits de ordem superior terão uma alta probabilidade de serem zero. Isso explora essa alta probabilidade de zero escolhendo um determinado número de bits. Todos os bits mais significativos que esse provavelmente serão zero, então usamos a codificação unária. Consulte o campo riceParameter.
Observação histórica: a codificação Rice-delta foi usada pela primeira vez na V4 desta API. Na V5, foram feitos dois aprimoramentos significativos: primeiro, a codificação Rice-delta agora está disponível com prefixos de hash maiores que 4 bytes; segundo, os dados codificados agora são tratados como big-endian para evitar uma etapa de classificação dispendiosa.
| Representação JSON |
|---|
{ "firstValue": integer, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
| Campos | |
|---|---|
firstValue |
A primeira entrada nos dados codificados (hashes ou índices) ou, se apenas um prefixo de hash ou índice foi codificado, o valor dessa entrada. Se o campo estiver vazio, a entrada será zero. |
riceParameter |
O parâmetro de Golomb-Rice. Esse parâmetro precisa estar entre 3 e 30, inclusive. |
entriesCount |
O número de entradas codificadas por delta nos dados codificados. Se apenas um número inteiro foi codificado, esse valor será zero e o valor único será armazenado em |
encodedData |
Os deltas codificados usando o codificador Golomb-Rice. Uma string codificada em base64. |
RiceDeltaEncoded64Bit
Igual a RiceDeltaEncoded32Bit, exceto que codifica números de 64 bits.
| Representação JSON |
|---|
{ "firstValue": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
| Campos | |
|---|---|
firstValue |
A primeira entrada nos dados codificados (hashes) ou, se apenas um prefixo de hash foi codificado, o valor dessa entrada. Se o campo estiver vazio, a entrada será zero. |
riceParameter |
O parâmetro de Golomb-Rice. Esse parâmetro precisa estar entre 35 e 62, inclusive. |
entriesCount |
O número de entradas codificadas por delta nos dados codificados. Se apenas um número inteiro foi codificado, esse valor será zero e o valor único será armazenado em |
encodedData |
Os deltas codificados usando o codificador Golomb-Rice. Uma string codificada em base64. |
RiceDeltaEncoded128Bit
Igual a RiceDeltaEncoded32Bit, exceto que codifica números de 128 bits.
| Representação JSON |
|---|
{ "firstValueHi": string, "firstValueLo": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
| Campos | |
|---|---|
firstValueHi |
Os 64 bits superiores da primeira entrada nos dados codificados (hashes). Se o campo estiver vazio, os 64 bits superiores serão todos zero. |
firstValueLo |
Os 64 bits inferiores da primeira entrada nos dados codificados (hashes). Se o campo estiver vazio, os 64 bits inferiores serão todos zero. |
riceParameter |
O parâmetro de Golomb-Rice. Esse parâmetro fica entre 99 e 126, inclusive. |
entriesCount |
O número de entradas codificadas por delta nos dados codificados. Se apenas um número inteiro foi codificado, esse valor será zero e o valor único será armazenado em |
encodedData |
Os deltas codificados usando o codificador Golomb-Rice. Uma string codificada em base64. |
RiceDeltaEncoded256Bit
Igual a RiceDeltaEncoded32Bit, mas codifica números de 256 bits.
| Representação JSON |
|---|
{ "firstValueFirstPart": string, "firstValueSecondPart": string, "firstValueThirdPart": string, "firstValueFourthPart": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
| Campos | |
|---|---|
firstValueFirstPart |
Os primeiros 64 bits da primeira entrada nos dados codificados (hashes). Se o campo estiver vazio, os primeiros 64 bits serão todos zero. |
firstValueSecondPart |
Os bits 65 a 128 da primeira entrada nos dados codificados (hashes). Se o campo estiver vazio, os bits de 65 a 128 serão todos zero. |
firstValueThirdPart |
Os bits de 129 a 192 da primeira entrada nos dados codificados (hashes). Se o campo estiver vazio, os bits de 129 a 192 serão todos zero. |
firstValueFourthPart |
Os últimos 64 bits da primeira entrada nos dados codificados (hashes). Se o campo estiver vazio, os últimos 64 bits serão todos zero. |
riceParameter |
O parâmetro de Golomb-Rice. Esse parâmetro está entre 227 e 254, inclusive. |
entriesCount |
O número de entradas codificadas por delta nos dados codificados. Se apenas um número inteiro foi codificado, esse valor será zero e o valor único será armazenado em |
encodedData |
Os deltas codificados usando o codificador Golomb-Rice. Uma string codificada em base64. |
HashListMetadata
Metadados sobre uma lista de hash específica.
| Representação JSON |
|---|
{ "threatTypes": [ enum ( |
| Campos | |
|---|---|
threatTypes[] |
Lista não ordenada. Se não estiver vazia, especifica que a lista de hash é um tipo de lista de ameaças e enumera os tipos de ameaças associadas a hashes ou prefixos de hash nessa lista. Pode estar vazio se a entrada não representar uma ameaça, ou seja, se representar um tipo provavelmente seguro. |
likelySafeTypes[] |
Lista não ordenada. Se não estiver vazia, isso especifica que a lista de hash representa uma lista de hashes provavelmente seguros e enumera as maneiras como eles são considerados provavelmente seguros. Esse campo é mutuamente exclusivo com o campo "threatTypes". |
description |
Uma descrição legível sobre esta lista. Escrito em inglês. |
hashLength |
O comprimento de hash compatível com essa lista de hash. Cada lista de hash vai aceitar exatamente um comprimento. Se um comprimento de hash diferente for introduzido para o mesmo conjunto de tipos de ameaça ou seguros, ele será apresentado como uma lista separada com um nome distinto e o respectivo comprimento de hash definido. |
ThreatType
Tipos de ameaças.
| Tipos enumerados | |
|---|---|
THREAT_TYPE_UNSPECIFIED |
Tipo de ameaça desconhecido. Se isso for retornado pelo servidor, o cliente vai ignorar o FullHashDetail envolvente. |
MALWARE |
Tipo de ameaça de malware. Malware é qualquer software ou aplicativo para dispositivos móveis projetado especificamente para causar danos a um computador, dispositivo móvel, bem como a usuários ou outro software. Além disso, o malware apresenta um comportamento malicioso que pode incluir a instalação de software sem o consentimento do usuário e a instalação de software nocivo, como vírus. Encontre mais informações neste link. |
SOCIAL_ENGINEERING |
Tipo de ameaça de engenharia social. As páginas de engenharia social fingem agir em nome de terceiros com a intenção de confundir os espectadores e fazê-los realizar uma ação que só fariam com um agente verdadeiro desse terceiro. O phishing é um tipo de engenharia social que engana o espectador para que ele realize a ação específica de fornecer informações, como credenciais de login. Encontre mais informações neste link. |
UNWANTED_SOFTWARE |
Tipo de ameaça de software indesejado. Software indesejado é qualquer software que não obedece aos Princípios de software do Google, mas não é malware. |
POTENTIALLY_HARMFUL_APPLICATION |
Tipo de ameaça de app potencialmente nocivo usado pelo Google Play Protect na Play Store. |
LikelySafeType
Tipos de sites provavelmente seguros.
O SearchHashesResponse não contém LikelySafeType intencionalmente.
| Tipos enumerados | |
|---|---|
LIKELY_SAFE_TYPE_UNSPECIFIED |
Desconhecido. |
GENERAL_BROWSING |
Esse site provavelmente é seguro o suficiente para navegação geral. Isso também é conhecido como cache global. |
CSD |
É provável que esse site seja seguro o suficiente para não precisar executar modelos de detecção do lado do cliente ou verificações de proteção de senha. |
DOWNLOAD |
É provável que esse site seja seguro o suficiente para que os downloads não precisem ser verificados. |
HashLength
O comprimento dos hashes em uma lista de hashes.
| Tipos enumerados | |
|---|---|
HASH_LENGTH_UNSPECIFIED |
Comprimento não especificado. |
FOUR_BYTES |
Cada hash é um prefixo de quatro bytes. |
EIGHT_BYTES |
Cada hash é um prefixo de oito bytes. |
SIXTEEN_BYTES |
Cada hash é um prefixo de 16 bytes. |
THIRTY_TWO_BYTES |
Cada hash é um hash completo de 32 bytes. |
Métodos |
|
|---|---|
|
Recebe o conteúdo mais recente de uma lista de hash. |