Chiper Transposisi implementasi contoh code java

ilustrasi chiper transisi

 

chiper transposisi adalah  

Pada chiper transposisi, plainteks senantiasa sama, namun urutannya diganti. pada code program java Dengan kata lain, algoritma ini melaksanakan transpose terhadap rangkaian kepribadian di dalam bacaan. Nama lain buat tata cara ini merupakan permutasi, sebab transpose tiap kepribadian di dalam bacaan sama dengan mempermutasikan karakter- karakter tersebut.

Sebagian contoh cipher transposisi, antara lain:
Sederhana Columnar Transposition( SCTR)

Sederhana Columnar Transposition( SCTR) terbuat dekat tahun 1940- an. Pada waktu itu SCTR digunakan oleh Sekutu buat menandingi perlengkapan kriptografi buatan Jerman enigma buat melindungi kerahasiaan pesan yang dikirimkan pada Perang Dunia II.

Tata cara enkripsi SCTR merupakan lumayan simpel, ialah dengan membagi plainteks jadi blok- blok dengan panjang kunci( k) tertentu yang setelah itu blok- blok tersebut disusun dalam wujud baris serta kolom. Ada 2 tata cara yang digunakan apabila panjang plainteks( n) tidak habis dipecah oleh kunci( k). Awal merupakan irregular case, ialah melaksanakan enkripsi tanpa merubah plainteks serta yang kedua merupakan regular case ialah melaksanakan enkripsi sehabis meningkatkan karakter- karakter dummy( pad) sebanyak d dengan 0<d<n sehingga panjang plainteks habis dipecah kunci. Serta hasil enkripsinya merupakan dengan membaca secara vertikal( masing- masing kolom) cocok urutan kolom. 

 

Chiperteks dari plainteks Chiper Transposisi : ABD WAHID

Karakter : A  Posisi : 0  Setelah di Putar : E  Posisi : 4

Karakter : B  Posisi : 1  Setelah di Putar : F  Posisi : 5

Karakter : D  Posisi : 3  Setelah di Putar : H  Posisi : 7

Karakter : W  Posisi : 22  Setelah di Putar : B  Posisi : 1

Karakter : A  Posisi : 0  Setelah di Putar : E  Posisi : 4

Karakter : H  Posisi : 7  Setelah di Putar : L  Posisi : 11

Karakter : I  Posisi : 8  Setelah di Putar : M  Posisi : 12

Karakter : D  Posisi : 3  Setelah di Putar : H  Posisi : 7

plain :ABD WAHID

Enkrip :[E, F, H, B, E, L, M, H]

 

Code java :

import java.awt.event.*;

import java.util.*;

public class tra

{

public tra() {

    }

 

public static void main(String args[])

{

String key;

String message;

String encryptedMessage;

// Letters in the x-axis

int x=0;

// Letters in the y-axis

int y=0;

 

key = "4";

message = "abd wahid ";

encryptedMessage = "";

// To set the temp as [x][y]

char temp[][]=new char [key.length()][message.length()];

char msg[] = message.toCharArray();

// To populate the array

x=0;

y=0;

// To convert the message into an array of char

for (int i=0; i< msg.length;i++)

{

temp[x][y]=msg[i];

if (x==(key.length()-1))

{

x=0;

y=y+1;

} // Close if

else

{

x++;

}

} // Close for loop

// To sort the key

char t[]=new char [key.length()];

t=key.toCharArray();

Arrays.sort(t);

 

for (int j=0;j<y;j++)

{

for (int i=0;i<key.length();i++)

{

System.out.print(temp[i][j]);

}

System.out.println();

}

System.out.println();

// To print out row by row (i.e. y)

for (int j=0;j<y;j++){

// To compare the the sorted Key with the key

// For char in the key

for (int i=0;i<key.length();i++){

int pos=0;

// To get the position of key.charAt(i) from sorted key

for (pos=0;pos<t.length;pos++){

if (key.charAt(i)==t[pos]){

// To break the for loop once the key is found

break;

}

}

System.out.print(temp[pos][j]);

encryptedMessage+=temp[pos][j];

}

System.out.println();

}

System.out.println(encryptedMessage);

System.exit(0);

}

}

 

hasil code


 

No comments:

Post a Comment

Iklan Atas Artikel

Meta Propeller atas artikel

cara mudah turial kode Java blog website grafika komputer jaringan komputer dan Arduino

Iklan Tengah Artikel 2

Iklan Bawah Artikel