- Resource: HashList
- RiceDeltaEncoded32Bit
- RiceDeltaEncoded64Bit
- RiceDeltaEncoded128Bit
- RiceDeltaEncoded256Bit
- HashListMetadata
- ThreatType
- LikelySafeType
- HashLength
- Metode
Resource: HashList
Daftar hash yang diidentifikasi berdasarkan namanya.
Representasi JSON |
---|
{ "name": string, "version": string, "partialUpdate": boolean, "compressedRemovals": { object ( |
Kolom | |
---|---|
name |
Nama daftar hash. Perlu diperhatikan bahwa Global Cache juga hanyalah daftar hash dan dapat dirujuk di sini. |
version |
Versi daftar hash. Klien TIDAK BOLEH memanipulasi byte tersebut. String berenkode base64. |
partialUpdate |
Jika true (benar), ini adalah perbedaan parsial yang berisi penambahan dan penghapusan berdasarkan apa yang sudah dimiliki klien. Jika {i>false<i}, ini adalah daftar {i>hash<i} yang lengkap. Jika salah (false), klien HARUS menghapus versi yang disimpan secara lokal untuk daftar hash ini. Artinya, versi yang dimiliki oleh klien benar-benar sudah usang atau data klien diyakini telah rusak. Kolom Jika benar, klien HARUS menerapkan update inkremental dengan menerapkan penghapusan, lalu penambahan. |
compressedRemovals |
Versi indeks penghapusan yang dienkode dengan Rice-delta. Karena setiap daftar hash pasti memiliki kurang dari 2^32 entri, indeks diperlakukan sebagai bilangan bulat 32-bit dan dikodekan. |
minimumWaitDuration |
Klien harus menunggu setidaknya selama ini untuk mendapatkan daftar hash lagi. Jika dihilangkan atau nol, klien HARUS segera mengambil karena hal ini menunjukkan bahwa server memiliki update tambahan untuk dikirim ke klien, tetapi tidak bisa karena batasan yang ditentukan klien. Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan ' |
metadata |
Metadata tentang daftar hash. Kolom ini tidak diisi oleh metode |
Kolom union compressed_additions . Versi penambahan yang dienkode dengan Rice-delta. Panjang penambahan awalan hash seragam di semua penambahan dalam daftar. Ini bisa desired_hash_length yang dikirim oleh klien atau nilai yang dipilih oleh server jika klien menghilangkan kolom tersebut. compressed_additions hanya dapat berupa salah satu dari yang berikut: |
|
additionsFourBytes |
Penambahan 4 byte. |
additionsEightBytes |
Penambahan 8 byte. |
additionsSixteenBytes |
Penambahan 16 byte. |
additionsThirtyTwoBytes |
Penambahan 32 byte. |
Kolom union checksum . Ini adalah {i>checksum<i} untuk daftar yang diurutkan dari semua {i>hash<i} yang ada dalam {i>database<i} setelah menerapkan pembaruan yang disediakan. Ini adalah "salah satu" isian untuk memungkinkan
beberapa algoritma {i>hashing<i}. Server juga dapat menghilangkan kolom ini (jika tidak ada update yang diberikan) untuk menunjukkan bahwa klien harus menggunakan checksum yang ada. checksum hanya dapat berupa salah satu dari berikut: |
|
sha256Checksum |
Daftar yang diurutkan dari semua hash, yang di-hash lagi dengan SHA256. String berenkode base64. |
RiceDeltaEncoded32Bit
Data yang dienkode ke Rice-Golomb. Digunakan untuk indeks hash atau penghapusan. Setiap {i>hash<i} atau indeks di sini dijamin memiliki panjang yang sama, dan panjangnya tepat 32 bit.
Secara umum, jika kita mengurutkan semua entri secara leksikografis, kita akan menemukan bahwa bit urutan yang lebih tinggi cenderung tidak berubah sesering bit dengan urutan yang lebih rendah. Ini berarti bahwa jika kita juga mengambil selisih antar entri yang berdekatan, bit urutan yang lebih tinggi memiliki probabilitas tinggi untuk menjadi nol. Hal ini mengeksploitasi probabilitas nol yang tinggi ini dengan pada dasarnya memilih jumlah bit tertentu; bit yang lebih signifikan dari angka ini cenderung
nol jadi kita menggunakan pengkodean {i>unary<i}. Lihat kolom riceParameter
.
Catatan historis: encoding Rice-delta pertama kali digunakan dalam V4 API ini. Di V5, dua peningkatan signifikan dilakukan: pertama, encoding Rice-delta sekarang tersedia dengan awalan hash yang lebih panjang dari 4 byte; kedua, data yang dienkode kini diperlakukan sebagai big-endian untuk menghindari langkah penyortiran yang mahal.
Representasi JSON |
---|
{ "firstValue": integer, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Kolom | |
---|---|
firstValue |
Entri pertama dalam data yang dienkode (hash atau indeks), atau, jika hanya awalan atau indeks hash tunggal yang dienkode, nilai entri tersebut. Jika kolom kosong, entrinya adalah nol. |
riceParameter |
Parameter Golomb-Rice. Parameter ini dijamin antara 3 dan 30, inklusif. |
entriesCount |
Jumlah entri yang dienkode dengan delta dalam data yang dienkode. Jika hanya satu bilangan bulat yang dienkode, nilainya akan menjadi nol dan nilai tunggal tersebut akan disimpan di |
encodedData |
Delta yang dienkode yang dienkode menggunakan coder Golomb-Rice. String berenkode base64. |
RiceDeltaEncoded64Bit
Sama seperti RiceDeltaEncoded32Bit
, tetapi metode ini mengenkode angka 64-bit.
Representasi JSON |
---|
{ "firstValue": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Kolom | |
---|---|
firstValue |
Entri pertama dalam data yang dienkode (hash), atau, jika hanya satu awalan hash yang dienkode, nilai entri tersebut. Jika kolom kosong, entrinya adalah nol. |
riceParameter |
Parameter Golomb-Rice. Parameter ini dijamin antara 35 dan 62, inklusif. |
entriesCount |
Jumlah entri yang dienkode dengan delta dalam data yang dienkode. Jika hanya satu bilangan bulat yang dienkode, nilainya akan menjadi nol dan nilai tunggal tersebut akan disimpan di |
encodedData |
Delta yang dienkode yang dienkode menggunakan coder Golomb-Rice. String berenkode base64. |
RiceDeltaEncoded128Bit
Sama seperti RiceDeltaEncoded32Bit
, tetapi metode ini mengenkode angka 128-bit.
Representasi JSON |
---|
{ "firstValueHi": string, "firstValueLo": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Kolom | |
---|---|
firstValueHi |
64 bit atas dari entri pertama dalam data yang dienkode (hash). Jika kolom kosong, 64 bit di atas semuanya bernilai nol. |
firstValueLo |
64 bit yang lebih rendah dari entri pertama dalam data yang dienkode (hash). Jika kolom itu kosong, 64 bit yang lebih rendah semuanya nol. |
riceParameter |
Parameter Golomb-Rice. Parameter ini dijamin antara 99 dan 126, inklusif. |
entriesCount |
Jumlah entri yang dienkode dengan delta dalam data yang dienkode. Jika hanya satu bilangan bulat yang dienkode, nilainya akan menjadi nol dan nilai tunggal tersebut akan disimpan di |
encodedData |
Delta yang dienkode yang dienkode menggunakan coder Golomb-Rice. String berenkode base64. |
RiceDeltaEncoded256Bit
Sama seperti RiceDeltaEncoded32Bit
, tetapi kode ini mengenkode angka 256-bit.
Representasi JSON |
---|
{ "firstValueFirstPart": string, "firstValueSecondPart": string, "firstValueThirdPart": string, "firstValueFourthPart": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
Kolom | |
---|---|
firstValueFirstPart |
64 bit pertama dari entri pertama dalam data yang dienkode (hash). Jika kolom tersebut kosong, 64 bit pertama semuanya bernilai nol. |
firstValueSecondPart |
65 hingga 128 bit dari entri pertama dalam data yang dienkode (hash). Jika {i>field<i} tersebut kosong, bit 65 sampai 128 akan bernilai nol. |
firstValueThirdPart |
Bit 129 hingga 192 dari entri pertama dalam data yang dienkode (hash). Jika {i>field<i} tersebut kosong, bit 129 sampai 192 akan bernilai nol. |
firstValueFourthPart |
64 bit terakhir dari entri pertama dalam data yang dienkode (hash). Jika kolom kosong, 64 bit terakhir semuanya nol. |
riceParameter |
Parameter Golomb-Rice. Parameter ini dijamin antara 227 dan 254, inklusif. |
entriesCount |
Jumlah entri yang dienkode dengan delta dalam data yang dienkode. Jika hanya satu bilangan bulat yang dienkode, nilainya akan menjadi nol dan nilai tunggal tersebut akan disimpan di |
encodedData |
Delta yang dienkode yang dienkode menggunakan coder Golomb-Rice. String berenkode base64. |
HashListMetadata
Metadata tentang daftar hash tertentu.
Representasi JSON |
---|
{ "threatTypes": [ enum ( |
Kolom | |
---|---|
threatTypes[] |
Daftar yang tidak diurutkan. Jika tidak kosong, tindakan ini akan menentukan bahwa daftar hash adalah jenis daftar ancaman, dan ini menghitung jenis ancaman yang terkait dengan hash atau awalan hash dalam daftar hash ini. Boleh kosong jika entri tidak mewakili ancaman, yaitu jika entri tersebut mewakili jenis yang kemungkinan aman. |
likelySafeTypes[] |
Daftar yang tidak diurutkan. Jika tidak kosong, hal ini menentukan bahwa daftar hash mewakili daftar kemungkinan hash yang aman, dan ini menguraikan cara yang dianggap aman. Kolom ini sama-sama bersifat eksklusif dengan kolom ancamanTypes. |
mobileOptimized |
Apakah daftar ini dioptimalkan untuk perangkat seluler (Android dan iOS). |
description |
Deskripsi daftar ini yang dapat dibaca manusia. Ditulis dalam bahasa Inggris. |
supportedHashLengths[] |
Panjang hash yang didukung untuk daftar hash ini. Setiap daftar {i>hash <i}akan mendukung setidaknya satu panjang. Oleh karena itu, kolom ini tidak akan kosong. |
ThreatType
Jenis-jenis ancaman.
Enum | |
---|---|
THREAT_TYPE_UNSPECIFIED |
Jenis ancaman tidak diketahui. Jika ini ditampilkan oleh server, klien akan mengabaikan FullHashDetail yang mencakupnya. |
MALWARE |
Jenis ancaman malware. Malware adalah software atau aplikasi seluler yang dirancang khusus untuk merusak komputer, perangkat seluler, software yang dijalankannya, atau penggunanya. Malware menunjukkan perilaku berbahaya yang dapat meliputi penginstalan software tanpa izin dari pengguna dan penginstalan software berbahaya seperti virus. Informasi lebih lanjut dapat ditemukan di sini. |
SOCIAL_ENGINEERING |
Jenis ancaman manipulasi psikologis. Halaman manipulasi psikologis mengaku-ngaku bertindak atas nama pihak ketiga dengan tujuan membingungkan penonton sehingga melakukan tindakan yang hanya akan dipercaya oleh penonton sebagai agen sebenarnya dari pihak ketiga tersebut. Phishing adalah jenis manipulasi psikologis yang mengelabui penonton agar melakukan tindakan tertentu dalam memberikan informasi, seperti kredensial login. Informasi lebih lanjut dapat ditemukan di sini. |
UNWANTED_SOFTWARE |
Jenis ancaman software yang tidak diinginkan. Software yang tidak diinginkan adalah software yang tidak mematuhi Prinsip Software Google, tetapi bukan malware. |
POTENTIALLY_HARMFUL_APPLICATION |
Jenis ancaman aplikasi yang berpotensi membahayakan seperti yang digunakan oleh Google Play Protect untuk Play Store. |
LikelySafeType
Jenis situs yang kemungkinan aman.
Perlu diperhatikan bahwa SearchHashesResponse
sengaja tidak berisi LikelySafeType
.
Enum | |
---|---|
LIKELY_SAFE_TYPE_UNSPECIFIED |
Tak diketahui. |
GENERAL_BROWSING |
Situs ini mungkin cukup aman untuk penjelajahan umum. Hal ini juga dikenal sebagai {i> cache global<i}. |
CSD |
Situs ini mungkin cukup aman sehingga tidak perlu menjalankan model Deteksi Sisi Klien atau pemeriksaan perlindungan sandi. |
DOWNLOAD |
Situs ini kemungkinan cukup aman sehingga download dari situs tersebut tidak perlu diperiksa. |
HashLength
Panjang {i>hash<i} dalam sebuah daftar {i>hash<i}.
Enum | |
---|---|
HASH_LENGTH_UNSPECIFIED |
Panjang tidak ditentukan. Server tidak akan menampilkan nilai ini sebagai respons terhadap klien (di kolom supportedHashLengths ), tetapi klien diizinkan untuk mengirim nilai ini ke server (di kolom desiredHashLength ), yang dalam hal ini server akan memilih nilai secara otomatis. Klien HARUS membiarkan server memilih nilai. |
FOUR_BYTES |
Setiap {i>hash<i} adalah awalan empat byte. |
EIGHT_BYTES |
Setiap hash adalah awalan delapan byte. |
SIXTEEN_BYTES |
Setiap {i>hash<i} adalah awalan enam belas byte. |
THIRTY_TWO_BYTES |
Setiap {i>hash<i} adalah {i>hash<i} penuh tiga puluh dua byte. |
Metode |
|
---|---|
|
Mendapatkan konten terbaru dari daftar hash. |