http://www.softscients.web.id/2016/12/teknik-penerapan-enkripsi-rsa-untuk.html
kita telah mempelajari teknik enkripsi text dengan RSA, apakah kita melakukan enkripsi sebuah file biner? Seperti *.jpg, *.bmp, *.exe,*.bin menggunakan RSA?
Kamu bisa membaca ini http://www.softscients.web.id/2016/12/encrypt-file-using-rsa-java.html
Walau tidak efektif sih sebenarnya karena bisa menjadi bengkak ukuran file nya. Kita harus mengerti dari format base64 sebagai berikut:
https://blog.aldebaran.web.id/2016/01/03/120/
https://hxpinter.wordpress.com/2011/06/21/enkripsi-data-dan-script-dengan-php-part-base64/
pada contoh berikut, ada sebuah file *.txt akan dibaca secara biner

Dalam format base64 menjadi berikut
aW5pIGFkYWxhaCBjb250b2ggZmlsZSAqLnR4dCA=
karakter diatas, bisa anda kirimkan via email atau protokol lainnya walaupun berbentuk *.exe sekalipun (pada contoh diatas agar lebih mudah menggunakan file *.txt saja dulu)
karena berbentuk string diatas, maka transfer antar protokol menjadi mudah, berikut class yang berfungsi untuk membaca file binary menjadi sebuah string base64
//Encode64.java
public class Encode64 {
public static String read(Path path)
{
byte[] data = null;
try {
data = Files.readAllBytes(path);
} catch (IOException ex) {
Logger.getLogger(Encode64.class.getName()).log(Level.SEVERE, null, ex);
}
//ubah ke mode 64
return DatatypeConverter.printBase64Binary(data);
}
public static byte [] bas64tobyte(String encoded)
{
return DatatypeConverter.parseBase64Binary(encoded);
}
}
Pada contoh berikut, kita akan membaca file *.txt kemudian menampilkan dalam format string dan melakukannya convert byte untuk ditulis kembali menjadi format biner nya
//Cara penggunaan nya sebagai berikut
try
{
Path path = Paths.get("E:/file.txt");
//ubah ke mode 64
String str64 = Encode64.read(path); //dianggap menjadi file biner!
System.out.println(str64);
byte[] decoded = Encode64.bas64tobyte(str64);
FileOutputStream fos = new FileOutputStream("E:/file2.txt");
fos.write(decoded);
fos.close();
}catch (Exception ept)
{
System.out.println(ept.getMessage());
}
Menggunakan cara yang sama pada link berikut http://www.softscients.web.id/2016/12/teknik-penerapan-enkripsi-rsa-untuk.html.Sebaiknya kamu baca cara kerja encode decode string di RSA melalui link diatas!
Pada contoh berikut, penulis terapkan untuk proses enkripsi file berformat *.txt
file.txt adalah file asli ukuran semula 29 bytes
menjadi file2.txt setelah di enkripsi menjadi 480 bytes
Lumayan bengkak hampir 16% lebih tinggi. Sehingga bila ukuran file besar, maka akan cukup lama juga. Sehingga RSA menjadi tidak efisien
No comments:
Post a Comment