Rumah >Java >javaTutorial >Cara Menyembunyikan Data Sensitif dengan Selamat dalam Apl Android Anda: Adakah Kekeliruan Cukup?
Menyembunyikan Data Sensitif dalam Kod Dikaburkan
Apabila menggunakan aplikasi Android anda, anda mungkin menghadapi kebimbangan tentang mendedahkan data sensitif, seperti URL pelayan, dalam kod decompiled. Teknik kekeliruan seperti ProGuard memberikan sedikit perlindungan, tetapi mungkin tidak menyembunyikan semua rentetan dengan berkesan.
Penyulitan Rentetan dan Penyahkodan
Untuk menangani perkara ini, pertimbangkan untuk melaksanakan mekanisme tersuai untuk pengekodan atau penyulitan rentetan. Untuk kekaburan asas, anda boleh menggunakan kelas android.util.Base64. Walau bagaimanapun, pendekatan ini menawarkan perlindungan terhad kerana ia boleh dinyahkod dengan mudah.
Untuk perlindungan yang lebih kukuh, gunakan penyulitan melalui kelas javax.crypto.Cipher. Pilih sifir simetri seperti AES dan simpan kunci penyulitan dengan selamat dalam apl anda. Kaedah ini lebih membosankan daripada selamat, kerana kunci mungkin terdedah dalam fail JAR.
Mengubah Suai Kod untuk Menggunakan Rentetan Disulitkan
Ubah suai kod untuk menggunakan yang dinyahsulit versi rentetan sensitif dan bukannya nilai mentah. Ini biasanya melibatkan penyahsulitan rentetan semasa permulaan atau permulaan kelas atau objek yang berkaitan. Contoh:
Sebelum:
<code class="java">public class Foo { private String mySecret = "http://example.com"; ... }</code>
Selepas:
<code class="java">public class Foo { private String encrypted = "..." // Manually created encrypted string private String key = "..."; // Encryption key private String mySecret = MyDecryptUtil.decrypt(encrypted, key); ... }</code>
Penyelesaian Alternatif
Pertimbangkan untuk menggunakan pihak ketiga Penyelesaian DRM seperti Perkhidmatan Pelesenan Google. Ini boleh memberikan alternatif yang lebih selamat kepada mekanisme perlindungan yang dilaksanakan sendiri, tetapi mungkin mempunyai had dan keperluannya sendiri.
Atas ialah kandungan terperinci Cara Menyembunyikan Data Sensitif dengan Selamat dalam Apl Android Anda: Adakah Kekeliruan Cukup?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!