mamalikhanjan
جمعه 05 دی 1399, 14:52 عصر
سلام دوستان
من تعدادی تصویر داررم که برام مهمه کسی نتواند آنها را از برنامه ام کپی کند
قصد دارم آن ها را رمزنگاری کنم و در برنامه قرار دهم و فقط در لحظه ی نمایش رمزگشایی شود
من زیاد به الگوریتم های رمز نگاری وارد نیستم
برای رمز گشایی قطعه کد زیر را پیدا کردم
ولی نمیدانم با چه ابزاری و تنظیم چه پارامترهایی تصویر را رمزنگاری کنم و در برنامه قرار دهم تا با این کد رمزگشایی شود
public Bitmap decrypt(String path, String password) throws IOException, NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException {
FileInputStream fis = new FileInputStream(path);
byte[] key = (AppConstants.salt + password).getBytes("UTF-8");
MessageDigest sha = MessageDigest.getInstance("SHA-1");
key = sha.digest(key);
key = Arrays.copyOf(key, 16);
SecretKeySpec sks = new SecretKeySpec(key, "AES");
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.DECRYPT_MODE, sks);
CipherInputStream cis = new CipherInputStream(fis, cipher);
Bitmap bitmap = BitmapFactory.decodeStream(cis);
cis.close();
return bitmap;
}
پیشنهاد هر ابزار آنلاین یا تحت ویندوز که بتونه کارم را راه بندازه کمک بزرگیه
ممنونم
من تعدادی تصویر داررم که برام مهمه کسی نتواند آنها را از برنامه ام کپی کند
قصد دارم آن ها را رمزنگاری کنم و در برنامه قرار دهم و فقط در لحظه ی نمایش رمزگشایی شود
من زیاد به الگوریتم های رمز نگاری وارد نیستم
برای رمز گشایی قطعه کد زیر را پیدا کردم
ولی نمیدانم با چه ابزاری و تنظیم چه پارامترهایی تصویر را رمزنگاری کنم و در برنامه قرار دهم تا با این کد رمزگشایی شود
public Bitmap decrypt(String path, String password) throws IOException, NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException {
FileInputStream fis = new FileInputStream(path);
byte[] key = (AppConstants.salt + password).getBytes("UTF-8");
MessageDigest sha = MessageDigest.getInstance("SHA-1");
key = sha.digest(key);
key = Arrays.copyOf(key, 16);
SecretKeySpec sks = new SecretKeySpec(key, "AES");
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.DECRYPT_MODE, sks);
CipherInputStream cis = new CipherInputStream(fis, cipher);
Bitmap bitmap = BitmapFactory.decodeStream(cis);
cis.close();
return bitmap;
}
پیشنهاد هر ابزار آنلاین یا تحت ویندوز که بتونه کارم را راه بندازه کمک بزرگیه
ممنونم