- Recurso: HashList
- RiceDeltaEncoded32Bit
- RiceDeltaEncoded64Bit
- RiceDeltaEncoded128Bit
- RiceDeltaEncoded256Bit
- HashListMetadata
- ThreatType
- LikelySafeType
- HashLength
- Métodos
Recurso: HashList
Una lista de hashes identificados por su nombre.
Representación JSON |
---|
{ "name": string, "version": string, "partialUpdate": boolean, "compressedRemovals": { object ( |
Campos | |
---|---|
name |
El nombre de la lista de hash. Ten en cuenta que la caché global también es solo una lista de hash, y aquí se puede hacer referencia a ella. |
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 adiciones y eliminaciones basadas en lo que ya tiene el cliente. Cuando es falso, esta es la lista de hash completa. Cuando es falso, el cliente DEBE borrar cualquier versión almacenada localmente para esta lista de hash. Esto significa que la versión que posee 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 aplicando eliminaciones y luego adiciones. |
compressedRemovals |
La versión codificada en arroz delta de los índices de eliminación. Como cada lista de hash definitivamente tiene menos de 2^32 entradas, los índices se tratan como 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 si es cero, los clientes DEBEN recuperar de inmediato porque indica que el servidor tiene una actualización adicional que enviar al cliente, pero no podría debido a las restricciones especificadas por el cliente. Una duración en segundos con hasta nueve dígitos decimales, que terminan en “ |
metadata |
Metadatos sobre la lista hash. Esto no se propaga con el método |
Campo de unión compressed_additions . La versión de las adiciones codificada en arroz delta. Las longitudes del prefijo hash de las adiciones son uniformes en todas las adiciones de la lista. Es el desired_hash_length que envió el cliente o un valor elegido por el servidor si el cliente omitió 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 |
Campo de unión checksum . Esta es la suma de comprobación de la lista ordenada de todos los hashes presentes en la base de datos después de aplicar la actualización proporcionada. Este es un "oneof" para permitir múltiples algoritmos de hash. También es posible que el servidor omita este campo (en el caso de que no se hayan proporcionado actualizaciones) para indicar que el cliente debe usar la suma de verificación existente. Las direcciones (checksum ) solo pueden ser una de las siguientes opciones: |
|
sha256Checksum |
La lista ordenada de todos los hashes, con hash de nuevo con SHA256. String codificada en base64. |
RiceDeltaEncoded32Bit
Los datos codificados con Rice-Golomb. Se usa para generar hashes o índices de eliminación. Se garantiza que cada hash o índice tenga la misma longitud, que es de 32 bits exactamente.
En términos generales, si ordenamos todas las entradas de manera lexicográfica, descubriremos que los bits de orden superior tienden a no cambiar con tanta frecuencia como los bits 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. De este modo, se explota la alta probabilidad de cero mediante la elección de una cierta cantidad de bits; Es probable que todos los bits más importantes que esto sean cero,
por lo que usamos una codificación unaria. Observa el campo riceParameter
.
Nota histórica: La codificación arroz-delta se usó por primera vez en la versión V4 de esta API. En V5, se realizaron dos mejoras significativas. En primer lugar, la codificación Rice-delta ahora está disponible con prefijos hash de más de 4 bytes. En segundo lugar, los datos codificados se tratan como big-endian para evitar un paso costoso de ordenación.
Representación JSON |
---|
{ "firstValue": integer, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Campos | |
---|---|
firstValue |
Es la primera entrada de los datos codificados (hashes o índices) o, si solo se codificó un 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 |
El número de entradas con codificación 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
, con la excepción de que esto codifica números de 64 bits.
Representación JSON |
---|
{ "firstValue": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Campos | |
---|---|
firstValue |
Es la primera entrada de los datos codificados (hashes) o, si solo se codificó un prefijo de hash único, 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 |
El número de entradas con codificación 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
, con la excepción de que esto codifica números de 128 bits.
Representación JSON |
---|
{ "firstValueHi": string, "firstValueLo": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Campos | |
---|---|
firstValueHi |
Son los 64 bits superiores de la primera entrada en los datos codificados (hashes). Si el campo está vacío, los 64 bits superiores son cero. |
firstValueLo |
Son los 64 bits inferiores de la primera entrada en los datos codificados (hashes). Si el campo está vacío, los 64 bits inferiores son cero. |
riceParameter |
El parámetro Golomb-Rice. Se garantiza que este parámetro esté entre 99 y 126, inclusive. |
entriesCount |
El número de entradas con codificación 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
, con la excepción de que esto 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 |
Son los primeros 64 bits de la primera entrada en los datos codificados (hashes). Si el campo está vacío, los primeros 64 bits son cero. |
firstValueSecondPart |
Son los bits 65 a 128 de la primera entrada en los datos codificados (hashes). Si el campo está vacío, los bits 65 a 128 son cero. |
firstValueThirdPart |
Son los bits 129 a 192 de la primera entrada en los datos codificados (hashes). Si el campo está vacío, los bits entre 129 y 192 son cero. |
firstValueFourthPart |
Son los últimos 64 bits de la primera entrada en los datos codificados (hashes). Si el campo está vacío, los últimos 64 bits son cero. |
riceParameter |
El parámetro Golomb-Rice. Se garantiza que este parámetro esté entre 227 y 254, inclusive. |
entriesCount |
El número de entradas con codificación 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 hash en particular.
Representación JSON |
---|
{ "threatTypes": [ enum ( |
Campos | |
---|---|
threatTypes[] |
Lista sin ordenar. Si no está vacía, especifica que la lista hash es un tipo de lista de amenazas y se enumera el tipo de amenazas asociadas con los hash o prefijos de hash en esta lista. Puede estar vacía si la entrada no representa una amenaza, es decir, en el caso de que representa un tipo seguro que probablemente esté. |
likelySafeTypes[] |
Lista sin ordenar. Si no está vacía, se especifica que la lista de hash representa una lista de hashes que probablemente sean seguros y se enumeran las formas en que se consideran seguros. Este campo es mutuamente excluyente con el campo ThreatTypes. |
mobileOptimized |
Si esta lista está optimizada para dispositivos móviles (iOS y Android) |
description |
Es una descripción legible sobre esta lista. Escrito en inglés. |
supportedHashLengths[] |
Las longitudes de hash admitidas para esta lista de hash. Cada lista de hash admitiría al menos una longitud. Por lo tanto, este campo no estará vacío. |
ThreatType
Tipos de amenazas.
Enumeraciones | |
---|---|
THREAT_TYPE_UNSPECIFIED |
Tipo de amenaza desconocido. Si el servidor devuelve esto, el cliente debe ignorar por completo el FullHashDetail que lo contiene. |
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 falsamente actuar en nombre de un tercero con la intención de confundir a los usuarios para que realicen una acción con la que el usuario solo confiaría en un verdadero agente 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 las 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 aquel que no cumple con los Principios sobre el software de Google, pero que no es software malicioso. |
POTENTIALLY_HARMFUL_APPLICATION |
Tipo de amenaza de aplicación potencialmente dañina como usa Google Play Protect para Play Store. |
LikelySafeType
Tipos de sitios que probablemente sean seguros.
Ten en cuenta que SearchHashesResponse
no contiene LikelySafeType
de manera 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 de contraseña. |
DOWNLOAD |
Es probable que este sitio sea lo suficientemente seguro como para que no sea necesario revisar sus descargas. |
HashLength
La longitud de los hashes en una lista de hash.
Enumeraciones | |
---|---|
HASH_LENGTH_UNSPECIFIED |
Longitud no especificada. El servidor no mostrará este valor como respuesta al cliente (en el campo supportedHashLengths ), pero el cliente puede enviar este valor al servidor (en el campo desiredHashLength ); en ese caso, el servidor elegirá un valor automáticamente. Los clientes DEBEN dejar 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. |