Thema Datum  Von Nutzer Rating
Antwort
13.05.2016 09:19:15 MIR
NotSolved
13.05.2016 09:23:58 Gast86139
NotSolved
Rot monoalphabetische Verschlüsselung
13.05.2016 09:41:39 SJ
*****
NotSolved
13.05.2016 10:32:00 Gast8111
NotSolved
13.05.2016 12:05:45 SJ
*****
NotSolved
17.05.2016 08:25:22 SJ
*****
NotSolved
17.05.2016 12:05:40 Gast32970
NotSolved

Ansicht des Beitrags:
Von:
SJ
Datum:
13.05.2016 09:41:39
Views:
1364
Rating: Antwort:
  Ja
Thema:
monoalphabetische Verschlüsselung

Hallo zusammen,

hier eine Möglichkeit mit je einer Subroutine zum ver- und entschlüsseln:

Option Explicit

Public Sub verschlüsseln()
    Dim strEingabe As String, strPW As String
    strEingabe = InputBox("Zu verschlüsselnder Text:", "Texteingabe")
    
    If strEingabe = vbNullString Then
        Exit Sub
    End If
    
    strPW = InputBox("Passwort:", "Passworteingabe")
    
    If strPW = vbNullString Then
        Exit Sub
    End If
    
    MsgBox "Der verschlüsselte Text lautet: " & vbCrLf & vbCrLf & _
        Crypt(strEingabe, strPW, True), vbInformation
End Sub

Public Sub entschlüsseln()
    Dim strEingabe As String, strPW As String
    strEingabe = InputBox("Zu entschlüsselnder Text:", "Texteingabe")
    
    If strEingabe = vbNullString Then
        Exit Sub
    End If
    
    strPW = InputBox("Passwort:", "Passworteingabe")
    
    If strPW = vbNullString Then
        Exit Sub
    End If
    
    MsgBox "Der entschlüsselte Text lautet: " & vbCrLf & vbCrLf & _
        Crypt(strEingabe, strPW, False), vbInformation
End Sub

Private Function Crypt(Inp As String, Key As String, Mode As Boolean) As String
    Dim z As String
    Dim i As Integer, Position As Integer
    Dim cptZahl As Long, orgZahl As Long
    Dim keyZahl As Long, cptString As String
    
    For i = 1 To Len(Inp)
            Position = Position + 1
            If Position > Len(Key) Then Position = 1
            keyZahl = Asc(Mid(Key, Position, 1))
            
            If Mode Then
            
                'Verschlüsseln
                orgZahl = Asc(Mid(Inp, i, 1))
                cptZahl = orgZahl Xor keyZahl
                cptString = Hex(cptZahl)
                If Len(cptString) < 2 Then cptString = "0" & cptString
                z = z & cptString
            
            Else
            
                'Entschlüsseln
                If i > Len(Inp) \ 2 Then Exit For
                cptZahl = CByte("&H" & Mid$(Inp, i * 2 - 1, 2))
                orgZahl = cptZahl Xor keyZahl
                z = z & Chr$(orgZahl)
            
            End If
        Next i
     
        Crypt = z
End Function

Gruß


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
13.05.2016 09:19:15 MIR
NotSolved
13.05.2016 09:23:58 Gast86139
NotSolved
Rot monoalphabetische Verschlüsselung
13.05.2016 09:41:39 SJ
*****
NotSolved
13.05.2016 10:32:00 Gast8111
NotSolved
13.05.2016 12:05:45 SJ
*****
NotSolved
17.05.2016 08:25:22 SJ
*****
NotSolved
17.05.2016 12:05:40 Gast32970
NotSolved