berikut ini adalah scrip dari pembuatan aplikasi enkripsi dan dekripsi dengan memanfaatkan metode Caesar Cipher :
package kripto;
/**
*
* @author yoga
*/
public class CaesarCipher
{
public static void main(String[] args) {
String str = "yoga permana";
int key = 3;
String encrypted = encrypt(str, key);
System.out.println(encrypted);
String decrypted = decrypt(encrypted, key);
System.out.println(decrypted);
}
public static String encrypt(String str, int key) {
String encrypted = "";
for(int i = 0; i < str.length(); i++) {
int c = str.charAt(i);
if (Character.isUpperCase(c)) {
c = c + (key % 26);
if (c > 'Z')
c = c - 26;
} else if (Character.isLowerCase(c)) {
c = c + (key % 26);
if (c > 'z')
c = c - 26;
}
encrypted += (char) c;
}
return encrypted;
}
public static String decrypt(String str, int key)
{
String decrypted = "";
for(int i = 0; i < str.length(); i++) {
int c = str.charAt(i);
if (Character.isUpperCase(c)) {
c = c - (key % 26);
if (c < 'A')
c = c + 26;
} else if (Character.isLowerCase(c)) {
c = c - (key % 26);
if (c < 'a')
c = c + 26;
}
decrypted += (char) c;
}
return decrypted;
}
}
Pada coding diatas, saya mencoba untuk melakukan pengacakan pada nama "yoga permana" dengan melakukan pergeseran huruh sebanyak 3 kali kearah depan. Ketika saya run, maka hasilnya maka akan seperti pada gambar dibawah ini.
Pada hasil diatas terlihat bahwa nama "yoga permana" telah berhasil
dienkripsi menjadi "brjd shupdqd". kemudian hasil tersebut langsung
didekripsikan kembali menjadi "yoga permana".
selamat mencoba.
No comments:
Post a Comment