Friday, January 12, 2018

Belajar Kriptographi : Bruto Force Caesar Cipher

Pada tulisan sebelumnya telah dibawas tentang penyandian menggunakan caesar cipher. kali ini akan coba dijelaskan bruto force untuk men-dekripsi pesan tersandi (cipher teks).

Proses men-dekripsi pesan yang tersandi dengan caesar cipher akan mudah dilakukan jika telah mengetahui kumpulan teks/huruf yang digunakan. Misalnya akan lebih sulit jika huruf yang digunakan adalah kombinasi huruf, angka dan simbol

~!@#$%^&*()ABCDEFGHIJKLMNOPQRSTUVXWYZ1234567890 

daripada jika hanya menggunakan A - Z. Karna semakin banyak huruf/simbol yang digunakan maka semakin panjang jumlah kunci yang bisa dibuat.

Program berikut adalah contoh bruto force caesar cipher, menggunakan python.

bruto force caesar cipher, plainteks pada kunci n= 13

Kode Program

#caesarhacker.py

print('masukkan pesan yang akan di-deenkripsi')
pesan=raw_input() #variabel pesan

HURUF='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
#pesan=pesan.upper()

# lakukan looping untuk setiap kemungkinan kunci
for kunci in range(len(HURUF)):

#atur tranlasi ke string kosong agar iterasi (translasi) sebelumnya dikosongkan  
    translasi=''

    for simbol in pesan:
        if simbol in HURUF:
            num=HURUF.find(simbol) #dapatkan no.urut dari simbol pada pesan
            num=num - kunci

            if num < 0:
                num = num+len(HURUF)
            translasi=translasi+HURUF[num]  
        else:
            translasi=translasi+simbol


    print('kunci#%s :%s'%(kunci,translasi)) 


======================
Source code program telah dimodifikasi, bersumber pada buku "Hacking Secret cipher with python", AI Sweigart.

No comments:

Post a Comment

Belajar Kriptographi : Bruto Force Caesar Cipher

Pada tulisan sebelumnya telah dibawas tentang penyandian menggunakan caesar cipher. kali ini akan coba dijelaskan bruto force untuk men-de...