Stream, Reader, dan Writer 4

22.43 viia 0 Comments

Enkripsi

Enkripsi tidak bisa lepas dari kriptografi, ato bisa disebut enkripsi adalah bagian dari kriptografi. Kriptografi sendiri adalah :

Kriptografi (cryptography) merupakan ilmu dan seni untuk menjaga pesan
agar aman. (Cryptography is the art and science of keeping messages
secure. [45]) “Crypto” berarti “secret” (rahasia) dan “graphy” berarti
“writing” (tulisan) [3]. Para pelaku atau praktisi kriptografi disebut
cryptographers. Sebuah algoritma kriptografik (cryptographic algorithm),
disebut cipher, merupakan persamaan matematik yang digunakan untuk
proses enkripsi dan dekripsi. (Budi Raharjo, Keamanan Sistem Informasi Berbasis Internet)

Sedangkan enkripsi adalah :

Enkripsi (encryption) yang merupakan bagian dari seni kriptografi, adalah proses yang dilakukan untuk mengamankan sebuah pesan (plaintext) menjadi pesan yang tersembunyi (ciphertext). Plaintext adalah pesan yang belum dienkripsi, sedangkan ciphertext adalah pesan setelah dienkripsi yang sudah tidak dapat dibaca dengan mudah. Sedangkan proses sebaliknya, untuk mengubah ciphertext menjadi plaintext atau proses untuk menterjemahkan pesan yang sudah dienkripsi kedalam bentuk pesan aslinya disebut dekripsi (decryption).

Intinya dengan di enkripsi pesan yang kita sampaikan kepada orang lain tidak bisa dibaca oleh orang yang tidak berhak. Seperti kalo dulu neh (sblm ada SMS) surat cinta gt.. :D , siapa yang mau surat cintanya dibaca orang lain,makanya pake ekripsi donk donk hehehe…Nah Enkripsi tersebut merupakan bagian dari Kriptografi.

Ini dia program ato aplikasi enkripsi yang aku buat eehh…aku edit :D . Tak kasih screenshotnya

Misal kata yg mau disampaikan ke target…”JADI PACAR KU DONK” (arrrgh…jadul bgt ga romantis :D ), nah kan malu tuh kalo kebaca temen keliatan ga ada sisi romantisnya hehe.. nah kalo di enkripsi dengan pergeseran 20 ato A=U huruf urutan abjadnya kyk gini :

ABCDEFGHIJKLMNOPQRSTUVWXYZ

UVWXYZABCDEFGHIJKLMNOPQRST

Jadinya :

Nah tu DUXC..bla..bla..bla susah kan bacanya, untuk membcanya si ‘target’ harus punya aplikasi ini juga, sesuaikan di pergeseran hurufnya kemudian klik |Dekripsi|. Akhirnya si ‘target’ tau juga isi hati ku :D

pengen buat..neh tak kasih sourcenya pake Visual Basic kok gampang :D :

Private Sub cmdDecrypt_Click()
Var = Text1.Text
Text2 = “”
If Var < 26 Then
N = Len(Trim(Text3))
For i = 1 To N
Cipher = Mid(Text3, i, 1)
Plain = Chr(Asc(Cipher) + 26 - Var)
If Asc(Plain) > 90 Then
Text2.SelText = Chr(64 + (Asc(Plain) - 90))
Else
Text2.SelText = Plain
End If
Next
Else
MsgBox “Masukan angka 1 s/d 25″, vbOKOnly + vbInformation, “Peringatan”
Text1 = “”
End If
End Sub

Private Sub cmdEncrypt_Click()
Var = Text1.Text
Text2 = “”
If Var < 26 Then
N = Len(Trim(Text3))
For i = 1 To N
Cipher = Mid(Text3, i, 1)
Plain = Chr(Asc(Cipher) + Var)
If Asc(Plain) > 90 Then
Text2.SelText = Chr(64 + (Asc(Plain) - 90))
Else
Text2.SelText = Plain
End If
Next
Else
MsgBox “Masukan angka 1 s/d 25″, vbOKOnly + vbInformation, “Peringatan”
Text1 = “”
End If
End Sub

Private Sub Command1_Click()
If MsgBox(” Anda yakin mau keluar dari program ini?”, vbYesNo + vbInformation, “Peringatan”) = vbYes Then
If MsgBox(” Thankyou”, vbOKOnly, “Say…) = vbOK Then
Unload Me
End If
End If
End Sub

Private Sub Command3_Click()
Text3 = “”: Text2 = “”
End Sub

Private Sub Text3_KeyPress(KeyAscii As Integer)
Text3.SetFocus
If KeyAscii = 8 Then Exit Sub
KeyAscii = Asc(UCase(Chr(KeyAscii)))
If Not (KeyAscii >= 65 And KeyAscii <= 90) Then
KeyAscii = 0
End If
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 8 Then Exit Sub
KeyAscii = Asc(UCase(Chr(KeyAscii)))
If Not (KeyAscii >= 47 And KeyAscii <= 57) Then
KeyAscii = 0
End If
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = 8 Then Exit Sub
KeyAscii = Asc(UCase(Chr(KeyAscii)))
If Not (KeyAscii >= 65 And KeyAscii <= 90) Then
KeyAscii = 0
End If
End Sub

Sedikit penjelasan

Proses enkripsi dijalankan dengan memanfaatkan kode ASCII. Setiap karakter yang dapat diketikan melalui keyboard selalu memiliki kode ASCII berupa angka-angka (data numerik) yang terurut. Misalnya kode ASCII dari karakter “A” adalah 65, “B” adalah 66 dan seterusnya. Jadi untuk merubah/menggeser karakter “A” menjadi “D” yaitu geser 3 atau sesuai dengan Variabel Var pada Text1 yang telah diinputkan. Dalam ASCII A=65 maka 65+3 = 68, 68 merupakan huruf D. Fungsi Chr() digunakan untuk mengkonversi data angka menjadi karakter sesuai dengan tabel ASCII, sedangkan Fungsi Asc() digunakan sebaliknya, untuk mengkonversi data karakter menjadi data numerik sesuai dengan kode ASCII. Script yang digunakan seperti di bawah ini :

Private Sub cmdEncrypt_Click()
Var = Text1.Text
Text2 = “”
If Var < 26 Then
N = Len(Trim(Text3))
For i = 1 To N
Cipher = Mid(Text3, i, 1)
Plain = Chr(Asc(Cipher) + Var)
If Asc(Plain) > 90 Then
Text2.SelText = Chr(64 + (Asc(Plain) - 90))
Else
Text2.SelText = Plain
End If
Next
Else
MsgBox “Masukan angka 1 s/d 25″, vbOKOnly + vbInformation, “Peringatan”
Text1 = “”
End If
End Sub

Proses dekripsi hampir sama dengan ekripsi, hanya saja di sini dekripsi merupakan proses pembalikan dari enkripsi,yaitu jika semula di tambah 3 maka sekarang di kurangi 3 atau sesuai dengan Variabel Var. Jadi untuk merubah/menggeser karakter “D” menjadi “A” yaitu geser 3. Dalam ASCII D = 68 dan A = 65. Dalam source digunakan script Plain = Chr(Asc(Cipher) + 26 - Var) karena pada saat D (ASCII=68) di tambah 26 maka akan melewati batas yang telah ditentukan yaitu 90 sehingga akan kembali ke 68 atau D. Seuai dengan range huruf dalam ASCII adalah antara A=65 dan Z=90 . Misal D = 68 ditambah 26 nilainya 94, karena batas sudah ditentukan yaitu 90, maka nilai tersebut akan kembali ke 68. Selanjutya nilai dikurangi dengan nilai pada Variabel Var misalnya 3 maka nilainya akan menjadi 65 (68-3) atau A. Scriptnya adalah sebagai berikut

Private Sub cmdDecrypt_Click()
Var = Text1.Text
Text2 = “”
If Var < 26 Then
N = Len(Trim(Text3))
For i = 1 To N
Cipher = Mid(Text3, i, 1)
Plain = Chr(Asc(Cipher) + 26 - Var)
If Asc(Plain) > 90 Then
Text2.SelText = Chr(64 + (Asc(Plain) - 90))
Else
Text2.SelText = Plain
End If
Next
Else
MsgBox “Masukan angka 1 s/d 25″, vbOKOnly + vbInformation, “Peringatan”
Text1 = “”
End If
End Sub

Agar teks yang di ketikan pada Text2 dan Text3 tidak menyimpang maka di gunakan script di bawah ini untuk membatasi pengetikan huruf saja. Yaitu dengan menggunakan kode ASCII A=65 dan Z =90, kalo pada Text1 yaitu pada text area untuk mengetikan pergeseran huruf maka batasanya pada diganti If Not (KeyAscii >= 48 And KeyAscii <= 57), dalam ASCII 48=0 dan 57 =9, karena yang akan di ketikan hanya angka,Script :

Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = 8 Then Exit Sub
KeyAscii = Asc(UCase(Chr(KeyAscii)))
If Not (KeyAscii >= 65 And KeyAscii <= 90) Then
KeyAscii = 0
End If
End Sub

Nah sekian dulu ya…semoga bermanfaat

reference :

http://helmishare.blogspot.com

http://chuz.comze.com/?p=89

0 komentar: