Indeks
SafeBrowsing
(antarmuka)BatchGetHashListsRequest
(pesan)BatchGetHashListsResponse
(pesan)FullHash
(pesan)FullHash.FullHashDetail
(pesan)GetHashListRequest
(pesan)HashList
(pesan)HashListMetadata
(pesan)HashListMetadata.HashLength
(enum)LikelySafeType
(enum)ListHashListsRequest
(pesan)ListHashListsResponse
(pesan)RiceDeltaEncoded128Bit
(pesan)RiceDeltaEncoded256Bit
(pesan)RiceDeltaEncoded32Bit
(pesan)RiceDeltaEncoded64Bit
(pesan)SearchHashesRequest
(pesan)SearchHashesResponse
(pesan)SizeConstraints
(pesan)ThreatAttribute
(enum)ThreatType
(enum)
SafeBrowsing
Safe Browsing API memungkinkan klien memeriksa resource web (biasanya URL) berdasarkan daftar resource web tidak aman yang terus diperbarui Google.
BatchGetHashLists |
---|
Mendapatkan beberapa daftar hash sekaligus. Klien biasanya perlu mendapatkan beberapa daftar hash. Penggunaan metode ini lebih disarankan daripada menggunakan metode Get reguler beberapa kali. Ini adalah metode Get batch standar seperti yang ditentukan oleh https://google.aip.dev/231 dan metode HTTP-nya juga GET. |
GetHashList |
---|
Mendapatkan konten terbaru dari daftar hash. Daftar hash dapat berupa daftar ancaman atau daftar non-ancaman seperti Cache Global. Ini adalah metode Get standar seperti yang ditentukan oleh https://google.aip.dev/131 dan metode HTTP-nya juga GET. |
ListHashLists |
---|
Mencantumkan daftar hash. Di V5 API, Google tidak akan pernah menghapus daftar hash yang pernah ditampilkan oleh metode ini. Hal ini memungkinkan klien untuk melewati penggunaan metode ini dan hanya melakukan hard code pada semua daftar hash yang mereka butuhkan. Ini adalah metode Daftar standar seperti yang ditentukan oleh https://google.aip.dev/132 dan metode HTTP-nya adalah GET. |
SearchHashes |
---|
Menelusuri hash lengkap yang cocok dengan awalan yang ditentukan. Ini adalah metode kustom seperti yang ditentukan oleh https://google.aip.dev/136 (metode kustom mengacu pada metode ini yang memiliki nama kustom dalam nomenclatur pengembangan API umum Google; metode ini tidak mengacu pada penggunaan metode HTTP kustom). |
BatchGetHashListsRequest
Permintaan untuk mendapatkan beberapa daftar hash secara bersamaan.
Kolom | |
---|---|
names[] |
Wajib. Nama daftar hash tertentu. Daftar ini MUNGKIN merupakan daftar ancaman, atau mungkin Cache Global. Nama TIDAK BOLEH berisi duplikat; jika ada, klien akan mendapatkan error. |
version[] |
Versi daftar hash yang sudah dimiliki klien. Jika ini adalah pertama kalinya klien mengambil daftar hash, kolom harus dibiarkan kosong. Jika tidak, klien harus menyediakan versi yang sebelumnya diterima dari server. Klien TIDAK BOLEH memanipulasi byte tersebut. Klien tidak perlu mengirim versi dalam urutan yang sama dengan nama daftar yang sesuai. Klien dapat mengirim lebih sedikit atau lebih banyak versi dalam permintaan daripada jumlah nama. Namun, klien TIDAK BOLEH mengirim beberapa versi yang sesuai dengan nama yang sama; jika melakukannya, klien akan mendapatkan error. Catatan historis: di API V4, ini disebut |
desired_hash_length |
Panjang awalan hash yang diinginkan dari hash yang ditampilkan dalam byte. Kemudian, server akan menampilkan semua awalan hash dalam panjang yang ditentukan ini. Daftar hash yang berbeda memiliki persyaratan yang berbeda pada nilai kolom Khusus untuk |
size_constraints |
Batasan ukuran pada setiap daftar. Jika dihilangkan, tidak ada batasan. Perhatikan bahwa ukuran di sini adalah per daftar, bukan digabungkan di semua daftar. |
BatchGetHashListsResponse
Respons yang berisi beberapa daftar hash.
Kolom | |
---|---|
hash_lists[] |
Daftar hash dalam urutan yang sama dengan yang diberikan dalam permintaan. |
FullHash
Hash lengkap yang diidentifikasi dengan satu atau beberapa kecocokan.
Kolom | |
---|---|
full_hash |
Hash lengkap yang cocok. Ini adalah hash SHA256. Panjangnya akan tepat 32 byte. |
full_hash_details[] |
Daftar yang tidak diurutkan. Kolom berulang yang mengidentifikasi detail yang relevan dengan hash lengkap ini. |
FullHashDetail
Detail tentang hash lengkap yang cocok.
Catatan penting tentang kompatibilitas maju: jenis ancaman dan atribut ancaman baru dapat ditambahkan oleh server kapan saja; penambahan tersebut dianggap sebagai perubahan versi minor. Kebijakan Google adalah tidak mengekspos nomor versi minor di API (lihat https://cloud.google.com/apis/design/versioning untuk mengetahui kebijakan pemberian versi), sehingga klien HARUS siap menerima pesan FullHashDetail
yang berisi nilai enum ThreatType
atau nilai enum ThreatAttribute
yang dianggap tidak valid oleh klien. Oleh karena itu, klien bertanggung jawab untuk memeriksa validitas semua nilai enum ThreatType
dan ThreatAttribute
; jika ada nilai yang dianggap tidak valid, klien HARUS mengabaikan seluruh pesan FullHashDetail
.
Kolom | |
---|---|
threat_type |
Jenis ancaman. Kolom ini tidak akan pernah kosong. |
attributes[] |
Daftar yang tidak diurutkan. Atribut tambahan tentang hash lengkap tersebut. Kolom ini mungkin kosong. |
GetHashListRequest
Permintaan untuk mendapatkan daftar hash, yang dapat berupa daftar ancaman atau daftar non-ancaman seperti Cache Global.
Yang baru di V5: Yang sebelumnya disebut states
di V4 diganti namanya menjadi version
agar lebih jelas. Daftar kini diberi nama, jenis platform, dan jenis entri ancaman dihapus. Sekarang, beberapa daftar dapat memiliki jenis ancaman yang sama, atau satu daftar yang terkait dengan beberapa jenis ancaman. Klien memiliki kemampuan baru untuk menentukan panjang hash yang diinginkan. Hal ini merupakan bagian dari jawaban untuk awalan hash panjang variabel V4 yang telah menyebabkan masalah di banyak implementasi klien: semua hash dalam daftar kini memiliki satu panjang, sehingga memungkinkan implementasi klien yang jauh lebih efisien. Batasan telah disederhanakan, dan jenis kompresi dihapus (kompresi selalu diterapkan).
Kolom | |
---|---|
name |
Wajib. Nama daftar hash khusus ini. Daftar tersebut dapat berupa daftar ancaman, atau dapat berupa Cache Global. |
version |
Versi daftar hash yang sudah dimiliki klien. Jika ini adalah pertama kalinya klien mengambil daftar hash, kolom ini HARUS dibiarkan kosong. Jika tidak, klien HARUS memberikan versi yang sebelumnya diterima dari server. Klien TIDAK BOLEH memanipulasi byte tersebut. Yang baru di V5: di V4 API, ini disebut |
desired_hash_length |
Panjang awalan hash yang diinginkan dari hash yang ditampilkan dalam byte. Kemudian, server akan menampilkan semua awalan hash dalam panjang yang ditentukan ini. Daftar hash yang berbeda memiliki persyaratan yang berbeda pada nilai kolom |
size_constraints |
Batasan ukuran pada daftar. Jika dihilangkan, tidak ada batasan. Batasan direkomendasikan di semua perangkat dengan daya pemrosesan, bandwidth, atau penyimpanan terbatas. |
HashList
Daftar hash yang diidentifikasi berdasarkan namanya.
Kolom | |
---|---|
name |
Nama daftar hash. Perhatikan bahwa Cache Global juga hanya merupakan daftar hash dan dapat dirujuk di sini. |
version |
Versi daftar hash. Klien TIDAK BOLEH memanipulasi byte tersebut. |
partial_update |
Jika benar, ini adalah perbedaan sebagian yang berisi penambahan dan penghapusan berdasarkan apa yang sudah dimiliki klien. Jika salah, ini adalah daftar hash lengkap. Jika salah, klien HARUS menghapus versi yang disimpan secara lokal untuk daftar hash ini. Hal ini berarti versi yang dimiliki klien sudah sangat usang atau data klien diyakini rusak. Kolom Jika benar, klien HARUS menerapkan update inkremental dengan menerapkan penghapusan, lalu penambahan. |
compressed_removals |
Versi indeks penghapusan yang dienkode Rice-delta. Karena setiap daftar hash pasti memiliki kurang dari 2^32 entri, indeks diperlakukan sebagai bilangan bulat 32-bit dan dienkode. |
minimum_wait_duration |
Klien harus menunggu setidaknya selama ini untuk mendapatkan daftar hash lagi. Jika dihilangkan atau nol, klien HARUS segera mengambil karena menunjukkan bahwa server memiliki update tambahan yang akan dikirim ke klien, tetapi tidak dapat dilakukan karena batasan yang ditentukan klien. |
sha256_checksum |
Daftar semua hash yang diurutkan, di-hash lagi dengan SHA256. Ini adalah checksum untuk daftar yang diurutkan dari semua hash yang ada di database setelah menerapkan update yang disediakan. Jika tidak ada update yang diberikan, server akan menghapus kolom ini untuk menunjukkan bahwa klien harus menggunakan checksum yang ada. |
metadata |
Metadata tentang daftar hash. Ini tidak diisi oleh metode |
Kolom union compressed_additions . Versi tambahan yang dienkode Rice-delta. Panjang awalan hash penambahan bersifat seragam di semua penambahan dalam daftar. Ini adalah 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 hal berikut: |
|
additions_four_bytes |
Penambahan 4 byte. |
additions_eight_bytes |
Penambahan 8 byte. |
additions_sixteen_bytes |
Penambahan 16 byte. |
additions_thirty_two_bytes |
Penambahan 32 byte. |
HashListMetadata
Metadata tentang daftar hash tertentu.
Kolom | |
---|---|
threat_types[] |
Daftar yang tidak diurutkan. Jika tidak kosong, ini menentukan bahwa daftar hash adalah jenis daftar ancaman, dan ini menghitung jenis ancaman yang terkait dengan hash atau awalan hash dalam daftar hash ini. Dapat kosong jika entri tidak mewakili ancaman, yaitu jika entri mewakili jenis yang kemungkinan aman. |
likely_safe_types[] |
Daftar yang tidak diurutkan. Jika tidak kosong, ini menentukan bahwa daftar hash mewakili daftar hash yang kemungkinan aman, dan ini mencantumkan cara hash tersebut dianggap kemungkinan aman. Kolom ini sama eksklusifnya dengan kolom threat_types. |
description |
Deskripsi yang dapat dibaca manusia tentang daftar ini. Ditulis dalam bahasa Inggris. |
supported_hash_lengths[] |
Panjang hash yang didukung untuk daftar hash ini. Setiap daftar hash akan mendukung minimal satu panjang. Oleh karena itu, kolom ini tidak akan kosong. |
hash_length |
Panjang hash yang didukung untuk daftar hash ini. Setiap daftar hash akan mendukung tepat satu panjang. Jika panjang hash yang berbeda diperkenalkan untuk kumpulan jenis ancaman atau jenis aman yang sama, panjang hash tersebut akan diperkenalkan sebagai daftar terpisah dengan nama yang berbeda dan kumpulan panjang hash masing-masing. |
HashLength
Panjang hash dalam daftar hash.
Enum | |
---|---|
HASH_LENGTH_UNSPECIFIED |
Panjang tidak ditentukan. Server tidak akan menampilkan nilai ini dalam respons ke klien (di kolom supported_hash_lengths ), tetapi klien diizinkan untuk mengirim nilai ini ke server (di kolom desired_hash_length ), dalam hal ini server akan memilih nilai secara otomatis. Klien HARUS mengizinkan server memilih nilai. |
FOUR_BYTES |
Setiap hash adalah awalan empat byte. |
EIGHT_BYTES |
Setiap hash adalah awalan delapan byte. |
SIXTEEN_BYTES |
Setiap hash adalah awalan enam belas byte. |
THIRTY_TWO_BYTES |
Setiap hash adalah hash penuh tiga puluh dua byte. |
LikelySafeType
Jenis situs yang kemungkinan aman.
Perhatikan bahwa SearchHashesResponse
sengaja tidak berisi LikelySafeType
.
Enum | |
---|---|
LIKELY_SAFE_TYPE_UNSPECIFIED |
Tak diketahui. |
GENERAL_BROWSING |
Situs ini mungkin cukup aman untuk penjelajahan umum. Ini juga dikenal sebagai cache global. |
CSD |
Situs ini kemungkinan cukup aman sehingga tidak perlu menjalankan model Deteksi Sisi Klien atau pemeriksaan perlindungan sandi. |
DOWNLOAD |
Situs ini mungkin cukup aman sehingga download dari situs tersebut tidak perlu diperiksa. |
ListHashListsRequest
Permintaan untuk mencantumkan daftar hash yang tersedia.
Kolom | |
---|---|
page_size |
Jumlah maksimum daftar hash yang akan ditampilkan. Layanan mungkin menampilkan lebih sedikit dari nilai ini. Jika tidak ditentukan, server akan memilih ukuran halaman, yang mungkin lebih besar dari jumlah daftar hash sehingga penomoran halaman tidak diperlukan. |
page_token |
Token halaman, diterima dari panggilan |
ListHashListsResponse
Respons yang berisi metadata tentang daftar hash.
Kolom | |
---|---|
hash_lists[] |
Daftar hash dalam urutan arbitrer. Hanya metadata tentang daftar hash yang akan disertakan, bukan kontennya. |
next_page_token |
Token yang dapat dikirim sebagai |
RiceDeltaEncoded128Bit
Sama seperti RiceDeltaEncoded32Bit
, kecuali ini mengenkode angka 128-bit.
Kolom | |
---|---|
first_value_hi |
64 bit atas entri pertama dalam data yang dienkode (hash). Jika kolom kosong, 64 bit atas semuanya nol. |
first_value_lo |
64 bit bawah dari entri pertama dalam data yang dienkode (hash). Jika kolom kosong, 64 bit yang lebih rendah semuanya nol. |
rice_parameter |
Parameter Golomb-Rice. Parameter ini dijamin antara 99 dan 126, inklusif. |
entries_count |
Jumlah entri yang dienkode delta dalam data yang dienkode. Jika hanya satu bilangan bulat yang dienkode, nilai ini akan nol dan nilai tunggal akan disimpan di |
encoded_data |
Delta yang dienkode yang dienkode menggunakan coder Golomb-Rice. |
RiceDeltaEncoded256Bit
Sama seperti RiceDeltaEncoded32Bit
, kecuali ini mengenkode angka 256-bit.
Kolom | |
---|---|
first_value_first_part |
64 bit pertama dari entri pertama dalam data yang dienkode (hash). Jika kolom kosong, 64 bit pertama semuanya nol. |
first_value_second_part |
Bit 65 hingga 128 dari entri pertama dalam data yang dienkode (hash). Jika kolom kosong, bit 65 hingga 128 semuanya nol. |
first_value_third_part |
Bit 129 hingga 192 dari entri pertama dalam data yang dienkode (hash). Jika kolom kosong, bit 129 hingga 192 semuanya nol. |
first_value_fourth_part |
64 bit terakhir dari entri pertama dalam data yang dienkode (hash). Jika kolom kosong, 64 bit terakhir semuanya nol. |
rice_parameter |
Parameter Golomb-Rice. Parameter ini dijamin antara 227 dan 254, inklusif. |
entries_count |
Jumlah entri yang dienkode delta dalam data yang dienkode. Jika hanya satu bilangan bulat yang dienkode, nilai ini akan nol dan nilai tunggal akan disimpan di |
encoded_data |
Delta yang dienkode yang dienkode menggunakan coder Golomb-Rice. |
RiceDeltaEncoded32Bit
Data yang dienkode Rice-Golomb. Digunakan untuk hash atau indeks penghapusan. Setiap hash atau indeks di sini dijamin memiliki panjang yang sama, dan panjangnya persis 32 bit.
Secara umum, jika kita mengurutkan semua entri secara leksikografis, kita akan mendapati bahwa bit urutan yang lebih tinggi cenderung tidak berubah sesering bit urutan yang lebih rendah. Artinya, jika kita juga mengambil perbedaan yang berdekatan antara entri, bit urutan yang lebih tinggi memiliki probabilitas tinggi untuk menjadi nol. Hal ini memanfaatkan probabilitas nol yang tinggi ini dengan memilih sejumlah bit tertentu; semua bit yang lebih signifikan dari ini kemungkinan nol sehingga kita menggunakan encoding unary. Lihat kolom rice_parameter
.
Catatan historis: encoding Rice-delta pertama kali digunakan di V4 API ini. Di V5, dua peningkatan signifikan telah dilakukan: pertama, encoding Rice-delta kini tersedia dengan awalan hash yang lebih panjang dari 4 byte; kedua, data yang dienkode kini diperlakukan sebagai big-endian untuk menghindari langkah pengurutan yang mahal.
Kolom | |
---|---|
first_value |
Entri pertama dalam data yang dienkode (hash atau indeks), atau, jika hanya satu awalan atau indeks hash yang dienkode, nilai entri tersebut. Jika kolom kosong, entrinya adalah nol. |
rice_parameter |
Parameter Golomb-Rice. Parameter ini dijamin antara 3 dan 30, inklusif. |
entries_count |
Jumlah entri yang dienkode delta dalam data yang dienkode. Jika hanya satu bilangan bulat yang dienkode, nilai ini akan nol dan nilai tunggal akan disimpan di |
encoded_data |
Delta yang dienkode yang dienkode menggunakan coder Golomb-Rice. |
RiceDeltaEncoded64Bit
Sama seperti RiceDeltaEncoded32Bit
, kecuali ini mengenkode angka 64-bit.
Kolom | |
---|---|
first_value |
Entri pertama dalam data yang dienkode (hash), atau, jika hanya satu awalan hash yang dienkode, nilai entri tersebut. Jika kolom kosong, entrinya adalah nol. |
rice_parameter |
Parameter Golomb-Rice. Parameter ini dijamin berada di antara 35 dan 62, inklusif. |
entries_count |
Jumlah entri yang dienkode delta dalam data yang dienkode. Jika hanya satu bilangan bulat yang dienkode, nilai ini akan nol dan nilai tunggal akan disimpan di |
encoded_data |
Delta yang dienkode yang dienkode menggunakan coder Golomb-Rice. |
SearchHashesRequest
Permintaan yang dikeluarkan klien untuk menelusuri awalan hash tertentu.
Fitur ini dirancang untuk hanya menelusuri daftar ancaman, dan tidak menelusuri daftar non-ancaman seperti Cache Global.
Yang baru di V5: Klien tidak perlu menentukan ClientInfo
atau status daftar hash di database lokal mereka. Hal ini dilakukan untuk meningkatkan privasi. Selain itu, klien tidak perlu mengirimkan jenis ancaman yang mereka minati.
Kolom | |
---|---|
hash_prefixes[] |
Wajib. Awalan hash yang akan dicari. Klien TIDAK BOLEH mengirim lebih dari 1.000 awalan hash. Namun, dengan mengikuti prosedur pemrosesan URL, klien TIDAK PERLU mengirim lebih dari 30 awalan hash. Saat ini, setiap awalan hash harus memiliki panjang tepat 4 byte. Ketentuan ini MUNGKIN akan dilonggarkan pada masa mendatang. |
filter |
Opsional. Jika klien tertarik untuk memfilter, seperti hanya mengambil jenis ancaman tertentu, hal ini dapat ditentukan. Jika dihilangkan, semua ancaman yang cocok akan ditampilkan. Sebaiknya hapus opsi ini untuk mendapatkan perlindungan paling lengkap yang dapat ditawarkan Safe Browsing. Filter ditentukan menggunakan Common Expression Language Google, yang dapat ditemukan di https://github.com/google/cel-spec beserta contoh umum. Berikut beberapa contoh spesifik yang dapat digunakan di sini: Filter Filter |
SearchHashesResponse
Respons yang ditampilkan setelah menelusuri hash ancaman.
Jika tidak ada yang ditemukan, server akan menampilkan status OK (kode status HTTP 200) dengan kolom full_hashes
kosong, bukan menampilkan status NOT_FOUND (kode status HTTP 404).
Yang baru di V5: Ada pemisahan antara FullHash
dan FullHashDetail
. Jika hash mewakili situs yang memiliki beberapa ancaman (misalnya MALWARE dan SOCIAL_ENGINEERING), hash lengkap tidak perlu dikirim dua kali seperti di V4. Selain itu, durasi cache telah disederhanakan menjadi satu kolom cache_duration
.
Kolom | |
---|---|
full_hashes[] |
Daftar yang tidak diurutkan. Daftar hash lengkap yang ditemukan tanpa urutan. |
cache_duration |
Durasi cache sisi klien. Klien HARUS menambahkan durasi ini ke waktu saat ini untuk menentukan waktu habis masa berlaku. Waktu habis masa berlaku kemudian berlaku untuk setiap awalan hash yang dikueri oleh klien dalam permintaan, terlepas dari jumlah hash lengkap yang ditampilkan dalam respons. Meskipun server tidak menampilkan hash lengkap untuk awalan hash tertentu, fakta ini JUGA HARUS di-cache oleh klien. Jika dan hanya jika kolom Penting: klien TIDAK BOLEH berasumsi bahwa server akan menampilkan durasi cache yang sama untuk semua respons. Server DAPAT memilih durasi cache yang berbeda untuk respons yang berbeda, bergantung pada situasinya. |
SizeConstraints
Batasan pada ukuran daftar hash.
Kolom | |
---|---|
max_update_entries |
Ukuran maksimum dalam jumlah entri. Pembaruan tidak akan berisi lebih banyak entri daripada nilai ini, tetapi mungkin pembaruan akan berisi lebih sedikit entri daripada nilai ini. Nilai ini HARUS minimal 1.024. Jika dihilangkan atau nol, tidak ada batas ukuran update yang ditetapkan. |
max_database_entries |
Menetapkan jumlah maksimum entri yang ingin dimiliki klien di database lokal untuk daftar. (Server MUNGKIN menyebabkan klien menyimpan kurang dari jumlah entri ini.) Jika dihilangkan atau nol, tidak ada batas ukuran database yang ditetapkan. |
ThreatAttribute
Atribut ancaman. Atribut ini dapat memberikan makna tambahan pada ancaman tertentu, tetapi tidak akan memengaruhi jenis ancaman. Misalnya, atribut dapat menentukan keyakinan yang lebih rendah, sedangkan atribut lain dapat menentukan keyakinan yang lebih tinggi. Atribut lainnya mungkin ditambahkan di masa mendatang.
Enum | |
---|---|
THREAT_ATTRIBUTE_UNSPECIFIED |
Atribut tidak diketahui. Jika ditampilkan oleh server, klien akan mengabaikan FullHashDetail yang menyertainya. |
CANARY |
Menunjukkan bahwa threat_type tidak boleh digunakan untuk penegakan. |
FRAME_ONLY |
Menunjukkan bahwa threat_type hanya boleh digunakan untuk penerapan pada frame. |
ThreatType
Jenis ancaman.
Enum | |
---|---|
THREAT_TYPE_UNSPECIFIED |
Jenis ancaman tidak diketahui. Jika ditampilkan oleh server, klien akan mengabaikan FullHashDetail yang menyertainya. |
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 selengkapnya dapat ditemukan di sini. |
SOCIAL_ENGINEERING |
Jenis ancaman manipulasi psikologis. Halaman manipulasi psikologis secara keliru menyatakan bahwa mereka bertindak atas nama pihak ketiga dengan tujuan membingungkan penonton agar melakukan tindakan yang hanya akan dipercaya penonton jika dilakukan oleh agen asli pihak ketiga tersebut. Phishing adalah jenis manipulasi psikologis yang menipu penonton agar melakukan tindakan tertentu untuk memberikan informasi, seperti kredensial login. Informasi selengkapnya dapat ditemukan di sini. |
UNWANTED_SOFTWARE |
Jenis ancaman software yang tidak diinginkan. Software yang tidak diinginkan adalah software apa pun yang tidak mematuhi Asas-Asas Software Google, tetapi bukan malware. |
POTENTIALLY_HARMFUL_APPLICATION |
Jenis ancaman aplikasi yang berpotensi membahayakan seperti yang digunakan oleh Google Play Protect untuk Play Store. |