Contoh Kriptografi Rail Fence dalam program Bahasa Java

 on Friday, March 17, 2017  



Kriptografi transposisi adalah salah satu metode kriptografi yang mana cara enkripsinya adalah dengan  mengubah letak dari teks pesan yang akan di enkripsi berdasar kunci tertentu. Dan cara dekripsinya adalah dengan cara mengembalikan letak dari pesan tersebut berdasarkan kunci.

Salah satu algoritma dalam kriptografi transposisi adalah transposisi rail fence, disamping algoritma lain seperti : transposisi route, transposisi kolom,  transposisi ganda, transposisi Myszkowski.

Berikut adalah contoh transposisi rail fence dalam bahasa Java, silakan dinikmati …..


// File Name: RailFence.java
import java.util.*;
class RailFenceBasic{
 int depth;
 String Encryption(String plainText,int depth)throws Exception
 {
  int r=depth,len=plainText.length();
  int c=len/depth;
  char mat[][]=new char[r][c];
  int k=0;
   
  String cipherText="";
   
  for(int i=0;i< c;i++)
  {
   for(int j=0;j< r;j++)
   {
    if(k!=len)
     mat[j][i]=plainText.charAt(k++);
    else
     mat[j][i]='X';
   }
  }
  for(int i=0;i< r;i++)
  {
   for(int j=0;j< c;j++)
   {
    cipherText+=mat[i][j];
   }
  }
  return cipherText;
 }
  
  
 String Decryption(String cipherText,int depth)throws Exception
 {
  int r=depth,len=cipherText.length();
  int c=len/depth;
  char mat[][]=new char[r][c];
  int k=0;
   
  String plainText="";
   
   
  for(int i=0;i< r;i++)
  {
   for(int j=0;j< c;j++)
   {
    mat[i][j]=cipherText.charAt(k++);
   }
  }
  for(int i=0;i< c;i++)
  {
   for(int j=0;j< r;j++)
   {
    plainText+=mat[j][i];
   }
  }
   
  return plainText;
 }
}

class RailFence{
 public static void main(String args[])throws Exception
 {
  RailFenceBasic rf=new RailFenceBasic();
                Scanner scn=new Scanner(System.in);
                int depth;
   
                String plainText,cipherText,decryptedText;
                 
                System.out.println("Enter plain text:");
                plainText=scn.nextLine();
                 
                System.out.println("Enter depth for Encryption:");
                depth=scn.nextInt();
                
  cipherText=rf.Encryption(plainText,depth);
  System.out.println("Encrypted text is:\n"+cipherText);
                 
                decryptedText=rf.Decryption(cipherText, depth);
                 
  System.out.println("Decrypted text is:\n"+decryptedText);
   
 }
}

Tampilan saat eksekusi :

Enter plain text:
railfencecipher
Enter depth for Encryption:
3
Encrypted text is:
rlnchafcieieepr
Decrypted text is:

railfencecipher
Contoh Kriptografi Rail Fence dalam program Bahasa Java 4.5 5 Agustinus Darto Iwan Setiawan Friday, March 17, 2017 Contoh, rail, fence, program, pemrograman,kriptografi, java, cryptograph Kriptografi transposisi adalah salah satu metode kriptografi yang mana cara enkripsinya adalah dengan  mengubah letak dari teks pesan...


2 comments:

  1. saya baru belajar html, css, dan php, belum sampai ke java, hehe, tapi menarik sih

    ReplyDelete
    Replies
    1. Lebih menarik kalau sudah bisa semua bahasa pemrograman diatas

      Delete

Silakan berkomentar ....