Algoritma Kriptografi dengan Teknik Transposisi

Algoritma Kriptografi transposisi ini merupakan algoritma yang cukup sederhana dalam dunia enkripsi data dan merupakan salah satu algoritma yang belum modern (klasik).  Algoritma transposisi ini kalau gak salah ceritanya dulu ada seorang yang mau menuliskan pesan rahasia ke raja.  Nah tentu dong pesan rahasia itu akan dikirim lewat telik sandi ( jaman dahulu belum ada komputer, apalagi Internet :hammer: ).  Akhirnya sang pengirim itu mempunyai akal yaitu dia menuliskan pesan rahasia tersebut dengan cara menggulung terlebih dahulu dengan menggunakan bambu sebagai porosnya. Kertasnya lalu ditulisi pesan rahasia secara vertikal.  Setelah selesai menulis pesan tersebut, maka kertas tadi dicopot lagi gulungannya, dan terjadilah tulisan yang acak-acakkan.  Tulisan inilah yang nantinya akan dikirim oleh telik sandi.

Untuk membaca ulang tulisan ini tentu harus dililitkan lagi pesan tersebut ke bambu yang diameternya sama. Sekian kisahnya, nah seiring berjalannya waktu karena komputer dan Internet sudah ditemukan sekarang gak usah pakai bambu lagi soalnya bambu udah susah dicari :p , dan sebagai gantinya adalah key yang digunakan  buat mau berapa kali lilitan.

Oh ya contoh sederhananya ntar gini ( oh ya kalau salah ingetin ya, soalnya cuman modal ingatan doang -_- )

Misal kita nulis

Jangannakalkamu, terus kita pengen jadi 4 kolom ya berarti ntar jadinya

JAKA

ANAM

NNLU

GAKZ

Kan tadi pengennya jadi 4 kolom, nah kolom yang terakhir misal kata udah abis diberi huruf terserah (ditentuin aja Z misalnya )

Nah sekarang bagaimana algoritmanya ? seperti ini nduk 😀

input(plaintext) // user disuruh menginput kata yang belum terenkripsi
input(key) // user disuruh menginput key, mau berapa kolom sih hasilnya
//kalau udah sekarang kita cari nih baris dan kolom yang nantinya akan terbentuk 
Baris <- roundup( panjang(plaintext) / key)
Kolom <- key
//ketika udah mari kita bikin sebuah matriks berordo baris x kolom 
Matriks[baris][kolom]
//Nah kalau udah sekarang mulai masuk ke loopingan, oh ya sebelumnya biar mudah diberi inisialisasi dulu biar tahu hurufnya yang akan kita looping itu sampai mana
Int posisi <- 0;
//Nah sekrang mulai proses looping, oh ya memasukkannya berarti kan kebawah loopingnya berarti per kolom
For I <- 0 to kolom do
    For j <- 0 to baris do
        If posisi < panjang(plaintext);
          Matriks[j][i] = plaintext.charAt(posisi);
         Posisi++
       Else
           Matriks[j][i] = "Z";
 
//Dah habis itu cetak dengan cara per baris
For I <- 0 to baris do
    For j <- 0 to kolom do
                 Output(matriks[i][j])

Nah kurang lebih algoritmanya kek gitu hehe :D, silakan pakai bahasa yang enak buat implementasinya ya.

One thought on “Algoritma Kriptografi dengan Teknik Transposisi

Leave a Comment