Jayanta Modak Ответов: 2

Как шифровать и расшифровывать данные в VB.NET с помощью переменной


Я создаю проект шифрование и расшифровка данных в vb.net
как использовать этот код в качестве функции пожалуйста помогите он работает только на текстовом поле
я хочу отправить строковое значение, а затем вернуть значение encrypt, и когда я отправлю значение encrypt, то пришлите мне значение decrypt.

Что я уже пробовал:

Private arLetterChars() As Char = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890 "
    Private arEncryptedChars() As Char = "***********************************"



'// encrypt.
   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, Button4.Click
       With TextBox1
           For Each myTextBoxChar As Char In .Text '// loop thru TextBox, one char. at a time.
               For i As Integer = 0 To arLetterChars.Length - 1 '// loop thru all letters in the Array.
                   '// if TextBox char ='s the char in your Array, replace the TextBox char with the same #'ed Array char of the Encrypted letters.
                   If myTextBoxChar = arLetterChars(i) Then .Text = .Text.Replace(myTextBoxChar, arEncryptedChars(i))
               Next
           Next
       End With
   End Sub


'// decrypt.
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    With TextBox1
        For Each myTextBoxChar As Char In .Text '// loop thru TextBox, one char. at a time.
            For i As Integer = 0 To arEncryptedChars.Length - 1 '// loop thru all Encrypted char.s in the Array.
                '// if TextBox char ='s the char in your Array, replace the TextBox char with the same #'ed Array char of the Letters.
                If myTextBoxChar = arEncryptedChars(i) Then .Text = .Text.Replace(myTextBoxChar, arLetterChars(i))
            Next
        Next
    End With
End Sub

2 Ответов

Рейтинг:
0

OriginalGriff

Ты понимаешь, что это не сработает?
Есть несколько причин:
1) Если код точно такой, как вы показываете, то на выходе метода шифрования будут все символы ' * ' - и вы ни при каких обстоятельствах не сможете расшифровать их, чтобы получить исходный ввод.
2) Если вы заменили символы, которые вы меняете на'*', чтобы мы не могли "взломать" ваше шифрование, то 1) уходит - но все равно не будет работать. Предположим, я наберу" abc "в текстовом поле, а вы измените "a" на "c", "b" на "d" и "c" на "e"? Вы замените мое "а" на "С".:

abc ==> cbc
мой 'б' с 'д'
cbc ==> cdc
и моя буква " С "с буквой "Е".:
cdc ==> ede

Когда вы расшифруете это, вы не сможете сказать, что буквы " Е " должны быть разными символами...

И кроме того, это не очень хорошее шифрование - это простой шифр замены, и они печатают журналы, полные таких каждый месяц, чтобы маленькие старушки могли делать их в свободное время...

Шифрование не должно работать с символами, оно должно работать с байтами - и оно должно использовать алгоритм на основе ключа вместо фиксированной замены! :смеяться:


Jayanta Modak

спасибо сэр за ответ
На самом деле я использовал несколько пространственных символов в этом месте "*" и такое же количество оригинальных символов. Я не пишу здесь, Пожалуйста, помогите мне, Сэр, пожалуйста ....