Rabu, 01 Desember 2010

Program Enkripsi dan Dekripsi Dengan Metoda XOR

//Program enkripsi dan dekripsi dengan metoda XOR
//Program ini menggunakan C++ dengan editor MS Visual Studio 2008
#include
#include
using namespace std;
int main()
{
char c=65;
char pesan [100], kunci[100], enkripsi [100], dekripsi [100];
int panjang_data, panjang_data_kunci ,i,j=0;
int ascii[100], ascii_kunci [100], ascii_enkripsi [100], ascii_dekripsi [100];
char a[20] = {76,73,78,65,32,78,73,77,32,50,51,50,48,57,51,49,51};;
cout <<"                                                                                "<&ltendl;
cout <<"     Tugas Keamanan Informasi Lanjut                       " <
&ltendl;
cout <<"     Dosen : Dr.Ir. Budi Raharjo, M.Eng                    " <&ltendl;
cout <<"     Program Enkripsi dan Dekripsi                           " <&ltendl;
cout <<"     Dengan Metoda XOR                                        " <&ltendl;
cout <<"     oleh : Beni Aminulah - Nim. 23209306               " <&ltendl;
cout <<"     Magister T Elektro ITB - Opsi TMDG               " <&ltendl;
cout <<"================================================="<&ltendl;

// Menuliskan pesan
cout <<"Tulis pesan dan kunci tanpa spasi di bawah ini" <<
cout <<"Pesan : ";
cin >> pesan;
panjang_data = strlen (pesan); //Menghitung panjang pesan
cout <
cout <<"Panjang Data nya = " << panjang_data << endl; //Menampilkan panjang pesan

for (i=0; i<=panjang_data-1; i++)
{
ascii[i] = int (pesan[i]); //Ubah pesan menjadi kode ASCII
cout << "Kode ASCII ke " <<< " adalah " << ascii[i]<
}
cout <
cout <<"Kunci : ";
cin >> kunci;
panjang_data_kunci = strlen (kunci);
cout <
cout <<"Panjang Data Kunci = " << panjang_data_kunci << endl;

for (i=0; i<=panjang_data_kunci-1; i++)
{
ascii_kunci[i] = int (kunci[i]);
cout << "Kode ASCII ke " <<< " adalah " << ascii_kunci[i]<
}
cout<

for (i=0; i<=panjang_data-1; i++)
{
ascii_enkripsi[i] = ascii[i] ^ ascii_kunci[j]; //Pemrosesan XOR pesan dengan kunci
j = j + 1;
if (j == panjang_data_kunci)
{
j = 0;
}
enkripsi [i] = int (ascii_enkripsi[i]);
cout << "Kode ASCII Enkripsi Pesan ke " << i << " adalah " << ascii_enkripsi[i]<< " karakternya " << enkripsi[i]<< endl;
}
cout <
cout <<"**** Isi Pesan Setelah di Enkripsi ****" <
cout <<"===============================================" <
cout <
cout <<"\t";
for (i=0; i<=panjang_data-1; i++)
{
cout <<<" " ;
}
cout<<

cout <
cout <<"**** Proses Dekripsi ****" <
cout <<"===============================================" <
cout <

//Ubah pesan yang telah di enkripsi menjadi kode ASCII
for (i=0; i<=panjang_data-1; i++)
{
ascii_dekripsi[i] = enkripsi[i] ;
cout <<"Kode ASCII " << enkripsi [i] <<" Pesan ke " << i << " adalah " << ascii_dekripsi[i]<< endl;
}
cout<<
// Proses XOR dekripsi dengan kunci
for (i=0; i<=panjang_data-1; i++)
{
dekripsi[i] = ascii_dekripsi [i] ^ ascii_kunci[j]; //Proses XOR enkripsi dengan kunci
j = j + 1;
if (j == panjang_data_kunci)
{
j = 0;
}
cout << "Pesan ke " << i << " adalah " << ascii_enkripsi[i]<< " karakternya " << dekripsi[i]<< endl;
}
cout <
cout <<" Isi Pesan Setelah di dekripsi " <
cout <<"***********************************************" <
cout <

for (i=0; i<=panjang_data-1; i++)
{
cout <<<" " ;
}
cout<<

cout <<"=================="<
return 0;
}

Hasil setelah di Run :


Hasil Kompilasi
Hasil Eksekusi



*****

Tidak ada komentar:

Posting Komentar