Code-Beispiel
RC4-Stromchiffre
Lizenz: | Erster Autor: | Letzte Bearbeitung: |
LGPL | Mao | 18.10.2008 |
RC4 ist ein einfacher Stromchiffre-Algorithmus, der mit nur wenigen Zeilen Code implementiert werden kann.
Type t_SBox
Dim SBox(0 To 255) As Unsigned Byte
End Type
Declare Sub InitialisiereSBox(ByRef SBox As t_SBox)
Declare Sub BelegeSBox(ByRef Schluessel As String, ByRef SBox As t_SBox)
Declare Sub RC4(ByRef Schluessel As String, ByRef Text As String, ByRef SBox As t_SBox)
Sub InitialisiereSBox(ByRef SBox As t_SBox)
For i As Integer=0 To 255
SBox.SBox(i)=i
Next i
End Sub
Sub BelegeSBox(ByRef Schluessel As String, ByRef SBox As t_SBox)
Dim As Integer j
For i As Integer=0 To 255
j=(j+SBox.SBox(i)+Schluessel[i Mod Len(Schluessel)]) Mod 256
Swap SBox.SBox(i), SBox.SBox(j)
Next i
End Sub
Sub RC4(ByRef Schluessel As String, ByRef Text As String, ByRef SBox As t_SBox)
Dim As Integer i, j, k. Zufallsbyte
For k=1 To Len(Text)
i=(i+1) Mod 256
j=(j+SBox.SBox(i)) Mod 256
Swap SBox.SBox(i), SBox.SBox(j)
Zufallsbyte=SBox.SBox((SBox.SBox(i)+SBox.SBox(j)) Mod 256)
Text[k-1]=Zufallsbyte Xor Text[k-1]
Next k
End Sub
Verwendungsbeispiel:
Dim As t_SBox mySBox
Dim As String key="key"
Dim As String text="Keine Verschluesselung ist absolut sicher!"
InitialisiereSBox(mySBox)
BelegeSBox(key, mySBox)
RC4(key, text, mySBox)
Print text
InitialisiereSBox(mySBox)
BelegeSBox(key, mySBox)
RC4(key, text, mySBox)
Print text
Sleep
Zusätzliche Informationen und Funktionen | |||||||
---|---|---|---|---|---|---|---|
|