Einzelnen Beitrag anzeigen
Alt 30.11.04, 19:33   #4 (permalink)
LittleSpike
 
Registriert seit: 30.11.04
LittleSpike Leistung: Facit NTK
Likes: 0
Standard

Tach Leute.
Hab mal ein Prog bzw. die nötigen Funktionen in VB Geschrieben:

Wenn bei den Funktionen "Verschlüsseln"==False, wird entschlüsselt.
Einfach in ein Modul Packen:

Code:
Option Explicit

Function Vigenere(ByVal Text As String, ByVal Schlüssel As String, ByVal Verschlüsseln As Boolean)
Dim Zahl1 As Double
Dim Zahl As Double
Dim NeuerText As String
Dim Zeichen As Integer
Dim NZeichen As String


For Zahl1 = Len(Schlüssel) To Len(Text)
    Schlüssel = Schlüssel & Schlüssel
    If Len(Schlüssel) > Len(Text) Then
        Schlüssel = Mid(Schlüssel, 1, Len(Text))
    End If
Next Zahl1


For Zahl = 1 To Len(Text)

    Zeichen = Asc(Mid(Text, Zahl, 1))
    
        If Zeichen > 64 Then
            If Zeichen < 91 Then
                

                If Verschlüsseln = True Then
                Zeichen = Zeichen + (Asc(Mid(Schlüssel, Zahl, 1)) - 64)
                Else
                Zeichen = Zeichen - (Asc(Mid(Schlüssel, Zahl, 1)) - 64)
                End If
                
                If Zeichen < 65 Then
                    Zeichen = Zeichen + 26
                ElseIf Zeichen > 90 Then
                    Zeichen = Zeichen - 26
                End If
            End If
        End If
    NZeichen = Chr(Zeichen)
    NeuerText = NeuerText & NZeichen
Next Zahl

Vigenere = NeuerText
End Function

Function Caesar(ByVal Text As String, ByVal Schlüssel As Integer, ByVal Verschlüsseln As Boolean)
Dim Zahl As Double
Dim NeuerText As String
Dim Zeichen As Integer
Dim NZeichen As String
NeuerText = ""

For Zahl = 1 To Len(Text)

    Zeichen = Asc(Mid(Text, Zahl, 1))
    
        If Zeichen > 64 Then
            If Zeichen < 91 Then
                
                If Verschlüsseln = True Then
                Zeichen = Zeichen + Schlüssel
                Else
                Zeichen = Zeichen - Schlüssel
                End If
                
                If Zeichen < 65 Then
                    Zeichen = Zeichen + 26
                ElseIf Zeichen > 90 Then
                    Zeichen = Zeichen - 26
                End If
            End If
        End If
    NZeichen = Chr(Zeichen)
    NeuerText = NeuerText & NZeichen
Next Zahl

Caesar = NeuerText
End Function
@Nornagest: Kann es sein das du bei RoR mitspielst?
LittleSpike ist offline   Mit Zitat antworten
 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61