Selasa, 13 Maret 2012

Enkripsi

Diposting oleh Fransiska Aprilia Witantri di 08.11 0 komentar
saya lembur lagi nih posting nya -__-
meskipun sebenernya besok masih harus ulangan dengan dua musuh besaaaaarrr, Matematika sama Kimia. yaa.. tapi berbagi ilmu lebih peting kan :) ya mudah mudahan kerja keras buat melek bisa terbayarkan dengan kehadiran anda anda semua untuk singgah sejenak menikmati suguhan ilmu tentang JAVA.. (waah sok puitis -__-)
sebenernya alesan utama, atau motivasi utamanya sih karena ada tugas dari sekolah.. hehe..
langsung ke TKP yaak.. check this out >>


         Enkripsi adalah proses mengacak data sehingga tidak dapat dibaca oleh pihak lain. Pada kebanyakan proses enkripsi, kita harus menyertakan kunci sehingga data yang dienkripsi dapat didekripsikan kembali. Ilmu yang mempelajari teknik enkripsi disebut kriptografi. Gambaran sederhana tentang enkripsi, misalnya mengganti huruf a dengan n, b dengan m dan seterusnya. Enkripsi juga bisa disebut proses mengamankan suatu informasi dengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus. Keuntungan dari enkripsi adalah kode asli kita tidak dapat dibaca oleh orang lain.
          Enkripsi telah digunakan untuk mengamankan komunikasi di berbagai negara, namun, hanya organisasi-organisasi tertentu dan individu yang memiliki kepentingan yang sangat mendesak akan kerahasiaan yang menggunakan enkripsi.

Enkripsi mempunyai beberapa macam metode yang dapat digunakan pada pemrograman web, seperti PHP, ASP, atau yang lainnya.Dan berikut metode metode nya :

1. Metode Enkripsi MD2
          Message-Digest algortihm 2 (MD2) adalah fungsi hash cryptographic yang dikembangkan oleh Ronald Rivest pada tahun 1989. Algoritma dioptimalkan untuk komputer 8-bit. MD2 yang ditetapkan dalam RFC 1319. Meskipun algoritma lainnya telah diusulkan sejak dulu, seperti MD4, MD5 dan SHA, bahkan sampai dengan 2004 [update] MD2 tetap digunakan dalam infrastruktur kunci publik sebagai bagian dari sertifikat yang dihasilkan dengan MD2 dan RSA.

2. Metode Enkripsi MD4
          Message-Digest algortihm 4(seri ke-4) yang dirancang oleh Profesor Ronald Rivest dari MIT pada tahun 1990. Panjangnya adalah 128 bit. MD4 juga digunakan untuk menghitung NT-hash ringkasan password pada Microsoft Windows NT, XP dan Vista.

3. Metode Enkripsi MD5
           MD5 adalah salah satu dari serangkaian algortima message digest yang didesain oleh Profesor Ronald Rivest dari MIT (Rivest, 1994). Saat kerja analitik menunjukkan bahwa pendahulu MD5 yaitu MD4 mulai tidak aman, MD5 kemudian didesain pada tahun 1991 sebagai pengganti dari MD4 (kelemahan MD4 ditemukan oleh Hans Dobbertin). Dalam kriptografi, MD5 (Message-Digest algortihm 5) ialah fungsi hash kriptografik yang digunakan secara luas dengan hash value 128-bit. Pada standart Internet (RFC 1321), MD5 telah dimanfaatkan secara bermacam-macam pada aplikasi keamanan, dan MD5 juga umum digunakan untuk melakukan pengujian integritas sebuah file.

4. Metode Enkripsi SHA
          SHA adalah serangkaian fungsi cryptographic hash yang dirancang oleh National Security Agency (NSA) dan diterbitkan oleh NIST sebagai US Federal Information Processing Standard.
SHA adalah Secure Hash Algoritma. Jenis-jenis SHA yaitu SHA-0, SHA-1, dan SHA-2.
Untuk SHA-2 menggunakan algoritma yang identik dengan ringkasan ukuran variabel yang terkenal sebagai SHA-224, SHA-256, SHA-384, dan SHA-512.

5. Metode Enkripsi RC4
          RC4 merupakan salah satu jenis stream cipher, yaitu memproses unit atau input data pada satu saat. Unit atau data pada umumnya sebuah byte atau bahkan kadang kadang bit (byte dalam hal RC4). Dengan cara ini enkripsi atau dekripsi dapat dilaksanakan pada panjang yang variabel. RC4 adalah penyandian stream cipher yang dibuat oleh Ron Riverst pada tahun 1987 untuk pengamanan RSA. Algoritmanya didasarkan pada permutasi acak.

6. Metode Enkripsi Base64
          Base64 adalah sistem untuk mewakili data mentah byte sebagai karakter ASCII.
Base64 menyediakan 6-bit encoding 8-bit ASCII karakter.
Base64 merupakan format yang dicetak menggunakan karakter, memungkinkan binari data yang akan dikirim dalam bentuk dan email, dan akan disimpan di database atau file.


Untuk contoh program nya ditunggu aja yaa..
artikel ini bukan saya yang bikin. saya dapat referensi dari sini nih http://securehacklink.org/
maap yaak, copas doang banyak gaya saya nih :D

Senin, 12 Maret 2012

Diskripsi Bahasa Pemrograman Java

Diposting oleh Fransiska Aprilia Witantri di 10.05 0 komentar
Pada class javax.crypto sudah banyak disediakan algoritma kriptografi, sehingga kita bisa langsung memakai dan menerapkan di kode program. Beberapa metode kriptografi yang sudah ada pada class javax.crypto adalah metode kriptografi dengan algoritma MD5, DES, dan masih banyak lagi.
Ehm, di postingan kali ini saya ingin mencoba menerapkan metode algoritma kriptografi MD5 dengan memanfaatkan class javax.crypto. MD5 merupakan fungsi hash satu arah yang diciptakan oleh Ron-Rivest. MD-5 biasanya digunakan untuk mengetahui bahwa pesan yang dikirim tidak ada perubahan sewaktu berada di jaringan. Dalam Algoritma MD-5 secara garis besar mengambil pesan yang mempunyai panjang variabel diubah menjadi ‘sidik jari’ atau ‘intisari pesan’ yang mempunyai panjang tetap yaitu 128 bit. ‘Sidik jari’ ini tidak dapat dibalik untuk mendapatkan pesan, dengan kata lain tidak ada orang yang dapat melihat pesan dari ‘sidik jari’ MD-5.

Oke sekarang kita langsung menuju ke kode programnya. Langkah yang pertama, saya membuat sebuah class yang bernama MD5Encrypt yang berguna sebagai engine untuk melakukan enkripsi.


package com.Lola.encrypt;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
*
* @author fransiskaaprilia
*/
public class MD5Encrypt {
private String plainTeks;
MessageDigest messageDigest;

public MD5Encrypt(String plainTeks){
this.plainTeks = plainTeks;
}

public String encrypt(String plaintext) throws NoSuchAlgorithmException{
this.messageDigest = MessageDigest.getInstance("MD5");
System.out.println("Metode Enkripsi : " + this.getMessageDigest().getAlgorithm());
System.out.println("Provider : " + this.getMessageDigest().getProvider());
System.out.println("ToString :" + this.getMessageDigest().toString());

String input = this.getPlainTeks();
this.getMessageDigest().update(input.getBytes());
byte[] output = this.getMessageDigest().digest();
return bytesToHex(output);


}

public MessageDigest getMessageDigest() {
return messageDigest;
}

public void setMessageDigest(MessageDigest messageDigest) {
this.messageDigest = messageDigest;
}

public String getPlainTeks() {
return plainTeks;
}

public void setPlainTeks(String plainTeks) {
this.plainTeks = plainTeks;
}

public static String bytesToHex(byte[] b) {
char hexDigit[] = {'0', '1', '2', '3', '4', '5', '6', '7',
'8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
StringBuffer buf = new StringBuffer();
for (int j=0; j> 4) & 0x0f]);
buf.append(hexDigit[b[j] & 0x0f]);
}
return buf.toString();
}


}

di dalam class MD5Encrypt terdapat sebuah fungsi yaitu bytesToHex, yang berfungsi untuk mengubah data dari tipe bytes, ke bentuk Hexa.

Setelah itu , class MD5Encrypt yang sudah kita buat , akan kita coba dengan membuat fungsi main

package com.tatta.test;

import com.tatta.encrypt.MD5Encrypt;
import java.security.NoSuchAlgorithmException;

/**
*
* @author fransiskaaprilia
*/
public class Test {
public static void main(String[] args) throws NoSuchAlgorithmException {
String input = "banjarmasin";
MD5Encrypt mde = new MD5Encrypt(input);
System.out.println("MD5 (" + input + ") = " + mde.encrypt(input) );
}

}


jika program di eksekusi maka akan tampil output seperti di bawah ini


Metode Enkripsi : MD5
Provider : SUN version 1.6
ToString :MD5 Message Digest from SUN,

MD5 (banjarmasin) = 2A9C716F0D0ED2CD71EE3FA93DDF9719
BUILD SUCCESSFUL (total time: 2 seconds)


Demikian Sekilas Info
hahaa :D

Pages

corat coret disini :3

komentar

 

My Colorful Live Copyright © Fransiska Aprilia Witantri