Ads 468x60px

Jumat, 05 Juli 2013

Source Code Program Enkripsi Dekripsi Caesar Cipher, Vigenere Cipher, Polialfabetik

Caesar Cipher Enkripsi:

% enskripsi dengan caesar
function b = caesar (plainteks)
plainteks = input('masukkan plainteks= ','s');
key = input('masukkan key= ');//untuk memasukkan kunci
disp('plainteks anda adalah');
disp(plainteks);
plainteks = upper(plainteks)//untuk mengubah huruf menjadi huruf besar
plainteks = abs(plainteks)//untuk mengambil nilai ASCII
chiperteks = mod (plainteks +key-'A',26) + 'A';
chiperteks = char(chiperteks);
disp('chiperteks adalah');
disp(chiperteks)
end

Caesar Cipher Dekripsi:

%deskripsi dengan caesar
function b = caesar (plainteks)
plainteks = input('masukkan plainteks= ','s');
key = input('masukkan key= ');
disp('plainteks anda adalah');
disp(plainteks);
plainteks = upper(plainteks)
plainteks = abs(plainteks)
chiperteks = mod (plainteks -key-'A',26) + 'A';
chiperteks = char(chiperteks);
disp('chiperteks adalah');
disp(chiperteks)
end

Vigenere Cipher

%Vigenere Cipher
function ekstrak
pltext=input('Masukkan plain= ','s');
k=pltext;
L=size(k)
for i=1:L(1,2)
    if double(k(i))==32
        k(i)='@'
    end
end
% menampilkan nilai ascii dr hasil ekxtrak
j=1;
for i=1:L(1,2)
    if (k(i))~='@'
        eks (j)=k(i)
        j=j+1
            end
       L=size(k)
end


%Vigenere Cipher
function ekstrak
pl=input('Masukkan plain= ','s');
ke=input('Masukkan kunci=','s');
pl=double(pl)
ke=double(ke)
c=(pl+ke)-'a';
k=size(c);
for i=1:k(1,2)
    if c(i)>=123;
        c(i)=mod(c(i),122)+96;
        c=char(c)
    else
        c=char(c)
    end
end
disp('Cipherteks adalah :')
disp(c)

k=pl;
L=size(k);
for i=1:L(1,2)
    if double(k(i))==32
        k(i)='@'
    end
end
% menampilkan nilai ascii dr hasil ekxtrak
j=1;
for i=1:L(1,2)
    if (k(i))~='@'
        eks (j)=k(i)
        j=j+1
            end
       L=size(k)
end

Polialfabetik

function ekstrak
key=input('Masukkan kunci= ','s');
k=key;
L=size(k)
for i=1:L(1,2)
    if double(k(i))~=32
        for j=i+1:L(1,2)
            if k(i)==k(j)
                k(j)='@'
            end
        end
    else
        k(i)='@'
    end
end
% menampilkan nilai ascii dr hasil ekxtrak
j=1;
for i=1:L(1,2)
    if (k(i))~='@'
        eks (j)=k(i)
        j=j+1
            end
       L=size(k)
end
%memetakan abjad asli
for i=1:26
    abjad(1,i)=char(96+i)
end

%menampilkan bil.asli hasil ekstrak
L=size(eks)
x=0
for i=1:L(1,2)
abjad(2,i)=eks(i)
x=x+1
end

% utk membuat abjad baru
alfabet=abjad(1,:)
for i==1:26
for j=1:x
if alfabet(i)==abjad(2,j)
alfabet(i)='@'
end
end
end
for i=1:26
if alfabet(i) ~='@'
abjad(2,x+1)=alfabet(i)
x=x+1
end
end

% untuk enkripsi
pltext=input('Masukkan plain=','s')
L=size(pltext)
for i=1:L(1,2)
for j=1:26
if pltext(i)=abjad(1,j)
cptext(i)=abjad(2,j)
end
end
end

Source Code Diatas Menggunakan Aplikasi Matlab 7.
Melalui M-File program ini di ketik!.

Artikel Lain:








3 Komentar:

Unknown mengatakan...

adakah source matlabnya?soalnya ketika saya copast di .m file tidak bisa running, mohon bantuannya.

Terimakasih

Unknown mengatakan...

adakah source code dalam bentuk m file? saya sudah copast code ini ke m file namun tidak running, mohon bantuannya,

terimakasih

Siman Mendrofa mengatakan...

ne cuma program sederhana aja bro... dah masuk m-file... klo buat formnya juga dah ada tuh... TQ