Sabtu, 18 Januari 2014

Pemrograman Kriptografi





Form Menu
Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-rFxqyW2RfN8aAexDMB1kvC3H_F-pTId1ibYAj1sH-ScdarEs-C3jXSIYIIS-Id__-Nl6kyn62mRsq9FmZJo237BJyPSB1uRFFQqzHT6G7Lph7ePIg-1X-28ypb6myxEBatvIObPQmR8z/s1600/Menu.jpg


Public Class Menu

    Private Sub ClloseToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ClloseToolStripMenuItem.Click
        End
    End Sub

    Private Sub KriptografiCaesarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KriptografiCaesarToolStripMenuItem.Click
        Kriptografi_Caesar.Show()
    End Sub

    Private Sub KriptografiVernamToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KriptografiVernamToolStripMenuItem.Click
        Kriptografi_Vernam_Chiper.Show()
    End Sub

    Private Sub KriptografiGronsfeldToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KriptografiGronsfeldToolStripMenuItem.Click
        Kriptografi_Gronsfeld.Show()
    End Sub

    Private Sub KriptografiViginereToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KriptografiViginereToolStripMenuItem.Click
        Kriptografi_Viginere.Show()
    End Sub
End Class

Form Kriptografi Caesar
Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7dIcxNFv7ayr5J2SE6BCWqetVK8zEBvMprFdvLctEWDY15Q2ZbUE6tA8BUOXzazXNumQdMCW_MC6vtf9uDKE6X1si6_RpV72jRiDFIRyaK3eWQn85o4Kh8N6aApsNbM_2LpK4F3gWEt7w/s1600/Caesar.jpg



Public Class Kriptografi_Caesar

    Private Sub btnenkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnenkripsi.Click
        Dim x As String = ""
        Dim xkalimat As String = ""
        For i = 1 To Len(plainteks.Text)
            x = Mid(plainteks.Text, i, i)
            x = Chr(Asc(x) + 3)
            xkalimat = xkalimat + x
        Next
        Chiperteks.Text = xkalimat
    End Sub

    Private Sub btndekripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btndekripsi.Click
        Dim x As String = ""
        Dim xkalimat As String = ""
        For i = 1 To Len(plainteks.Text)
            x = Mid(plainteks.Text, i, i)
            x = Chr(Asc(x) - 3)
            xkalimat = xkalimat + x
        Next
        Chiperteks.Text = xkalimat
    End Sub

    Private Sub Kriptografi_Caesar_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub
End Class


Form Kriptografi Vernam
Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqt8p3aN4xmleB-nWY-pIx7Oe_HUjlXJPdMGBO-C2Q7e2-3jSzqtIXanBUNwXBMKIxti1vrZxKsFyoPXt6ccZpf-tDhwIo9Bf523r432BfTR5keunotrtUZnnus1I29oOenjzepJANvb2w/s1600/Vernam.png
Public Class Kriptografi_Vernam_Chiper

    Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        plainteks.Text = ""
        kunci.Text = ""
        chiperteks.Text = ""
    End Sub

    Private Sub btnenkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnenkripsi.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 = plainteks.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
        chiperteks.Text = sPlain
    End Sub

    Private Sub plainteks_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles plainteks.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 plainteks_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles plainteks.TextChanged

    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 kunci_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles kunci.TextChanged

    End Sub
End Class

Form Kriptografi Gronsfeld
Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMIsfqd8ZDbVrCaj8AQUJ4IJqb9rqX4WoqlfEvBhlUaUS4OpTuVPw1qEAPfQdRfPReZDXxOamM0TFEkC4Cb8plxTtRIDiYbPMi1yboehjLYiOHpEj8OpZA7o7y7QklDMsdsZ3guB_DIxPF/s1600/Gronsfeld.jpg


Public Class Kriptografi_Gronsfeld

    Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        plainteks.Text = ""
        kunci.Text = ""
        chiperteks.Text = ""

    End Sub

    Private Sub plainteks_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles plainteks.KeyPress
        If ((e.KeyChar >= "0" And e.KeyChar <= "9") And e.KeyChar <> vbBack) Then e.Handled = True
    End Sub

    Private Sub kunci_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles kunci.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled = True
    End Sub

    Private Sub Btnenkripsi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btnenkripsi.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 = plainteks.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)) - 48

            nEnc = ((nKata + nKunci) Mod 26)
            sPlain = sPlain & Chr((nEnc) + 65)
        Next i
        chiperteks.Text = sPlain
    End Sub
End Class


Form Kriptografi Viginere
Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAK5F97K6nHEvdK_Dyg-MX9Sszih4BdtOY5FCxtSP_fR5iWhIi6zPTywIVyFNp13qTYEyU8K8AsYQ4JewwATMmREwT-IzP7MF0y129ovU5_Tqcp3HZJKzN1U6RiAYwYYrK_m4oUlLHrRVh/s1600/Vernam.jpg


Public Class Kriptografi_Viginere

    Private Sub btnProses_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnProses.Click
        Chipertext.Text = Enkripsi(Plaintext.Text, Kunci.Text)
    End Sub

    Function Enkripsi(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
        Enkripsi = sPlain
    End Function

    Private Sub Kriptografi_Viginere_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub
End Class

Hasil Printout
Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0La5gvFuYmtjRJuk_ZbQDVDdmJlgMRwJQjuzKV2sWTo8YbAR_Da2xi2it9upakTTfd6JtbKbkyLmQw3TUZOHx5Rw_jTXU6msG8KkWmxbiy4XspzWS_wStjot5QlnQ6fjIXhWr6X-g00ch/s1600/hasil.png

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirGiP-lb2IKysSuhXc8i0GgD4zzF7An8T3SCMSxs5b3nXJaweIidaGFJNCwkOaDrAOqgce3gXlcfbN3Plm7E9A7CMHlmmDpTl4Ed_zz234tCuGf3UT4M24lT1CzUWN-4Q8Jtm4l4mB0_hl/s1600/hasil2.png

1 komentar:

  1. http://suhendrik03.blogspot.com/2014/01/pemrograman-kriptografi_18.html

    BalasHapus