Apakah ada contoh yang baik tentang cara mengenkripsi dan mendekripsi gambar dan file lain dengan AES di Android?
java
android
encryption
aes
h4rd4r7c0r3
sumber
sumber
Jawaban:
Peringatan: Jawaban ini berisi kode yang tidak boleh Anda gunakan karena tidak aman (menggunakan SHA1PRNG untuk derivasi kunci dan menggunakan AES dalam mode ECB)
Sebagai gantinya (mulai 2016), gunakan PBKDF2WithHmacSHA1 untuk derivasi kunci dan AES dalam mode CBC atau GCM (GCM memberikan privasi dan integritas)
Anda bisa menggunakan fungsi seperti ini:
Dan panggil mereka seperti ini:
Ini harus berfungsi, saya menggunakan kode serupa dalam sebuah proyek sekarang.
sumber
Seperti yang disebutkan oleh Nacho.L PBKDF2WithHmacSHA1, derivasi digunakan karena lebih aman.
sumber
sumber
Pertanyaan lama tapi saya mengupgrade jawaban yang mendukung Android sebelum dan posting 4.2 dan mempertimbangkan semua perubahan terbaru menurut blog pengembang Android
Ditambah saya meninggalkan contoh kerja di repo github saya .
sumber
android.util.Base64.encode(bytes, Base64.DEFAULT)
danandroid.util.Base64.decode(decryptedData, Base64.DEFAULT)
?Jika Anda mengenkripsi file teks, maka tes / sampel berikut mungkin berguna. Itu melakukan hal berikut:
dan terakhir buffer itu
sumber
SecureRandom
untuk derivasi kunci. Jika Anda ingin tahu cara membuat cipher, periksa jawaban ericksons di sini . Jangan gunakan IV statis (untuk kunci yang sama), dan gunakan PBKDF2 untuk sandi -> konversi kunci. Perhatikan bahwa cipher yang tidak diautentikasi hanya memberikan kerahasiaan, dan hanya jika tidak digunakan dalam protokol transport. Jika Anda ingin membantu, Anda juga dapat membakar jawaban lain (dan pilih komentar saya di sana) :)AES mengenkripsi / mendekripsi di android
AES mengenkripsi / mendekripsi di c #
sumber
Untuk enkripsi / dekripsi AES / CBC / PKCS7, Cukup Salin dan tempel kode berikut dan ganti
SecretKey
danIV
dengan milik Anda.sumber
API sederhana untuk melakukan enkripsi AES di Android. Ini adalah mitra Android untuk pustaka AESCrypt Ruby dan Obj-C (dengan default yang sama):
https://github.com/scottyab/AESCrypt-Android
sumber
Berikut adalah potongan kode sederhana yang berfungsi untuk Enkripsi dan Dekripsi AES.
Semoga membantu ...
sumber
Untuk menambahkan kastil goyang ke proyek Android: https://mvnrepository.com/artifact/org.bouncycastle/bcprov-jdk16/1.45
Tambahkan baris ini di Aktivitas Utama Anda:
sumber
Coba dengan kode di bawah ini, ini berfungsi untuk saya.
sumber