Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.15;
Скачать: CL | DM;

Вниз

Шифрование   Найти похожие ветки 

 
ivlex ©   (2002-06-29 10:30) [0]

Нужно зашифровать строку типа string. Просьба помочь кодом.


 
alena.svt   (2002-06-29 12:02) [1]

Сверху ссылочка !
UBPFD- Единая база данных....
Вот на нее и кликни.


 
Anatoly Podgoretsky ©   (2002-06-29 12:16) [2]

S[i] := Char(Byte(S[i]) xor XX)


 
Danger ©   (2002-06-29 14:28) [3]

var
s: string;

procedure Code(var text: string; password: string;
decode: boolean);
var
i, PasswordLength: integer;
sign: shortint;
begin
PasswordLength := length(password);
if PasswordLength = 0 then Exit;
if decode
then sign := -1
else sign := 1;
for i := 1 to Length(text) do
text[i] := chr(ord(text[i]) + sign *
ord(password[i mod PasswordLength + 1]));
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
s := Memo1.Text;
code(s, Edit1.Text, false);
Memo1.Text := s;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
code(s, Edit1.Text, true);
Memo1.Text := s;
end;


 
MARcoDEN ©   (2002-06-29 20:13) [4]

Вот мой пример шифрования и дешифрования текста с использованием пароля на WinAPI:

Процедура шифрования текста, расположенного в hEdit, используя пароль hPW
procedure Encrypt;
var
x,i,
sText,sPW: Integer;
Text,PW: PChar;
begin
sText:=GetWindowTextLength(hEdit)+1;
sPW:=GetWindowTextLength(hPW)+1;
GetMem(Text,sText);
GetMem(PW,sPW);
GetWindowText(hEdit,Text,sText);
GetWindowText(hPW,PW,sPW);
x:=0; // initialize count
for i:=0 to sText-2 do
begin
Text[i]:=Chr(Ord(Text[i])+Ord(PW[x]));
Inc(x);
if x=(sPW-1)then x:=0;
end;
SetWindowText(hEdit,Text);
FreeMem(Text);
FreeMem(PW);
end;


Процедура дешифрования текста
procedure Decrypt;
var
x,i,
sText,sPW: Integer;
Text,PW: PChar;
begin
sText:=GetWindowTextLength(hEdit)+1;
sPW:=GetWindowTextLength(hPW)+1;
GetMem(Text,sText);
GetMem(PW,sPW);
GetWindowText(hEdit,Text,sText);
GetWindowText(hPW,PW,sPW);
x:=0; // initialize count
for i:=0 to sText-2 do
begin
Text[i]:=Chr(Ord(Text[i])-Ord(PW[x]));
Inc(x);
if x=(sPW-1)then x:=0;
end;
SetWindowText(hEdit,Text);
FreeMem(Text);
FreeMem(PW);
end;



Страницы: 1 вся ветка

Текущий архив: 2002.07.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
1-47438
race1
2002-07-03 09:11
2002.07.15
file map


1-47283
Floyd
2002-06-30 11:43
2002.07.15
ListBox


1-47313
SDv-503
2002-07-01 00:17
2002.07.15
Как программно нажать на .... (+)


1-47333
Ricks
2002-06-30 18:57
2002.07.15
Ресурсы: 32-битный Bitmap


7-47835
Крутов Алексей
2002-04-16 10:38
2002.07.15
Вопрос по реестру