Minggu, 05 Desember 2010

Enkripsi dengan XOR

Seiring dengan hadirnya komputer yang memperkenalkan sistem bilangan bit biner dan byte dalam penyimpanan dan pemrosesan data, Bitwise operator XOR (Exlusive OR) digunakan sebagai operasi dasar yang paling banyak digunakan dalam enkripsi berbasis byte. Operator XOR akan menghasilkan bit 1 bila kedua operand (A dan B) berbeda dan  menghasilkan bit 0 bila kedua operator sama (A dan B), bernilai 0 semua atau 1 semua. Lihat tabel kebenaran di atas.

Plain : 0110 0001 = 61H = 97 = 'a'
Kunci : 0000 1001 = 09H = 9
----------------------------- XOR
Cipher: 0110 1000 = 68H = 104 = 'h'

Perhatikan contoh di atas, bila Kode ASCII 97 (huruf A) di XOR dengan Kode ASCII 9 menghasilkan
Kode ASCII 104 (huruf h). Operasi XOR dilakukan di tiap digit biner.



Cipher: 0110 1000 = 68H = 104 = 'h'
Kunci : 0000 1001 = 09H = 9
----------------------------- XOR
Plain : 0110 0001 = 61H = 97 = 'a'

Sedangkan untuk mendapatkan Plain text kembali, lakukan operasi XOR antara Cipher text dengan kuncinya.




Gambar: Hasil running enkripsi XOR
Kode Program: Bahasa C++

1 komentar: