• Tidak ada hasil yang ditemukan

Implementasi Algoritma Blowfish Pada Aplikasi Enkripsi Dan Dekripsi Citra Berbasis Windows

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Algoritma Blowfish Pada Aplikasi Enkripsi Dan Dekripsi Citra Berbasis Windows"

Copied!
15
0
0

Teks penuh

(1)

CURRICULUM VITAE

Ahda Andi Ahda Andi ---

Data Pribadi

Nama : Ahda Andi Kurnia

Tempat/Tanggal Lahir : Medan/27 Mei 1993 Tinggi/Berat Badan : 168 cm/58 kg

Agama : Islam

Kewarganegaraan : Indonesia

Alamat : Jl.Surya Haji Komp. Surya Indah No.43 Alamat Orang Tua : Jl.Surya Haji Komp. Surya Indah No.43

Telp/ Hp : 081260831254

Email : [email protected]

--- Riwayat Pendidikan

[2010 – 2016] : S1 Ilmu Komputer Universitas Sumatera Utara, Medan [2006 – 2009] : SMA Islam Al Ulum Terpadu Medan

[2003 – 2006] : SMP Islam Al Ulum Terpadu Medan [1997 – 2003] : SD Pertiwi Medan

--- Keahlian/Kursus

Keahlian Komputer Bahasa :

Pemrograman : C# English

Database : MySQL Indonesia

(2)

--- Pengalaman Organisasi

[2013 - 2014] Anggota PEMA FASILKOM-TI USU 2013-2014 [2012 – 2013] Anggota IMILKOM 2012/2013

[2013 – 2014] Anggota IMILKOM 2013/ 2014

--- Pengalaman Kepanitiaan

[2012] Anggota Panitia PORSENI ILKOM

[2013] Ketua Seminar Public Speaking

--- Seminar

(3)

LISTING PROGRAM

1. FORM MAIN MENU

/*

* Created by SharpDevelop. * User: Excited

* Date: 2/16/2016 * Time: 7:11 PM *

* To change this template use Tools | Options | Coding | Edit Standard Headers. */

using System;

using System.Collections.Generic; using System.Drawing;

using System.Windows.Forms;

namespace enkrip {

///<summary>

/// Description of MainForm.

///</summary>

public partial class MainForm : Form {

public MainForm() {

//

// The InitializeComponent() call is required for Windows Forms designer support.

//

InitializeComponent();

//

// TODO: Add constructor code after the InitializeComponent() call.

//

}

void Button3Click(object sender, EventArgs e) {

(4)

}

void Button1Click(object sender, EventArgs e) {

}

void ExitToolStripMenuItemClick(object sender, EventArgs e) {

Application.Exit(); }

void EnkripToolStripMenuItemClick(object sender, EventArgs e) {

enkrip pindah = new enkrip(); this.Hide();

pindah.ShowDialog(); }

void DekripToolStripMenuItemClick(object sender, EventArgs e) {

dekrip pindah = new dekrip(); this.Hide();

pindah.ShowDialog(); }

void AboutToolStripMenuItemClick(object sender, EventArgs e) {

about pindah = new about(); this.Hide();

pindah.ShowDialog(); }

void HomeToolStripMenuItemClick(object sender, EventArgs e) {

MainForm pindah = new MainForm(); this.Hide();

(5)

} }

2. FORM ENKRIPSI

/*

* Created by SharpDevelop. * User: Excited

* Date: 2/17/2016 * Time: 7:32 PM *

* To change this template use Tools | Options | Coding | Edit Standard Headers. */

using System;

using System.Drawing;

using System.Windows.Forms; using org.jivesoftware.util;

namespace enkrip {

///<summary>

/// Description of enkrip.

///</summary>

public partial class enkrip : Form {

public enkrip() {

//

// The InitializeComponent() call is required for Windows Forms designer support.

//

InitializeComponent();

//

// TODO: Add constructor code after the InitializeComponent() call.

//

}

(6)

Application.Exit(); }

void HomeToolStripMenuItemClick(object sender, EventArgs e) {

MainForm pindah = new MainForm(); this.Hide();

pindah.ShowDialog(); }

void DekripToolStripMenuItemClick(object sender, EventArgs e) {

dekrip pindah = new dekrip(); this.Hide();

pindah.ShowDialog(); }

void AboutToolStripMenuItemClick(object sender, EventArgs e) {

about pindah = new about(); this.Hide();

pindah.ShowDialog(); }

void EnkripToolStripMenuItemClick(object sender, EventArgs e) {

enkrip pindah = new enkrip(); this.Hide();

pindah.ShowDialog(); }

void Button1Click(object sender, EventArgs e) {try

{

OpenFileDialog open = new OpenFileDialog(); open.Filter = "Image Files( *.bmp)|*.bmp"; if (open.ShowDialog() == DialogResult.OK) {

(7)

{

pictureBox1.Image = bit; }

else

MessageBox.Show("Image Pixel must be 300x300 px", "Warning"); }

}

catch (Exception) {

throw new ApplicationException("Failed loading image"); }

}

void Button2Click(object sender, EventArgs e) {

Blowfish algo = new Blowfish(textBox1.Text); Bitmap image = new Bitmap(pictureBox1.Image); int isi = 0;

int xi = image.Width; int yi = image.Height; string redasli=""; string greenasli=""; string blueasli=""; for (int i = 0; i < yi; i++) {

for (int j = 0; j < xi; j++) {

redasli = redasli + (char)image.GetPixel(j,i).R; greenasli = greenasli + (char)image.GetPixel(j,i).G;

blueasli = blueasli + (char)image.GetPixel(j,i).B; }

}

string redenkrip = algo.encryptString(redasli); string greenenkrip = algo.encryptString(greenasli); string blueenkrip = algo.encryptString(blueasli); int ukurenkrip

(8)

for (int i = 0; i < ukurenkrip; i++) {

for (int j = 0; j < ukurenkrip; j++) {

if(isi>redenkrip.Length-1) break;

redf = (double)redenkrip[isi]; greenf = (double)greenenkrip[isi]; bluef = (double)blueenkrip[isi];

imagehasil.SetPixel(j,i,Color.FromArgb(255,(int)redf,(int)greenf,(i nt)bluef));

redf=0;greenf=0;bluef=0;isi++; }

}

pictureBox2.Image = imagehasil;

/*richTextBox1.Text = redasli.Length.ToString(); richTextBox2.Text = greenasli.Length.ToString(); richTextBox3.Text = blueasli.Length.ToString(); richTextBox4.Text = redenkrip.Length.ToString(); richTextBox5.Text = greenenkrip.Length.ToString(); richTextBox6.Text = ukurenkrip.ToString();*/

MessageBox.Show("siap");

}

void Button3Click(object sender, EventArgs e) {

if ( pictureBox2.Image !=null) {

SaveFileDialog simpan = new SaveFileDialog(); simpan.Filter = "Image Files | *.bmp";

simpan.FileName = "*.bmp";

if (simpan.ShowDialog() == DialogResult.OK) {

(9)

MessageBox.Show("Citra hasil telah

disimpan", "simpan", MessageBoxButtons.OK, MessageBoxIcon.Information); }

} else {

MessageBox.Show("Citra hasill belum ada"); }

} } }

3. FORM DEKRIPSI

/*

* Created by SharpDevelop. * User: Excited

* Date: 2/17/2016 * Time: 7:33 PM *

* To change this template use Tools | Options | Coding | Edit Standard Headers.

*/

using System;

using System.Drawing;

using System.Windows.Forms; using org.jivesoftware.util;

namespace enkrip {

///<summary>

/// Description of dekrip.

///</summary>

public partial class dekrip : Form {

public dekrip() {

//

(10)

//

InitializeComponent();

//

// TODO: Add constructor code after the InitializeComponent() call.

//

}

void ExitToolStripMenuItemClick(object sender, EventArgs e) {

Application.Exit(); }

void HomeToolStripMenuItemClick(object sender, EventArgs e) {

MainForm pindah = new MainForm(); this.Hide();

pindah.ShowDialog(); }

void AboutToolStripMenuItemClick(object sender, EventArgs e) {

about pindah = new about(); this.Hide();

pindah.ShowDialog(); }

void EnkripToolStripMenuItemClick(object sender, EventArgs e) {

enkrip pindah = new enkrip(); this.Hide();

pindah.ShowDialog(); }

void DekripToolStripMenuItemClick(object sender, EventArgs e) {

dekrip pindah = new dekrip(); this.Hide();

(11)

}

void Button1Click(object sender, EventArgs e) {

try {

OpenFileDialog open = new OpenFileDialog(); open.Filter = "Image Files( *.bmp)|*.bmp"; if (open.ShowDialog() == DialogResult.OK) {

Bitmap bit = new Bitmap(open.FileName); if (bit.Height <= 600 && bit.Width <= 600) {

pictureBox1.Image = bit; }

else

MessageBox.Show("Image Pixel must be 300x300 px", "Warning");

} }

catch (Exception) {

throw new ApplicationException("Failed loading image");

} }

void PictureBox1Click(object sender, EventArgs e) {

}

void Button2Click(object sender, EventArgs e) {

Blowfish algo = new Blowfish(textBox1.Text); Bitmap image = new Bitmap(pictureBox1.Image); int isi = 0;

(12)

string greenasli=""; string blueasli=""; for (int i = 0; i < yi; i++) {

for (int j = 0; j < xi; j++) {

if(((char)image.GetPixel(j,i).R)!='\0') {

redasli = redasli + (char)image.GetPixel(j,i).R; greenasli = greenasli + (char)image.GetPixel(j,i).G;

blueasli = blueasli + (char)image.GetPixel(j,i).B; }

} }

string redenkrip = algo.decryptString(redasli); string greenenkrip = algo.decryptString(greenasli); string blueenkrip = algo.decryptString(blueasli); int ukurenkrip

= (int)Math.Ceiling((double)Math.Sqrt(redenkrip.Length)); Bitmap imagehasil = new Bitmap(ukurenkrip,ukurenkrip); double redf,greenf,bluef;

try {

for (int i = 0; i < ukurenkrip; i++) {

for (int j = 0; j < ukurenkrip; j++) {

if(isi>redenkrip.Length-1) break;

redf = (double)redenkrip[isi]; greenf = (double)greenenkrip[isi]; bluef = (double)blueenkrip[isi];

imagehasil.SetPixel(j,i,Color.FromArgb(255,(int)redf,(int)gr eenf,(int)bluef));

redf=0;greenf=0;bluef=0;isi++; }

}

pictureBox2.Image = imagehasil; } catch (Exception) {

(13)

}

//richTextBox4.Text = redenkrip.Length.ToString();

//richTextBox5.Text = greenenkrip.Length.ToString();

//richTextBox6.Text = ukurenkrip.ToString();

MessageBox.Show("siap");

}

void Button3Click(object sender, EventArgs e) {

if ( pictureBox2.Image !=null) {

SaveFileDialog simpan = new SaveFileDialog(); simpan.Filter = "Image Files | *.bmp";

simpan.FileName = "*.bmp";

if (simpan.ShowDialog() == DialogResult.OK) {

pictureBox2.Image.Save(simpan.FileName, System.Drawing. Imaging.ImageFormat.Bmp);

MessageBox.Show("Citra hasil telah

disimpan", "simpan", MessageBoxButtons.OK, MessageBoxIcon.Informat ion);

} } else {

MessageBox.Show("Citra hasill belum ada"); }

(14)

4. Form About

/*

* Created by SharpDevelop. * User: Excited

* Date: 2/17/2016 * Time: 7:56 PM *

* To change this template use Tools | Options | Coding | Edit Standard Headers.

*/

using System;

using System.Drawing;

using System.Windows.Forms;

namespace enkrip {

///<summary>

/// Description of about.

///</summary>

public partial class about : Form {

public about() {

//

// The InitializeComponent() call is required for Windows Forms designer support.

//

InitializeComponent();

//

// TODO: Add constructor code after the InitializeComponent() call.

//

}

void ExitToolStripMenuItemClick(object sender, EventArgs e) {

Application.Exit(); }

(15)

void HomeToolStripMenuItemClick(object sender, EventArgs e) {

MainForm pindah = new MainForm(); this.Hide();

pindah.ShowDialog(); }

void AboutToolStripMenuItemClick(object sender, EventArgs e) {

about pindah = new about(); this.Hide();

pindah.ShowDialog(); }

void EnkripToolStripMenuItemClick(object sender, EventArgs e) {

enkrip pindah = new enkrip(); this.Hide();

pindah.ShowDialog(); }

void DekripToolStripMenuItemClick(object sender, EventArgs e) {

dekrip pindah = new dekrip(); this.Hide();

pindah.ShowDialog(); }

void PictureBox2Click(object sender, EventArgs e) {

Referensi

Dokumen terkait

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA.. MEDAN

Hasil dari penelitian ini menunjukkan bahwa waktu pemrosesan enkripsi dan dekripsi dari kombinasi algoritma XOR dan algoritma RC4 lebih efisien dibandingkan

Penelitian tentang kombinasi kriptografi klasik dan kriptografi modern untuk keamanan pengiriman pesan telah dilakukan sebelumnya oleh Hari Rahman Nihe pada tahun 2015

RC4 termasuk ke dalam kode aliran ( strea m cipher ) dengan kunci rahasia/kunci simetri (kunci yang sama digunakan untuk proses enkripsi dan dekripsi).. Seperti halnya

import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import android.app.Activity;

Untuk beberapa weak key (weak key merupakan kunci yang tidak baik yang jika digunakan dalam proses enkripsi akan mengakibatkan hasil enkripsi dengan tingkat keamanan yang

Aplikasi yang akan dibuat merupakan aplikasi sederhana yang hanya dapat melakukan enkripsi pada file teks, namun hal tersebut dianggap cukup untuk memberi contoh

Oleh karena itu, dalam penelitian ini akan coba dibuat sebuah aplikasi pengamanan data berupa dokumen, gambar, dan video dengan menggunakan metode algoritma