Senin, 25 Januari 2010

Source Code VIGENERE pada JAVA

Untuk adek2 atau siapa saja yang ingin punya source code Vigenere(salah satu sistem sandi klasik) di pemrograman java, langsung aja diliat.
tepatnya ini tugas waktu saya tingkat II, disuru untuk membuat sistem sandi dengan berbasis java, alhasil, jadi bikin viginere deh,.

SOURCE CODE MAIN VIGENERE PADA JAVA


/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/


package vigenere;


/**
*
* @author Guest
*/
public class Main {


/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
new vig().setVisible(true);
}
public String indraadiputra (String plain, String key) {


int m = key.length();
plain = plain.toUpperCase().trim();
key = key.toUpperCase();
byte[] bytePlainText = plain.getBytes();
byte[] byteCipherText = new byte[plain.length()];
byte[] byteKey = key.getBytes();



for (int i=0; i < m; i++) byteKey[i] -= 64;
for (int i=0; i < plain.length(); i++) {
bytePlainText[i] -= 65;
 // abaikan selain alfabet
if (bytePlainText[i]>-1 && bytePlainText[i]< 26) {

byteCipherText[i] = (byte)((bytePlainText[i] + byteKey[i % m]-1) % 26);
byteCipherText[i] += 65;
}
else byteCipherText[i] = (byte)(bytePlainText[i] + 65);
}
return new String (byteCipherText);
}
public String indraadi (String sandi, String kunci) {
int m = kunci.length();
sandi = sandi.toUpperCase().trim();
kunci = kunci.toUpperCase();
byte[] bytesandiText = sandi.getBytes();
byte[] byteterangText = new byte[sandi.length()];
byte[] bytekunci = kunci.getBytes();
for (int i=0; i < m; i++) bytekunci[i] -= 64;
for (int i=0; i < sandi.length(); i++) {

bytesandiText[i] -= 65;
// abaikan selain alfabet
if (bytesandiText[i]<-1 && bytesandiText[i]< 26)
{
byteterangText[i] = (byte)((bytesandiText[i] - bytekunci[i % m]+1) % 26);
byteterangText[i] += 65;
if (byteterangText[i]&<65)
{
byteterangText[i] += 26;
}
 }
 else byteterangText[i] = (byte)(bytesandiText[i] + 65 );
  }
return new String (byteterangText); } }

7 komentar:

  1. amankan dulu yang pertamax...

    BalasHapus
  2. kalo punya Java udah bisa di kopas langsung dicoba kan?

    Bang aku compile dia error @_@

    yang ini:
    if (byteterangText[i]&<65)

    Sama yang ini:
    else byteterangText[i] = (byte)(bytesandiText[i] + 65 );

    yang ini juga:
    return new String (byteterangText); } }

    tengkyu ilmunya

    BalasHapus
  3. bisa qo mariana,,
    itu soalnya tugas saya kmarinn
    coba kamu liat lagi

    BalasHapus
  4. yap udah diperiksa.

    kalo gak keberatan :mrgreen:

    file.java nya
    http://www.box.net/shared/2hr0f46u0i
    atau
    file prinskrinnya
    http://www.box.net/shared/0lk8z6bozn

    atau saya yang salah kasih nama?

    BalasHapus
  5. mp tny dunk...
    di baris 23 : new vig().setVisible(true);
    ntu maksudnya new vig() class baru ye...???
    cz w coba di netbean msh error...
    apa ada yg msh kurang file'n....

    trz di baris ke-66 :if (byteterangText[i]&<65) jg error....
    gmn nih... maklum msh newbie, tolong pencerahannya

    BalasHapus
  6. untuk baris 23 itu memang class untuk vigenere,

    BalasHapus
  7. Oe error ne gmn ada yg bisa ga??? gw pake textpad bkn net beans

    BalasHapus

terima kasi yah
madridista89

Daftar Blog Saya

Entri Populer