• Tidak ada hasil yang ditemukan

LISTING PROGRAM. System.IO.File.WriteAllText(direktoriawal + "/Pengirim/" + filename,

N/A
N/A
Protected

Academic year: 2021

Membagikan "LISTING PROGRAM. System.IO.File.WriteAllText(direktoriawal + "/Pengirim/" + filename,"

Copied!
11
0
0

Teks penuh

(1)

LISTING PROGRAM

Kode Program Class Enkrip

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Numerics; using System.IO; namespace test1 { class enkrip {

public int[] cipher(int p, int ea, int[] arrayint) {

BigInteger e = 0;

//stringtochar arrchar = new stringtochar();

//char[] arraychar = arrchar.arrasci(text);

//int[] arrayint = new int[arraychar.Length];

int key = ea; int prime = p;

for (int i = 0; i <= arrayint.Length - 1; i++) {

// arrayint[i] = (int)arraychar[i];

e = BigInteger.ModPow(arrayint[i], key, prime); arrayint[i] = (int)e;

}

return arrayint; }

public void buatfiletextpengirim(string text, string filename) {

string direktoriawal = Directory.GetCurrentDirectory(); if (!Directory.Exists(direktoriawal + "/Pengirim")) {

Directory.CreateDirectory(direktoriawal + "/Pengirim"); }

System.IO.File.WriteAllText(direktoriawal + "/Pengirim/" + filename, text);

}

public void buatfiletextpenerima(string text, string filename) {

string direktoriawal = Directory.GetCurrentDirectory(); if (!Directory.Exists(direktoriawal + "/Penerima")) {

Directory.CreateDirectory(direktoriawal + "/Penerima"); }

System.IO.File.WriteAllText(direktoriawal + "/Penerima/" + filename, text);

} } }

(2)

Kode Program Class Dekrip

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Numerics; namespace test1 { class dekrip {

public int[] plaintxt(int p, int[] enkripted, BigInteger da) {

BigInteger e = 0;

//enkrip ciphertext = new enkrip();

int[] arrayint = new int[enkripted.Length]; for (int i = 0; i <= enkripted.Length - 1; i++) {

arrayint[i] = (int)enkripted[i]; }

BigInteger key = da; int prime = p;

for (int i = 0; i <= arrayint.Length - 1; i++) {

e = BigInteger.ModPow(arrayint[i], key, prime); arrayint[i] = (int)e;

}

/*char[] hasildekrip = new char[arrayint.Length]; for (int j = 0; j <= arrayint.Length - 1; j++) {

hasildekrip[j] = (char)arrayint[j]; }

string result = string.Join("", hasildekrip);

System.IO.File.WriteAllText("C:/Users/Asus/Documents/Visual Studio 2012/Projects/test1/dekripted.txt", result);*/ return arrayint; } } }

Kode Program Class Embed

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Drawing; using System.Drawing.Imaging; namespace ConsoleApplication2 { class embed { int q = 0; int r = 0; int s = 0;

(3)

convertbiner binertext = new convertbiner();

public string replacebit(string a, int posisi, string b) {

var aStringBuilder = new StringBuilder(a); aStringBuilder.Remove(posisi-1, 1);

aStringBuilder.Insert(posisi-1, b); return aStringBuilder.ToString(); }

public int tanambiner(string binaryawal, char rgb, string text) {

string[] binertexta = binertext.splittext(text); //int c = 0;

int i; ulang:

for ( i = q; i < binertexta[r].Length; i++) { string g; string d = binertexta[r].Substring(i, 1); if (rgb == 'r') { g = replacebit(binaryawal, 8, d); q = q + 1; } else if (rgb == 'g') { g = replacebit(binaryawal, 7, d); q = q + 1; } else { g = replacebit(binaryawal, 6, d); q = q + 1; } // a2 = a+1; return Convert.ToInt32(g, 2); } // if ((rgb == 'g') || (rgb == 'b')) // { if (r == binertexta.Length-1) { return Convert.ToInt32(binaryawal, 2); } q = 0; r++; goto ulang; // } /* else { return Convert.ToInt32(binaryawal, 2); } */ }

public int ubahalpha(int alpha, string text) {

(4)

int t = s;

string[] binertexta = binertext.splittext(text); if (t <= binertexta.Length-1) { s = s + 1; return ((binertexta[t].Length * 10) + 104); } else { s = s + 1; return 255; } }

public int menambahintensitas(int x) { if (x < 128) { x = x + 128; } return x; }

public int mengurangiintensitas(int colorawal, int x) { if (colorawal < 128) { x = x - 128; } return x; }

public int buatgambar(Bitmap img, string text, string filehasil) {

string r, g, b;

int nr, ng, nb, R, G, B, A; int na = 0;

//Bitmap img = new Bitmap(@"C:\Users\Asus\Documents\Visual Studio 2012\Projects\ls test\a.bmp");

Bitmap gr = new Bitmap(img.Width, img.Height);

for (int y = 0; y < img.Height; y++) {

for (int x = 0; x < img.Width; x++) {

//a = 0;

Color pixel = img.GetPixel(x, y); R = img.GetPixel(x, y).R; G = img.GetPixel(x, y).G; B = img.GetPixel(x, y).B; A = img.GetPixel(x, y).A; r = binertext.inttobiner(menambahintensitas(R)); g = binertext.inttobiner(menambahintensitas(G)); b = binertext.inttobiner(menambahintensitas(B)); //int s = 100;

nr = mengurangiintensitas( R, tanambiner(r, 'r', text)); ng = mengurangiintensitas( G, tanambiner(g, 'g', text)); nb = mengurangiintensitas( B, tanambiner(b, 'b', text)); na = ubahalpha(A, text);

(5)

gr.SetPixel(x, y, Color.FromArgb(na, nr, ng, nb)); // using (Graphics gfx = Graphics.FromImage(bitmap)

//buat gambar } }

//img.DrawToImage(img, new Rectangle(0, 0, img.Width, img.Height));

//gr.Save("c:/temp/hasil.bmp", ImageFormat.Bmp); gr.Save(filehasil); return 0; } } }

Kode Program Class Ekstrak

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Drawing; namespace ConsoleApplication2 { class ekstrak {

//Bitmap img = new Bitmap(@"C:\Users\Asus\Documents\Visual Studio 2012\Projects\ls test\hasil.bmp");

convertbiner binertext = new convertbiner(); embed intensitas = new embed();

public string ambilbiner(string binary, char rgb) { string g; if (rgb == 'r') { g = binary.Substring(7, 1); return g; } else if (rgb == 'g') { g = binary.Substring(6, 1); return g; } else { g = binary.Substring(5, 1); return g; } }

(6)

public int ekstrakdata(Bitmap img, string filehasil) { int R, G, B, A; int a = 0; int i = 0; int j = 0; string r, g, b, fr, fg, fb; string q = ""; //int s = 0; //string stringa = "";

int[] stringa = new int[img.Height * img.Width]; for (int y = 0; y < img.Height; y++)

{

for (int x = 0; x < img.Width; x++) {

Color pixel = img.GetPixel(x, y); R = img.GetPixel(x, y).R; G = img.GetPixel(x, y).G; B = img.GetPixel(x, y).B; A = img.GetPixel(x, y).A; r = binertext.inttobiner(intensitas.menambahintensitas(R)); g = binertext.inttobiner(intensitas.menambahintensitas(G)); b = binertext.inttobiner(intensitas.menambahintensitas(B)); if ( A == 255) { stringa[i] = A; i++; } else { a = (A - 104) / 10; stringa[i] = a; i++; j++; } fr = ambilbiner(r, 'r'); fg = ambilbiner(g, 'g'); fb = ambilbiner(b, 'b'); //stringa[i] = a;

//stringa += string.Join("", a);

q += string.Join("", fr, fg, fb);

} }

// string[] stringb = stringa.Split(';');

int z; int v = 0;

int[] intrgb = new int[j];

for (int l = 0; l <= stringa.Length; l++) {

//z = Int32.Parse(stringb[i]);

z = stringa[l]; if (z == 255)

(7)

{ break; } intrgb[l] = Convert.ToInt32(q.Substring(v, z), 2); v += (z ); }

string result = string.Join(";", intrgb); // binary to int

// int to text file

System.IO.File.WriteAllText(filehasil, result); return 0; } } }

Kode Program Class Kripto

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Numerics; namespace test1 {

public class kripto {

public string gettext(string path) {

return System.IO.File.ReadAllText(path); }

public int random(int a) {

Random rand = new Random(); if (a < 256) { int p = rand.Next(256, 25000); return p; } else { int p = rand.Next(a, 25000); return p; } }

public int rand(int b) {

Random rand = new Random(); int p = rand.Next(2, b); return p;

}

public bool test(int p, int b, double m) { int a = rand(p); int j = 0; double z = Math.Pow(a, m) % p; if ((z == 1) || (z == p - 1)) {

(8)

ulang4: if ((j > 0) && (z == 1)) { return false; } j = j + 1; if ((j < b) && (z != p -1)) { z = Math.Pow(z, 2) % p; goto ulang4; } if (z == p -1) { if ((j == b) && (z != p - 1)) { return false; } return true; } return true; } return false; }

public int prima(int textlenght) { ganjil: int cek = 0; int p =random(textlenght); if (p % 2 == 0) { if (p == 25000) { p--; } else p++; } if ((p % 3 == 0) || (p % 5 == 0) || (p % 7 == 0) || (p % 11 == 0) || (p % 13 == 0) || (p % 17 == 0) || (p % 19 == 0)) { goto ganjil; } int b = 0; double m = 0; do { b++; m = (p - 1) / Math.Pow(2, b); } while (m % 2 == 0); do { if (test(p, b, m) == true) { cek++; }

else goto ganjil; } while (cek <= 2000);

(9)

//Console.WriteLine("m ="+m);

return p; }

public int kea(int p) { int b = p - 1; int c = 0; int a = 0; int eA = 0; do { eA = rand(b); a = GCD(b,eA, c); } while (a != 1); return eA; }

public BigInteger kda(int p, int eA) {

BigInteger p1 = p - 1, eA1 = eA; BigInteger a = p1, da = 0, b = 1; while (eA1 > 0)

{

BigInteger t = a / eA1, x = eA1; eA1 = a % x; a = x; x = b; b = da - t * x; da = x; } da %= p1; if (da < 0) da = (da + p1) % p1; return da; }

public int GCD(int b, int A, int c) { c = b % A; while (c != 0) { b = A; A = c; c = b % A; } return A; } } }

(10)

(SEPTIAN MAIHADI PUTRA LUBIS)

DATA PRIBADI

Nama Lengkap

: Septian Maihadi Putra Lubis

Nama Panggilan

: Septian

Tempat/Tanggal Lahir: Tebing Tinggi / 20 September 1991

Jenis Kelamin

: Pria

Agama

: Islam

Warga Negara

: Indonesia

Alamat

: Jl. Abdul Hakim Gang Mustika No. 1B, Medan

HP

: 081360145106

E-mail

: [email protected]

Status

: belum menikah

RIWAYAT PENDIDIKAN

Sekolah Menengah Atas

SMA Perguruan Nasional Ir. H Djuanda, Tebing Tinggi

2006-2009

Sekolah Menengah Pertama

SMA Perguruan Nasional Ir. H Djuanda, Tebing Tinggi

2003-2006

Sekolah Dasar

SMA Perguruan Nasional Ir. H Djuanda, Tebing Tinggi

1995-2003

Programming: C++, C#, Prolog

Database

: MySQL

IDE

: Visual Studio 2012

Software

: Ms. Office, RPG Maker Vx Ace,

KEMAMPUAN KOMPUTER

(11)

PENGALAMAN KERJA

No

Instansi/Lembaga

Jabatan/Posisi

Tahun

1

Program Studi S1 Ilmu

Komputer Fasilkom-TI USU

Asisten Laboratorium

2012-2014

SEMINAR

No.

Seminar

Tahun

1

Seminar Demo Software dan Diskusi Panel Integrasi Agent Based Model

(ABM) dan Geographic Information System (GIS)

2011

2

Seminar Nasional Creative Animation dan Gaming Industry

2013

Referensi

Dokumen terkait

Berdasarkan latar belakang tersebut di atas, penulis tertarik untuk melakukan penelitian pada masalah tersebut dengan mengambil judul : “ Pengaruh Pertumbuhan

Stabilitas penjualan yang meningkat tidak selalu diikuti dengan menurunnya struktur modal pada perusahaan industri dasar dan kimia di Bursa Efek Indonesia Periode

Menurut hasil pengamatan penulis, rendahnya kompetensi tersebut disebabkan oleh beberapa faktor, yaitu : (1) siswa kurang tertarik pada pelajaran IPS, (2) siswa

DAFTAR HARGA SATUAN PEKERJAAN SUMBER DATA : PASAR BEBAS. DAERAH :

Gerakan panning yakni kamera bergerang dari tengah ke kanan atau dari tengah ke kiri, bukan hanya kamera yang bergerak tetapi tripod yang terpasa pada kamera juga ikur

Memperhatikan ketika pengajar memberikan penjelasan Bersedia mengikuti dan mengerjakan tugas yang diberikan Menjawab pertanyaan dari Guru. Aktif Mengikuti diskusi Cat: √ Ya, -

Sementara perlakuan akuntansi dalam pencatatan dan penyusunan laporan keuangan sesuai dengan Standar Akuntansi Keuangan – Entitas Tanpa Akuntabilitas

Kepala BNN Kota Malang yang sekaligus alumni ITN Malang ini juga memberikan apresiasi kepada ITN karena pada tahun ini menyelenggarakan tes urine bagi seluruh mahasiswa