Penyandian Data Teks Dengan Algoritma Elgamal Dan Algoritma Kompresi Data Dengan Algoritma Elias Gamma Code

83

Listing Program
PembangkitKunci.java
package skripsi;
import
import
import
import
import
import
import

java.util.*;
javax.swing.JFileChooser;
java.io.File;
java.io.BufferedWriter;
java.io.FileWriter;
java.io.IOException;
java.io.PrintWriter;


public class PembangkitKunci extends javax.swing.JFrame {
private JFileChooser dialog = new JFileChooser();
private
void
jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
int isi = dialog.showSaveDialog(this);
if (isi == JFileChooser.APPROVE_OPTION) { // jika file di
pilih untuk di simpan
File file = dialog.getSelectedFile();
try {
file.createNewFile();
PrintWriter
out
=
new
PrintWriter(new
BufferedWriter(new
FileWriter(file)));
out.print(txtP.getText() + " ");
out.print(txtAlpha.getText() + " ");

out.print(txtX.getText());
out.flush();
}
catch (IOException ex) {
System.err.println("Error: " + ex.getMessage());
}
}
}
private
void
jButton4ActionPerformed(java.awt.event.ActionEvent evt) {
Random randGen = new Random();
// bangkitkan bilangan prima
int prima = bangkitkanPrima(4);
int alpha = akarPrimitif(prima);
int a = randGen.nextInt(prima);
int x = modExp(alpha, a, prima);

84


// update text field.
txtP.setText(String.valueOf(prima));
txtAlpha.setText(String.valueOf(alpha));
txtA.setText(String.valueOf(a));
txtX.setText(String.valueOf(x));
}
private
void
jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
new cover_1().setVisible(true);
private
void
jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
int isi = dialog.showSaveDialog(this);
if (isi == JFileChooser.APPROVE_OPTION) { //menyimpan
file
File file = dialog.getSelectedFile();
try {
file.createNewFile();
PrintWriter

out
=
new
PrintWriter(new
BufferedWriter(new FileWriter(file)));
out.print(txtP.getText() + " ");
out.print(txtA.getText());
out.flush();
}
catch (IOException ex) {
System.err.println("Error: " + ex.getMessage());
}
}
}
// fungsi modulo exponensial
private int modExp(int bil, int pangkat, int pemodulo){
int hasil = 1;
for(int i = 1; i