Шифруем/дешифруем строку, остальное сам догадаешься как сделать, наверно
Код:
unit CUnit;
interface
const
XDefKey = 15;
SDefKey = '15';
function XDeCode(S: String; Code: Integer = XDefKey): String;
Function SCrypt(Text: String; Encode: Boolean = True; Key: String = SDefKey): String;
implementation
function XDeCode(S: String; Code: Integer): String;
var
T: Integer;
begin
for T := 1 to Length(s) do
S[T] := CHR(ORD(S[T]) xor Code);
RESULT := S;
end;
Function SCrypt(Text: String; Encode: Boolean; Key: String): String;
Var
I, KeyLength : integer;
Sign : ShortInt;
Begin
KeyLength := Length(Key);
If Encode then
Sign := -1 else
Sign := 1; //шифровать или расшифровывать?
For I := 1 to Length(Text) do
//код символа исходного текста складывается с кодом символа ключа
// пароль при этом умножается
Text[i] := CHR(ORD(Text[i]) + Sign * ORD(Key[I mod KeyLength + 1]));
Result := Text;
End;
end.