Our Blog

Шифровка текста под пароль

Вот такая ситуация:
Надо передать другу (знакомому, маме, да кому угодно) какую-либо конфиденциальную информацию через интернет. По аське? Так просто взять и выслать пароль от webmoney? Ненадежно.. По телефону? «К большая, а маленькая, 786, F большая, тьфу, маленькая» — таким образом хорошего мало выйдет. Но есть программы для шифрования! Взяли пароль (а можно и не пароль, да что угодно, хоть послание девушке ) воткнули его в программу, ввели желаемый пароль шифрования и получили зашифрованный текст! Отправили кому надо.

Например слово «Привет» в зашифрованном виде с паролем «123» выглядит как:

254194219211215193

и кто поймет что это «Привет»? 

Начнем:)
создадим проект «Standart EXE» в Визуал Бейсике и поставим на форму 2 кнопки и одно текстовое поле. Сразу у текстового поля изменим свойство multiline=true
Теперь пишем исходный код для шифровки текста:

Public Function Encrypt(ByVal Source As String, ByVal Password As String) As String 'шифрование данных
Dim a, b, c, d As String
Dim lentext, lenpass, cn As Long
a = Text1.Text
b = InputBox("Введите пароль")
c = ""
lentext = Len(a)
lenpass = Len(b)
For cn = 1 To lentext
d = Trim(Str(Asc(Mid(a, cn, 1)) Xor Asc(Mid(b, ((cn - 1) Mod lenpass) + 1, 1))))
Select Case Val(d)
Case 0 To 9: d = "00" + d
Case 10 To 99: d = "0" + d
End Select
c = c + d
Next cn
Encrypt = c
End Function
Public Function Decrypt(ByVal Code As String, ByVal Password As String) As String 'расшифровывание данных
Dim a, b, c, d As String
Dim lentext, lenpass, cn As Long
c = Text1.Text
b = InputBox("Введите пароль")
a = ""
lentext = Len(c)
lenpass = Len(b)
For cn = 1 To lentext Step 3
a = a + Chr(Val(Mid(c, cn, 3)) Xor Asc(Mid(b, (Int(cn / 3) Mod lenpass) + 1, 1)))
Next cn
Decrypt = a
End Function
Private Sub Command1_Click()
Text1 = Encrypt("text1", "parol")
End Sub
Private Sub Command2_Click()
Text1 = Decrypt(Text1, "parol")
End Sub

Готовый проект «шифровка текста»:

  shifr.rar (745 bytes, 665 hits)

Comments ( 0 )
    -->