- Recurso: HashList
- RiceDeltaEncoded32Bit
- RiceDeltaEncoded64Bit
- RiceDeltaEncoded128Bit
- RiceDeltaEncoded256Bit
- HashListMetadata
- ThreatType
- LikelySafeType
- HashLength
- Métodos
Recurso: HashList
Es una lista de valores hash identificados por su nombre.
Representación JSON |
---|
{ "name": string, "version": string, "partialUpdate": boolean, "compressedRemovals": { object ( |
Campos | |
---|---|
name |
Es el nombre de la lista de hash. Ten en cuenta que la caché global también es solo una lista de hash y se puede consultar aquí. |
version |
Es la versión de la lista de hash. El cliente NO DEBE manipular esos bytes. String codificada en base64. |
partialUpdate |
Cuando es verdadero, se trata de una diferencia parcial que contiene elementos agregados y quitados según lo que el cliente ya tiene. Cuando es falso, esta es la lista de hash completa. Cuando es falso, el cliente DEBE borrar cualquier versión almacenada de forma local para esta lista de hash. Esto significa que la versión que tiene el cliente está muy desactualizada o que se cree que los datos del cliente están dañados. El campo Cuando es verdadero, el cliente DEBE aplicar una actualización incremental mediante la eliminación y, luego, la adición de elementos. |
compressedRemovals |
Es la versión codificada con delta-Rice de los índices de eliminación. Dado que cada lista de hash tiene menos de 2^32 entradas, los índices se tratan como números enteros de 32 bits y se codifican. |
minimumWaitDuration |
Los clientes deben esperar al menos este tiempo para volver a obtener la lista de hash. Si se omite o es cero, los clientes DEBEN recuperarlo de inmediato porque indica que el servidor tiene una actualización adicional para enviarle al cliente, pero no pudo hacerlo debido a las restricciones especificadas por el cliente. Una duración en segundos con hasta nueve dígitos decimales, que terminan en “ |
sha256Checksum |
La lista ordenada de todos los hashes, nuevamente con hash SHA256 Esta es la suma de comprobación de la lista ordenada de todos los valores hash presentes en la base de datos después de aplicar la actualización proporcionada. En caso de que no se hayan proporcionado actualizaciones, el servidor omitirá este campo para indicar que el cliente debe usar la suma de verificación existente. String codificada en base64. |
metadata |
Metadatos sobre la lista de hash. El método |
Campo de unión compressed_additions . Es la versión codificada en Rice-delta de las incorporaciones. Las longitudes de los prefijos hash de las incorporaciones son uniformes en todas las incorporaciones de la lista. Es el desired_hash_length que envía el cliente o un valor que elige el servidor si el cliente omite ese campo. compressed_additions puede ser solo uno de los siguientes: |
|
additionsFourBytes |
Las adiciones de 4 bytes |
additionsEightBytes |
Las adiciones de 8 bytes |
additionsSixteenBytes |
Las adiciones de 16 bytes |
additionsThirtyTwoBytes |
Las adiciones de 32 bytes |
RiceDeltaEncoded32Bit
Los datos codificados de Rice-Golomb. Se usa para hashes o índices de eliminación. Se garantiza que cada hash o índice tenga la misma longitud, que es exactamente de 32 bits.
En términos generales, si ordenamos todas las entradas de forma lexicográfica, veremos que los bits de orden superior tienden a no cambiar con tanta frecuencia como los de orden inferior. Esto significa que, si también tomamos la diferencia adyacente entre las entradas, los bits de orden superior tienen una alta probabilidad de ser cero. Esto aprovecha esta alta probabilidad de cero eligiendo esencialmente una cantidad determinada de bits. Es probable que todos los bits más significativos que esta sean cero, por lo que usamos la codificación unaria. Consulta el campo riceParameter
.
Nota histórica: La codificación Rice-delta se usó por primera vez en la versión 4 de esta API. En la versión 5, se realizaron dos mejoras significativas: en primer lugar, la codificación Rice-delta ahora está disponible con prefijos de hash de más de 4 bytes; en segundo lugar, los datos codificados ahora se tratan como números grandes para evitar un paso de ordenamiento costoso.
Representación JSON |
---|
{ "firstValue": integer, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Campos | |
---|---|
firstValue |
La primera entrada de los datos codificados (hashes o índices) o, si solo se codificó un solo prefijo o índice de hash, el valor de esa entrada. Si el campo está vacío, la entrada es cero. |
riceParameter |
El parámetro Golomb-Rice Se garantiza que este parámetro esté entre 3 y 30 inclusive. |
entriesCount |
Es la cantidad de entradas que se codifican delta en los datos codificados. Si solo se codificó un número entero, este será cero y el valor único se almacenará en |
encodedData |
Son los deltas codificados con el codificador Golomb-Rice. String codificada en base64. |
RiceDeltaEncoded64Bit
Es igual que RiceDeltaEncoded32Bit
, excepto que codifica números de 64 bits.
Representación JSON |
---|
{ "firstValue": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Campos | |
---|---|
firstValue |
La primera entrada de los datos codificados (hashes) o, si solo se codificó un solo prefijo de hash, el valor de esa entrada. Si el campo está vacío, la entrada es cero. |
riceParameter |
El parámetro Golomb-Rice Se garantiza que este parámetro esté entre 35 y 62 inclusive. |
entriesCount |
Es la cantidad de entradas que se codifican delta en los datos codificados. Si solo se codificó un número entero, este será cero y el valor único se almacenará en |
encodedData |
Son los deltas codificados con el codificador Golomb-Rice. String codificada en base64. |
RiceDeltaEncoded128Bit
Es igual que RiceDeltaEncoded32Bit
, excepto que codifica números de 128 bits.
Representación JSON |
---|
{ "firstValueHi": string, "firstValueLo": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Campos | |
---|---|
firstValueHi |
Los 64 bits superiores de la primera entrada de los datos codificados (hashes) Si el campo está vacío, los 64 bits superiores son todos cero. |
firstValueLo |
Los 64 bits inferiores de la primera entrada de los datos codificados (hashes) Si el campo está vacío, los 64 bits inferiores son todos cero. |
riceParameter |
El parámetro Golomb-Rice Se garantiza que este parámetro esté entre 99 y 126 inclusive. |
entriesCount |
Es la cantidad de entradas que se codifican delta en los datos codificados. Si solo se codificó un número entero, este será cero y el valor único se almacenará en |
encodedData |
Son los deltas codificados con el codificador Golomb-Rice. String codificada en base64. |
RiceDeltaEncoded256Bit
Es igual que RiceDeltaEncoded32Bit
, excepto que codifica números de 256 bits.
Representación JSON |
---|
{ "firstValueFirstPart": string, "firstValueSecondPart": string, "firstValueThirdPart": string, "firstValueFourthPart": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Campos | |
---|---|
firstValueFirstPart |
Los primeros 64 bits de la primera entrada de los datos codificados (hashes) Si el campo está vacío, los primeros 64 bits son todos cero. |
firstValueSecondPart |
Los bits del 65 al 128 de la primera entrada de los datos codificados (hashes) Si el campo está vacío, los bits del 65 al 128 son todos cero. |
firstValueThirdPart |
Los bits del 129 al 192 de la primera entrada de los datos codificados (hashes) Si el campo está vacío, los bits del 129 al 192 son todos cero. |
firstValueFourthPart |
Los últimos 64 bits de la primera entrada de los datos codificados (hashes) Si el campo está vacío, los últimos 64 bits son todos cero. |
riceParameter |
El parámetro Golomb-Rice Se garantiza que este parámetro esté entre 227 y 254 inclusive. |
entriesCount |
Es la cantidad de entradas que se codifican delta en los datos codificados. Si solo se codificó un número entero, este será cero y el valor único se almacenará en |
encodedData |
Son los deltas codificados con el codificador Golomb-Rice. String codificada en base64. |
HashListMetadata
Metadatos sobre una lista de hash en particular
Representación JSON |
---|
{ "threatTypes": [ enum ( |
Campos | |
---|---|
threatTypes[] |
Lista sin ordenar. Si no está vacía, especifica que la lista de hash es un tipo de lista de amenazas y enumera el tipo de amenazas asociadas con los valores hash o los prefijos de hash en esta lista. Puede estar vacío si la entrada no representa una amenaza, es decir, en el caso de que represente un tipo seguro. |
likelySafeTypes[] |
Lista sin ordenar. Si no está vacía, especifica que la lista de hash representa una lista de hashes que probablemente sean seguros y enumera las formas en que se consideran seguros. Este campo es mutuamente excluyente con el campo threatTypes. |
description |
Es una descripción legible por humanos de esta lista. Debe estar escrito en inglés. |
supportedHashLengths[] |
Las longitudes de hash compatibles para esta lista de hash. Cada lista de hash admitiría al menos una longitud. Por lo tanto, este campo no estará vacío. |
hashLength |
Es la longitud de hash compatible para esta lista de hash. Cada lista de hash admitirá exactamente una longitud. Si se introduce una longitud de hash diferente para el mismo conjunto de tipos de amenazas o tipos seguros, se incluirá como una lista independiente con un nombre distinto y el conjunto de longitud de hash correspondiente. |
ThreatType
Tipos de amenazas
Enumeraciones | |
---|---|
THREAT_TYPE_UNSPECIFIED |
Tipo de amenaza desconocido. Si el servidor muestra esto, el cliente debe ignorar el FullHashDetail que lo contiene por completo. |
MALWARE |
Tipo de amenaza de software malicioso. Un software malicioso es cualquier software o aplicación que se diseña específicamente para dañar una computadora, un dispositivo móvil, el software que lo ejecuta o a los usuarios. Su objetivo es llevar a cabo una acción malintencionada, como instalar software dañino (por ejemplo, virus) o programas sin el consentimiento del usuario. Puedes obtener más información en este vínculo. |
SOCIAL_ENGINEERING |
Tipo de amenaza de ingeniería social. Las páginas de ingeniería social pretenden actuar falsamente en nombre de un tercero con la intención de confundir a los usuarios para que realicen una acción en la que solo confiarían en un agente real de ese tercero. El phishing es un tipo de ingeniería social que engaña al usuario para que realice la acción específica de proporcionar información, como credenciales de acceso. Puedes obtener más información en este vínculo. |
UNWANTED_SOFTWARE |
Tipo de amenaza de software no deseado. El software no deseado es cualquier software que no cumpla con los Principios de Software de Google, pero que no sea software malicioso. |
POTENTIALLY_HARMFUL_APPLICATION |
Tipo de amenaza de aplicación potencialmente dañina como lo usa Google Play Protect para Play Store. |
LikelySafeType
Tipos de sitios que probablemente sean seguros
Ten en cuenta que SearchHashesResponse
no contiene LikelySafeType
de forma intencional.
Enumeraciones | |
---|---|
LIKELY_SAFE_TYPE_UNSPECIFIED |
Desconocido. |
GENERAL_BROWSING |
Es probable que este sitio sea lo suficientemente seguro para la navegación general. Esto también se conoce como caché global. |
CSD |
Es probable que este sitio sea lo suficientemente seguro como para que no sea necesario ejecutar modelos de detección del cliente ni verificaciones de protección con contraseña. |
DOWNLOAD |
Es probable que este sitio sea lo suficientemente seguro como para que no se deban verificar las descargas. |
HashLength
Es la longitud de los hashes en una lista de hashes.
Enumeraciones | |
---|---|
HASH_LENGTH_UNSPECIFIED |
Longitud no especificada. El servidor no mostrará este valor en las respuestas al cliente (en el campo supportedHashLengths ), pero el cliente puede enviar este valor al servidor (en el campo desiredHashLength ), en cuyo caso el servidor elegirá un valor automáticamente. Los clientes DEBEN permitir que el servidor elija un valor. |
FOUR_BYTES |
Cada hash es un prefijo de cuatro bytes. |
EIGHT_BYTES |
Cada hash es un prefijo de ocho bytes. |
SIXTEEN_BYTES |
Cada hash es un prefijo de dieciséis bytes. |
THIRTY_TWO_BYTES |
Cada hash es un hash completo de treinta y dos bytes. |
Métodos |
|
---|---|
|
Obtén el contenido más reciente de una lista de hash. |