Система шифрования Вижинера - VB
Формулировка задачи:
Система шифрования Вижинера
Здравствуйте, помогите плиз написать код дешифратора на основе кода шифратора .Код шифратора я нагуглил . В программировании разбираюсь не очень..SOS
Решение задачи: «Система шифрования Вижинера»
textual
Листинг программы
Dim n% Dim table(255) ' алфавит русс. Private Sub Command1_Click() Call Ru(223, 184) MsgBox "ключ: " & String(28, " ") & "авс" & vbLf & _ "открытый текст: " & kodek(0, kodek(1, "открытый текст", "авс"), "авс") & vbLf & _ "зашифрованный текст: " & kodek(1, "открытый текст", "авс") End Sub '..................................... 'функция возвращает строку : если = 1(True), - то зашифрованный, если=0(False), - то расшифрованную (восстановленную) Function kodek(kd As Boolean, txt As String, Key_txt As String) As String d = Len(txt) kodek = "" For i = 1 To d i1 = IIf(i Mod Len(Key_txt) = 0, Len(Key_txt), i Mod Len(Key_txt)) s = Mid(txt, i, 1) s1 = Mid(Key_txt, i1, 1) If Asc(s) = 10 Or Asc(s) = 13 Or Asc(s) = 9 Then kodek = kodek & s Else For p = 0 To n If s = table(p) Then iword = p If s1 = table(p) Then ikey = p Next p ind = IIf(kd, (iword + ikey) Mod n, (iword - ikey + n) Mod n) kodek = kodek + table(ind) End If Next i End Function '.............................................. Sub Ru(a As Integer, e As Integer) pp = 1 For i = 0 To 32 If i = 6 Then table(6) = Chr(e) pp = 0 Else table(i) = Chr(i + a + pp) End If Next i n = 34 table(33) = Chr(32) End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д