Dah lama tidak posting
saya..Kangen juga mau posting ..
ok ,langsung saja ke pokok
permasalahan tentang cara membuat kriptografi dengan vb 2008.
tentunya kita sudah pasti ada
software vb 2008 sebelum membahas ini..
dibawah ini contoh coding beserta
gambarnya:
Tampilan Utamanya seperti ini:
Dan codingnya seperti ini:
Public Class Form1
Private Sub CaesarChiperToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CaesarChiperToolStripMenuItem.Click
Caesar.Show()
End Sub
Private Sub VernamChiper_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VernamChiper.Click
Vernam.Show()
End Sub
Private Sub VigenereChiper_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VigenereChiper.Click
Vigenere.Show()
End Sub
Private Sub DesChiper_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DesChiperr.Click
DesChiper.Show()
End Sub
Private Sub GronsfeldChiper_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GronsfeldChiper.Click
gronsfeld.Show()
End Sub
Private Sub KeluarToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KeluarToolStripMenuItem1.Click
Dim i As MsgBoxResult
i = MsgBox("Apa anda ingin keluar?", MsgBoxStyle.Information + MsgBoxStyle.YesNo, "Perhatian")
If i = MsgBoxResult.Yes Then
Close()
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub KeluarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KeluarToolStripMenuItem.Click
RC4.Show()
End Sub
End Class
Coding Untuk gronsfeld:
Public Class gronsfeld
Private Sub deskripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles deskripsi.Click
Dim x As String = ""
Dim xkalimat As String = ""
For i = 1 To Len(chipertext.Text)
x = Mid(chipertext.Text, i, i)
x = Chr(Asc(x) - 3)
xkalimat = xkalimat + x
Next
plaintext.Text = xkalimat
End Sub
Private Sub gronsfeld_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
End Class
Private Sub deskripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles deskripsi.Click
Dim x As String = ""
Dim xkalimat As String = ""
For i = 1 To Len(chipertext.Text)
x = Mid(chipertext.Text, i, i)
x = Chr(Asc(x) - 3)
xkalimat = xkalimat + x
Next
plaintext.Text = xkalimat
End Sub
Private Sub gronsfeld_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
End Class
Coding untuk Caesar cip:
Public Class Caesar
Private Sub Caesar_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub enkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles enkripsi.Click
Dim jumlah As Double = Len(plaintext.Text)
Dim x As String
Dim xkalimat As String = ""
Dim i As Double
Dim bil As Integer
For i = 1 To jumlah
x = Mid(plaintext.Text, i, 1)
bil = Asc(x) + 3
x = Chr(bil)
xkalimat = xkalimat + x
Next i
chipertext.Text = xkalimat
End Sub
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
End
End Sub
End Class
Private Sub Caesar_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub enkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles enkripsi.Click
Dim jumlah As Double = Len(plaintext.Text)
Dim x As String
Dim xkalimat As String = ""
Dim i As Double
Dim bil As Integer
For i = 1 To jumlah
x = Mid(plaintext.Text, i, 1)
bil = Asc(x) + 3
x = Chr(bil)
xkalimat = xkalimat + x
Next i
chipertext.Text = xkalimat
End Sub
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
End
End Sub
End Class
Coding untuk Vigenere
Public Class Vigenere
Private Sub enkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles enkripsi.Click
chipertext.Text = Eenkripsi(plaintext.Text, kunci.Text)
End Sub
Function Eenkripsi(ByVal Teks As String, ByVal Kunci As String) As String
Dim j As Integer
Dim jum As Integer
Dim sKey As String
Dim nKata As Integer
Dim nKunci As Integer
Dim sKata As String
Dim sPlain As String
Dim nEnc As Integer
j = 0
jum = Len(Teks)
sPlain = ""
sKey = Kunci
sKata = Teks
For i = 1 To jum
If j = Len(sKey) Then
j = 1
Else
j = j + 1
End If
nKata = Asc(Mid(sKata, i, 1))
nKunci = Asc(Mid(sKey, j, 1))
nEnc = ((nKata + nKunci) Mod 256)
sPlain = sPlain & Chr((nEnc))
Next i
Eenkripsi = sPlain
End Function
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
End Class
Private Sub enkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles enkripsi.Click
chipertext.Text = Eenkripsi(plaintext.Text, kunci.Text)
End Sub
Function Eenkripsi(ByVal Teks As String, ByVal Kunci As String) As String
Dim j As Integer
Dim jum As Integer
Dim sKey As String
Dim nKata As Integer
Dim nKunci As Integer
Dim sKata As String
Dim sPlain As String
Dim nEnc As Integer
j = 0
jum = Len(Teks)
sPlain = ""
sKey = Kunci
sKata = Teks
For i = 1 To jum
If j = Len(sKey) Then
j = 1
Else
j = j + 1
End If
nKata = Asc(Mid(sKata, i, 1))
nKunci = Asc(Mid(sKey, j, 1))
nEnc = ((nKata + nKunci) Mod 256)
sPlain = sPlain & Chr((nEnc))
Next i
Eenkripsi = sPlain
End Function
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
End Class
Coding Untuk Vernam:
Public Class Vernam
Private Sub Vernam_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Sub enkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles enkripsi.Click
Dim j As Integer
Dim jum As Integer
Dim sKey As String
Dim nKata As Integer
Dim nKunci As Integer
Dim sKata As String
Dim sPlain As String = ""
Dim nEnc As Integer
j = 0
sKata = plaintext.Text
jum = Len(sKata)
sKey = kunci.Text
For i = 1 To jum
If j = Len(sKey) Then
j = 1
Else
j = j + 1
End If
nKata = Asc(Mid(sKata, i, 1)) - 65
nKunci = Asc(Mid(sKey, j, 1)) - 65
nEnc = ((nKata + nKunci) Mod 26)
sPlain = sPlain & Chr((nEnc) + 65)
Next i
chipertext.Text = sPlain
End Sub
Private Sub kunci_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles kunci.KeyPress
e.KeyChar = UCase(e.KeyChar)
Dim tombol As Integer = Asc(e.KeyChar)
If Not (((tombol >= 65) And (tombol <= 90)) Or (tombol = 8)) Then
e.Handled = True
End If
End Sub
Private Sub plaintext_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles plaintext.KeyPress
e.KeyChar = UCase(e.KeyChar)
Dim tombol As Integer = Asc(e.KeyChar)
If Not (((tombol >= 65) And (tombol <= 90)) Or (tombol = 8)) Then
e.Handled = True
End If
End Sub
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
End Class
Private Sub Vernam_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Sub enkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles enkripsi.Click
Dim j As Integer
Dim jum As Integer
Dim sKey As String
Dim nKata As Integer
Dim nKunci As Integer
Dim sKata As String
Dim sPlain As String = ""
Dim nEnc As Integer
j = 0
sKata = plaintext.Text
jum = Len(sKata)
sKey = kunci.Text
For i = 1 To jum
If j = Len(sKey) Then
j = 1
Else
j = j + 1
End If
nKata = Asc(Mid(sKata, i, 1)) - 65
nKunci = Asc(Mid(sKey, j, 1)) - 65
nEnc = ((nKata + nKunci) Mod 26)
sPlain = sPlain & Chr((nEnc) + 65)
Next i
chipertext.Text = sPlain
End Sub
Private Sub kunci_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles kunci.KeyPress
e.KeyChar = UCase(e.KeyChar)
Dim tombol As Integer = Asc(e.KeyChar)
If Not (((tombol >= 65) And (tombol <= 90)) Or (tombol = 8)) Then
e.Handled = True
End If
End Sub
Private Sub plaintext_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles plaintext.KeyPress
e.KeyChar = UCase(e.KeyChar)
Dim tombol As Integer = Asc(e.KeyChar)
If Not (((tombol >= 65) And (tombol <= 90)) Or (tombol = 8)) Then
e.Handled = True
End If
End Sub
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
End Class
Coding Untuk RC4:
Public Class RC4
Private Sub RC4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Function AutokeyEncipher(ByVal strPlaintext As String, ByRef strKey As String) As String
Dim i As Long
Dim j As Long
Dim c1 As Integer
Dim strPlaintext2 As String
Dim strKey2 As String
Dim strCiphertext As String
Dim strCiphertext2 As String
Dim diffKeyLen As Integer
Dim pAlphabet As Integer
Dim cAlphabet As Integer
Dim nShift As Integer
'1. Hilangkan semua karakter yang bukan alfabet dari strPlaintext
' dan simpan sebagai strPlaintext2
strPlaintext2 = ""
For i = 1 To strPlaintext.Length
c1 = Asc(Mid(strPlaintext, i, 1))
If (c1 >= 65 And c1 <= 90) Then
strPlaintext2 = strPlaintext2 & Chr(c1)
End If
Next i
'2. Hilangkan semua karakter yang bukan alfabet dari strKey
' dan simpan sebagai strKey2
strKey2 = ""
For i = 1 To strKey.Length
c1 = Asc(Mid(strKey, i, 1))
If (c1 >= 65 And c1 <= 90) Then
strKey2 = strKey2 & Chr(c1)
End If
Next i
'3. Susun kunci baru strKey2 berdasarkan kunci awal strKey kemudian
' ditambah plaintext
'perbedaan antara panjang plaintext dan kunci
diffKeyLen = strPlaintext2.Length - strKey2.Length
For i = 1 To diffKeyLen
'c1 = Asc(Mid(strPlaintext2, i, 1))
strKey2 = strKey2 & Mid(strPlaintext2, i, 1)
Next i
'4. Geser masing-masing huruf pada plaintext
' dengan huruf yang terkait pada key
strCiphertext = ""
For i = 1 To strPlaintext2.Length
c1 = Asc(Mid$(strPlaintext2, i, 1))
nShift = Asc(Mid$(strKey2, i, 1)) - 65
If ((c1 >= 65) And (c1 <= 90)) Then
pAlphabet = c1 - 65 ' get the alphabet sequence
cAlphabet = (pAlphabet + nShift) Mod 26 ' shifted alphabet
c1 = cAlphabet + 65 ' get character in 65 ... 90
End If
strCiphertext = strCiphertext & Chr(c1)
Next i
'5. Susun strCiphertext sesuai dengan urutan strPlaintext
strCiphertext2 = ""
strKey = ""
j = 1
For i = 1 To strPlaintext.Length
c1 = Asc(Mid$(strPlaintext, i, 1))
If ((c1 >= 65) And (c1 <= 90)) Then
strCiphertext2 = strCiphertext2 & Mid(strCiphertext, j, 1)
strKey = strKey & Mid(strKey2, j, 1)
j = j + 1
Else
strCiphertext2 = strCiphertext2 & Chr(c1)
strKey = strKey & " "
End If
Next i
Return strCiphertext2
End Function
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
Private Sub enkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles enkripsi.Click
chipertext.Text = AutokeyEncipher(plaintext.Text, kunci.Text)
End Sub
Private Sub deskripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles deskripsi.Click
End Sub
End Class
Private Sub RC4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Function AutokeyEncipher(ByVal strPlaintext As String, ByRef strKey As String) As String
Dim i As Long
Dim j As Long
Dim c1 As Integer
Dim strPlaintext2 As String
Dim strKey2 As String
Dim strCiphertext As String
Dim strCiphertext2 As String
Dim diffKeyLen As Integer
Dim pAlphabet As Integer
Dim cAlphabet As Integer
Dim nShift As Integer
'1. Hilangkan semua karakter yang bukan alfabet dari strPlaintext
' dan simpan sebagai strPlaintext2
strPlaintext2 = ""
For i = 1 To strPlaintext.Length
c1 = Asc(Mid(strPlaintext, i, 1))
If (c1 >= 65 And c1 <= 90) Then
strPlaintext2 = strPlaintext2 & Chr(c1)
End If
Next i
'2. Hilangkan semua karakter yang bukan alfabet dari strKey
' dan simpan sebagai strKey2
strKey2 = ""
For i = 1 To strKey.Length
c1 = Asc(Mid(strKey, i, 1))
If (c1 >= 65 And c1 <= 90) Then
strKey2 = strKey2 & Chr(c1)
End If
Next i
'3. Susun kunci baru strKey2 berdasarkan kunci awal strKey kemudian
' ditambah plaintext
'perbedaan antara panjang plaintext dan kunci
diffKeyLen = strPlaintext2.Length - strKey2.Length
For i = 1 To diffKeyLen
'c1 = Asc(Mid(strPlaintext2, i, 1))
strKey2 = strKey2 & Mid(strPlaintext2, i, 1)
Next i
'4. Geser masing-masing huruf pada plaintext
' dengan huruf yang terkait pada key
strCiphertext = ""
For i = 1 To strPlaintext2.Length
c1 = Asc(Mid$(strPlaintext2, i, 1))
nShift = Asc(Mid$(strKey2, i, 1)) - 65
If ((c1 >= 65) And (c1 <= 90)) Then
pAlphabet = c1 - 65 ' get the alphabet sequence
cAlphabet = (pAlphabet + nShift) Mod 26 ' shifted alphabet
c1 = cAlphabet + 65 ' get character in 65 ... 90
End If
strCiphertext = strCiphertext & Chr(c1)
Next i
'5. Susun strCiphertext sesuai dengan urutan strPlaintext
strCiphertext2 = ""
strKey = ""
j = 1
For i = 1 To strPlaintext.Length
c1 = Asc(Mid$(strPlaintext, i, 1))
If ((c1 >= 65) And (c1 <= 90)) Then
strCiphertext2 = strCiphertext2 & Mid(strCiphertext, j, 1)
strKey = strKey & Mid(strKey2, j, 1)
j = j + 1
Else
strCiphertext2 = strCiphertext2 & Chr(c1)
strKey = strKey & " "
End If
Next i
Return strCiphertext2
End Function
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
kunci.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
Private Sub enkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles enkripsi.Click
chipertext.Text = AutokeyEncipher(plaintext.Text, kunci.Text)
End Sub
Private Sub deskripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles deskripsi.Click
End Sub
End Class
Coding Untuk DesChiper:
Public Class DesChiper
Private Sub DesChiper_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub deskripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles deskripsi.Click
Dim x As String = ""
Dim xkalimat As String = ""
For i = 1 To Len(chipertext.Text)
x = Mid(chipertext.Text, i, i)
x = Chr(Asc(x) - 3)
xkalimat = xkalimat + x
Next
plaintext.Text = xkalimat
End Sub
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
End Class
Private Sub DesChiper_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub deskripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles deskripsi.Click
Dim x As String = ""
Dim xkalimat As String = ""
For i = 1 To Len(chipertext.Text)
x = Mid(chipertext.Text, i, i)
x = Chr(Asc(x) - 3)
xkalimat = xkalimat + x
Next
plaintext.Text = xkalimat
End Sub
Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
plaintext.Text = ""
chipertext.Text = ""
End Sub
Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
Me.Close()
End Sub
End Class
Tidak ada komentar:
Posting Komentar