Verdict yang ditingkatkan di perangkat Android 13 dan yang lebih baru

Baru-baru ini kami mengumumkan bahwa kami memperkuat verdict Play Integrity API agar lebih cepat, lebih tangguh terhadap serangan, dan lebih pribadi bagi pengguna bersama dengan peningkatan keamanan lainnya.

Ringkasan perubahan

Anda dapat menemukan ringkasan mendetail tentang perubahan dan pertanyaan umum (FAQ) di bagian selanjutnya dalam dokumen ini. Perubahan putusan pada Mei 2025 adalah sebagai berikut:

Apa Yang berubah Estimasi dampak* Perangkat mana
Perubahan yang memengaruhi semua developer yang membuat permintaan Play Integrity API
Respons verdict perangkat: meets-device-integrity Harus memiliki hasil booting terverifikasi positif yang didukung hardware Dampak minimal karena Play Integrity API sudah menggunakan sinyal keamanan yang didukung hardware di perangkat Android 13 atau yang lebih baru (~0,4%) Android 13 dan yang lebih baru
Respons integritas aplikasi: Verdict pengenalan aplikasi Tidak ada perubahan Dampak minimal, hal ini akan mencerminkan perubahan pada putusan perangkat (~0,4%) Android 13 dan yang lebih baru
Respons detail akun: Verdict lisensi Play Aplikasi yang meminta harus diinstal atau diupdate oleh Google Play Penurunan kecil dalam respons berlisensi (~2,5%) Android 6 dan yang lebih baru
Perubahan yang hanya memengaruhi developer Konsol Play dan developer Play SDK Console yang menggunakan fitur opsional
Respons verdict perangkat: meets-basic-integrity Harus memiliki Pengesahan Kunci Platform Android, tetapi status booting dapat diverifikasi atau tidak diverifikasi Penurunan kecil dalam respons dasar (~0,4%) Android 13 dan yang lebih baru
Respons verdict perangkat: memenuhi integritas kuat Harus memiliki update keamanan dalam setahun terakhir Penurunan respons kuat (~14,5%) Android 13 dan yang lebih baru
Semua sinyal opsional (kecuali atribut perangkat)** Aplikasi yang meminta harus diinstal atau diupdate oleh Google Play Penurunan % respons yang menyertakan sinyal opsional (~7%) Android 13 dan yang lebih baru

*Semua perkiraan persentase dampak yang disebutkan sebelumnya didasarkan pada rata-rata dan aplikasi yang berbeda mungkin mengalami perubahan yang lebih kecil atau lebih besar, bergantung pada basis penginstalan mereka.

**Sinyal opsional (kecuali atribut perangkat) adalah: meets-basic-integrity, meets-strong-integrity, aktivitas perangkat terbaru, penarikan perangkat (beta), status Play Protect, dan risiko akses aplikasi.

Pertanyaan umum (FAQ)

Ringkasan

Apa yang dimaksud dengan Play Integrity API?

Play Integrity API membantu Anda menilai kredibilitas lingkungan aplikasi pengguna dengan mendapatkan informasi tentang perangkat, aplikasi, dan pengguna, sehingga Anda dapat mendeteksi dan merespons potensi penyalahgunaan dan serangan.

Sinyal apa yang disediakan Play Integrity API?

Play Integrity API menyertakan identitas aplikasi yang membuat permintaan, apakah aplikasi yang membuat permintaan diinstal oleh Google Play, dan apakah perangkat adalah perangkat Android bersertifikasi yang asli. Sinyal ini disediakan secara default. Anda dapat membaca sinyal ini di server backend aplikasi dan memutuskan apakah dan bagaimana aplikasi Anda harus merespons. Developer Google Play dapat memilih untuk menerima sinyal tambahan di penginstalan Play mereka untuk melihat lebih banyak informasi.

Apa itu Pengesahan Kunci Platform Android?

Pengesahan Kunci Platform Android memungkinkan aplikasi memverifikasi status perangkat dan mendapatkan sinyal kuat integritas booting yang didukung hardware. Fitur ini bergantung pada kunci yang disediakan oleh Google di keystore yang didukung hardware perangkat. Play Integrity API sudah menggunakan pengesahan kunci untuk mendapatkan sinyal keamanan yang didukung hardware di beberapa perangkat dan kini akan mengintegrasikannya lebih dalam di semua perangkat yang menjalankan Android 13 atau yang lebih baru.

Perubahan putusan

Apa saja perubahan yang dilakukan pada verdict Play Integrity API di perangkat Android 13 atau yang lebih baru?

Play Integrity API kini memerlukan sinyal keamanan yang didukung hardware untuk semua verdict integritas:

  • Putusan pengenalan perangkat meets-device-integrity adalah indikasi bahwa perangkat tempat aplikasi berjalan adalah perangkat Android asli dan bersertifikasi. Putusan ini akan mengharuskan bootloader perangkat dikunci dan OS Android yang dimuat adalah image produsen perangkat bersertifikasi.
  • Verdict pengenalan perangkat meets-strong-integrity adalah indikasi perangkat Android asli dan tersertifikasi dengan update keamanan terbaru. Putusan ini akan memerlukan update keamanan dan meets-device-integrity dalam setahun terakhir untuk semua partisi perangkat, termasuk patch partisi Android OS dan patch partisi vendor. Kondisi ini dapat berubah pada masa mendatang.
  • Verdik pengenalan perangkat meets-basic-integrity adalah indikasi bahwa pemeriksaan terjadi di perangkat fisik berteknologi Android. Bootloader perangkat dapat dikunci atau tidak dikunci, dan status booting dapat diverifikasi atau tidak diverifikasi. Perangkat mungkin tidak tersertifikasi, sehingga Google tidak dapat memberikan jaminan keamanan, privasi, atau kompatibilitas aplikasi, dan tidak dapat menjamin bahwa perangkat tidak bertindak sebagai proxy, seperti untuk instance virtual Android. Artinya, perangkat yang di-root memenuhi syarat untuk menampilkan meets-basic-integrity selama pengesahan kunci ada.

Perubahan ini tidak memengaruhi Play Integrity API di Play Game untuk PC yang akan terus menampilkan meets-virtual-integrity.

Mengapa verdict Play Integrity API diubah pada perangkat Android 13 atau yang lebih baru?

Play Integrity API sebagian menggunakan sinyal keamanan yang didukung hardware di Android 12 dan yang lebih lama. Dengan mewajibkan keamanan yang didukung hardware di Android 13 dan yang lebih baru, verdict Play Integrity API menjadi lebih tangguh terhadap penyerang, lebih berperforma untuk aplikasi, dan lebih pribadi bagi pengguna. Developer dapat mengharapkan peningkatan berikut di perangkat yang menjalankan Android 13 atau yang lebih baru:

  • Pengurangan sinyal perangkat yang perlu dikumpulkan dan dievaluasi untuk membuat verdict default di server Google hingga ~90%. Sinyal opsional akan terus memerlukan pengumpulan sinyal tambahan.
  • Peningkatan latensi putusan hingga 80% untuk permintaan standar terburuk dan hingga 80% untuk semua permintaan klasik untuk mendapatkan putusan default. Sinyal opsional dapat meningkatkan latensi.
  • Tingkat keandalan yang konsisten dan dukungan untuk semua faktor bentuk Android dengan pengesahan kunci, termasuk perangkat seluler, tablet, perangkat foldable, TV, Auto, Wear OS, dan ChromeOS.
  • Perbedaan yang lebih besar antara setiap label perangkat dalam hasil pengenalan perangkat: meets-strong-integrity, meets-device-integrity, dan meets-basic-integrity.

Verdict Play Integrity API di Play Game untuk PC tidak diubah dan akan sama di Android 12 dan yang lebih lama seperti di Android 13 dan yang lebih baru.

Bagaimana cara mengupdate logika backend aplikasi saya agar putusan integritas mempertimbangkan versi Android SDK?

Jika ingin menggunakan logika yang berbeda di server backend aplikasi berdasarkan versi Android SDK, Anda dapat menggunakan kolom atribut perangkat baru dalam verdict. Berikut contoh cara melakukannya:

Kotlin

val deviceIntegrity =
  JSONObject(payload).getJSONObject("deviceIntegrity")
val sdkVersion =
  if (deviceIntegrity.has("deviceAttributes")) {
    deviceIntegrity.getJSONObject("deviceAttributes").getInt("sdkVersion")
  } else {
    0
  }

if (sdkVersion >= 30) {
  // Provide Android R+ specific experience to the user.
}

Java

JSONObject deviceIntegrity =
  new JSONObject(payload).getJSONObject("deviceIntegrity");
int sdkVersion =
  deviceIntegrity.has("deviceAttributes")
    ? deviceIntegrity.getJSONArray("deviceAttributes").getInt("sdkVersion")
    : 0;

if (sdkVersion >= 30) {
  // Provide Android R+ specific experience to the user.
}

Bagaimana cara menggunakan definisi label meets-strong-integrity lama di semua versi Android SDK?

Anda dapat melakukannya dengan mengupdate logika backend aplikasi untuk menggunakan meets-strong-integrity jika perangkat adalah perangkat pra-Android 13 dan meets-device-integrity jika perangkat adalah perangkat Android 13 atau yang lebih baru menggunakan kolom atribut perangkat baru dalam verdict yang berisi versi Android SDK. Berikut adalah contoh melakukannya:

Kotlin

val deviceRecognitionVerdict =
  if (deviceIntegrity.has("deviceRecognitionVerdict")) {
    deviceIntegrity.getJSONArray("deviceRecognitionVerdict").toString()
  } else {
    ""
  }

val deviceIntegrityToCheckFor =
  sdkVersion < 33 ? "MEETS_STRONG_INTEGRITY" : "MEETS_DEVICE_INTEGRITY";

if (deviceRecognitionVerdict.contains(deviceIntegrityToCheckFor)) {
  // Looks good!
}

Java

JSONObject deviceIntegrity =
  new JSONObject(payload).getJSONObject("deviceIntegrity");
String deviceRecognitionVerdict =
  deviceIntegrity.has("deviceRecognitionVerdict")
    ? deviceIntegrity.getJSONArray("deviceRecognitionVerdict").toString()
    : "";

String deviceIntegrityToCheckFor =
  sdkVersion < 33 ? "MEETS_STRONG_INTEGRITY" : "MEETS_DEVICE_INTEGRITY";

if (deviceRecognitionVerdict.contains(deviceIntegrityToCheckFor)) {
  // Looks good!
}

Karena juga merupakan sinyal yang didukung hardware, kolom atribut perangkat paling dapat diandalkan di perangkat yang menjalankan Android 13 dan yang lebih tinggi.

Perubahan putusan lainnya yang dilakukan?

Kami terus berinvestasi untuk membuat sinyal yang ada di Play Integrity API menjadi lebih andal dan kami meluncurkan fitur baru secara berkala untuk membantu developer mengatasi ancaman baru dan kasus penggunaan baru. Peningkatan putusan lainnya yang telah kami lakukan meliputi:

  • Respons berlisensi Play: Untuk menampilkan respons berlisensi Play, Play Integrity API kini selalu mewajibkan aplikasi yang meminta respons untuk diinstal atau diupdate oleh Google Play. Hal ini memperbaiki beberapa kasus ekstrem dan membuat respons lebih mudah ditafsirkan oleh developer.
  • Ketersediaan sinyal opsional: Semua sinyal opsional yang tersedia untuk developer yang menggunakan Konsol Google Play atau SDK Console Play (kecuali atribut perangkat) kini mewajibkan aplikasi yang meminta sinyal untuk diinstal, atau diupdate, oleh Google Play di Android 13 atau yang lebih baru. Hal ini mencakup meets-strong-integrity, meets-basic-integrity, aktivitas perangkat terbaru, penarikan perangkat (beta), putusan risiko akses aplikasi, dan putusan Play Protect. Kami menstandardisasi semua permintaan Play Integrity API lainnya untuk menerima pemeriksaan perangkat (hanya dengan label meets-device-integrity), pemeriksaan penginstal, pemeriksaan integritas aplikasi, dan atribut perangkat (jika diaktifkan).
  • Perubahan verdict untuk perangkat tertentu: Play Integrity API secara otomatis mengubah verdict perangkat dalam lebih banyak skenario untuk melindungi aplikasi lebih awal di semua versi Android SDK, seperti saat ada bukti aktivitas berlebihan atau kebocoran kunci. Hal ini mencakup kemampuan Play untuk melakukan penggantian ke sinyal lain guna membuat putusan perangkat sementara bagi pengguna saat sinyal yang didukung hardware tidak tersedia. Sebaiknya developer menggunakan dialog perbaikan Play dalam aplikasi atau mengarahkan pengguna ke aplikasi Play Store untuk memperbaiki masalah verdict integritas. Seiring waktu, dialog ini akan menangani lebih banyak skenario dan menyertakan panduan khusus bagi pengguna yang memberi tahu mereka apa yang perlu diperbaiki berdasarkan perangkat atau akun tertentu.

Bagaimana cara melaporkan masalah terkait verdict integritas?

Untuk melaporkan masalah terkait respons dari Play Integrity API, baik masalahnya terkait verdict historis maupun yang baru, ikuti petunjuk di halaman dukungan.

Ketersediaan

Apa yang diperlukan Play Integrity API agar dapat berfungsi?

Play Integrity API mengharuskan Google Play Store dan layanan Google Play diinstal di perangkat, termasuk perangkat Android dan Google Play Game untuk PC. Permintaan klasik memerlukan Android 4.4 (level API 19) atau yang lebih baru dan permintaan standar memerlukan Android 5.0 (level API 21) atau yang lebih baru. Di perangkat yang menjalankan Android 13 (level API 33) dan yang lebih baru, Play Integrity API kini akan memiliki tingkat keandalan dan dukungan yang sama di semua faktor bentuk Android dengan pengesahan kunci, termasuk perangkat seluler, tablet, perangkat foldable, TV, Auto, Wear OS, dan ChromeOS.

Mengapa Play Integrity API memiliki verdict yang berbeda untuk perangkat yang berbeda?

Play Integrity API menyediakan beberapa verdict perangkat untuk mengakomodasi developer dengan berbagai kasus penggunaan dan toleransi risiko serta memungkinkan penerapan strategi penegakan bertingkat. Misalnya, saat aplikasi dan perangkat lebih tepercaya, developer dapat menyederhanakan langkah-langkah verifikasi pengguna; sedangkan, saat perangkat tidak dikenal, developer dapat memerlukan verifikasi pengguna tambahan sebelum melakukan tindakan yang dilindungi atau sensitif. Hal ini dapat menjadi cara yang efektif untuk mengurangi penyalahgunaan dan serangan.

Apa yang dimaksud dengan perangkat Android tersertifikasi?

Perangkat Android bersertifikasi (juga dikenal sebagai perangkat Android bersertifikasi Play Protect) adalah perangkat yang menjalankan software yang dapat diprediksi yang telah lulus ratusan uji kompatibilitas Google, mematuhi model keamanan dan izin Android, serta dikirimkan dengan rangkaian fitur anti-malware Google Play Protect. Jika Play Integrity API dapat memverifikasi bahwa perangkat adalah perangkat Android asli dan bersertifikasi, API akan menampilkan respons meets-device-integrity dalam verdict pengenalan perangkat.

Apa yang dimaksud dengan perangkat meets-basic-integrity?

Play Integrity API juga menampilkan respons opsional dalam verdict perangkat, meets-basic-integrity. Jika perangkat hanya menampilkan putusan meets-basic-integrity tanpa meets-device-integrity atau meets-strong-integrity, berarti OS Android tidak dapat diverifikasi, tetapi pengesahan kunci ada. Hal ini menunjukkan bahwa pemeriksaan terjadi di perangkat fisik berteknologi Android, tetapi Google tidak dapat memberikan jaminan tentang keamanan, privasi, atau kompatibilitas aplikasi perangkat dan tidak dapat menjamin bahwa perangkat tidak bertindak sebagai proxy, seperti untuk instance virtual Android. Bergantung pada kasus penggunaan developer dan toleransi risiko, mereka dapat memutuskan cara menjalankan aplikasi di perangkat ini.

Dapatkah developer menggunakan Play Integrity API?

Ya, setiap developer Android dapat membuat permintaan Play Integrity API untuk menerima verdict integritas default. Penggunaan dibatasi hingga 10 ribu permintaan per hari, terlepas dari saluran distribusinya. Developer yang memublikasikan aplikasi mereka di Google Play selain di saluran distribusi lainnya juga dapat meminta untuk meningkatkan kuota harian mereka.

Dapatkah developer mana pun menggunakan Pengesahan Kunci Platform Android?

Ya, setiap developer Android dapat menggunakan Pengesahan Kunci Platform Android untuk mendapatkan catatan pengesahan kunci, yang dapat mereka verifikasi dengan sertifikat publik kunci root pengesahan Google. Play Integrity API memberikan manfaat pengesahan kunci dan fitur tambahan kepada developer tanpa kerumitan mengintegrasikan pengesahan kunci sendiri.

Penegakan

Bagaimana cara developer menggunakan verdict Play Integrity API?

Developer yang memutuskan apakah dan bagaimana cara menggunakan verdict Play Integrity API. Beberapa developer mengumpulkan sinyal untuk analisis anti-penyalahgunaan internal, sementara developer lain akan membuat keputusan tentang perilaku aplikasi mereka berdasarkan hasilnya. Misalnya, developer dapat memutuskan untuk mewajibkan perangkat yang kurang tepercaya melakukan langkah-langkah verifikasi pengguna tambahan saat membuat akun; atau mereka dapat memutuskan bahwa perangkat yang kurang tepercaya harus bermain bersama di server multiplayer yang sama.

Apakah Play Integrity API memblokir pengguna atau perangkat?

Tidak, Play Integrity API tidak memblokir akses ke fungsi apa pun. Layanan ini adalah layanan developer opsional yang menyediakan sinyal dan developer memilih cara menindaklanjuti sinyal tersebut.

Apa yang harus dilakukan pengguna jika perangkat mereka gagal dalam pemeriksaan perangkat Play Integrity API?

Pengguna dapat membuka aplikasi Play Store di perangkat mereka, membuka menu Setelan, men-scroll ke bawah ke bagian Tentang, lalu melihat di bagian Sertifikasi Play Protect. Jika ada masalah dengan sertifikasi Play Protect di perangkat mereka, akan ada tombol yang dapat ditekan pengguna untuk mencoba memperbaiki masalah tersebut. Tindakan ini akan memperbarui status sertifikasi perangkat dan memberikan panduan khusus tentang hal yang perlu diperbaiki.