|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
простенький шифратор-дешифратор
сложность в следующем: решил дополнить программку которая шифрует и дешифрует текст в окне Edit1 следующим: возможность перебора всех возможных значений ключа(их всего 255 тип то byte!) и отображала бы результаты применения каждого ключа к зашифрованной строке в окне Memo1. запутался с несоответствием типов
Код:
function CodeDecode(S:string;Key:byte):string; var i,L,K:word; var j:byte; begin L:=Length(S); for i:=1 to L do begin S[i]:=Chr(Ord(S[i]) xor Key); end; for j:=0 to 255 do //все возможные ключи begin K:=StrToInt(S) xor j; Form1.Memo1.Lines.Add(IntToStr(K)); end; Result:=(S); end; procedure TForm1.Button1Click(Sender: TObject); //шифрует и дешифрует(при повторном нажатии ) begin Edit1.Text:=CodeDecode((Edit1.Text),10); end; Последний раз редактировалось Admin, 08.11.2012 в 15:42. |
#2
|
|||
|
|||
Отдели мух от котлет
Код:
function CodeDecode(S:string;Key:byte):string; // кодирование var i,L:word; begin L:=Length(S); Result:=''; SetLength(Result,L); for i:=1 to L do begin Result[i]:=Chr(Ord(S[i]) xor Key); end; end; procedure Perebor(S:string);// подбор var j:byte; begin for j:=0 to 255 do //все возможные ключи begin Form1.Memo1.Lines.Add(IntToStr(j)+' '+CodeDecode(S,j)); end; end; procedure TForm1.Button1Click(Sender: TObject); //шифрует и дешифрует(при повторном нажатии ) begin //Edit1.Text:=CodeDecode((Edit1.Text),10); Perebor(Edit1.Text); end; |
Этот пользователь сказал Спасибо icWasya за это полезное сообщение: | ||
Black_Bear (08.11.2012)
|
#3
|
|||
|
|||
Благодарю за помощь!
|