1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
| unit uCryptDecrypt;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
bCrypter: TSpeedButton;
bDecrypter: TSpeedButton;
RichEdit1: TRichEdit;
procedure bCrypterClick(Sender: TObject);
procedure bDecrypterClick(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
const Crypt : array[Char] of Char
= #0#1#2#3#4#5#6#7#8#9#10#11#12#13#14#15 +
#16#17#18#19#20#21#22#23#24#25#26#27#28#29#30#31 +
'é!"#$%&''()*+,-./0123456789:;<=>?' + // ' ' -> é
'@NRIETUHDXKLMAOPQBSFGVWJYZC[\]^_'+ // '@ABCD... A -> N
'`nrietuhdxklmaopqbsfgvwjyzc{|}~'#127 + // '`abcd... a -> n
''#129'
S'#141''#143#144's'#157'zY' +
#160'¡¢£¤¥¦§¨©ª«¬*®¯°±²³´µ¶·¸¹º»¼½¾¿'+
'ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞß'+
'àáâãäåæçè êëìíîïðñòóôõö÷øùúûüýþÿ'; // é -> ' '
const Decrypt : array[Char] of Char
= #0#1#2#3#4#5#6#7#8#9#10#11#12#13#14#15 +
#16#17#18#19#20#21#22#23#24#25#26#27#28#29#30#31 +
'é!"#$%&''()*+,-./0123456789:;<=>?' +
'@MQZHDSTGCWJKLANOPBREFUVIXY[\]^_'+ // N -> A
'`mqzhdstgcwjklanopbrefuvixy{|}~'#127 + // n -> a
''#129'
S'#141''#143#144's'#157'zY' +
#160'¡¢£¤¥¦§¨©ª«¬*®¯°±²³´µ¶·¸¹º»¼½¾¿'+
'ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞß'+
'àáâãäåæçè êëìíîïðñòóôõö÷øùúûüýþÿ';
var Texte, TxtCrypte, TxtDecrypte : string;
function Crypt1(const AText : String) : string;
var i:integer; p:pchar;
begin Result:=AText;
if Result='' then EXIT;
p:=@Result[1];
for i:=1 to Length(Result) do begin
p^:=Crypt[p^];
inc(p);
end;
end;
function DeCrypt1(const AText : String) : string;
var i:integer; p:pchar;
begin Result:=AText;
if Result='' then EXIT;
p:=@Result[1];
for i:=1 to Length(Result) do begin
p^:=Decrypt[p^];
inc(p);
end;
end;
procedure TForm1.bCrypterClick(Sender: TObject);
begin texte:='Bonne et heureuse année : santé, pognon, et le reste...'+#13#10+'Ouille, on a encore tous veilli d''une année de plus !';
RichEdit1.Lines.Add('TEXTE NON CRYPTE = '+texte);
RichEdit1.Lines.Add('-------------------------------------');
TxtCrypte:=Crypt1(Texte);
RichEdit1.Lines.Add('TEXTE CRYPTE = '+TxtCrypte);
RichEdit1.Lines.Add('-------------------------------------');
end;
procedure TForm1.bDecrypterClick(Sender: TObject);
begin TxtDecrypte:=DeCrypt1(TxtCrypte);
RichEdit1.Lines.Add('TEXTE DECRYPTE = '+TxtDecrypte);
end;
end. |
Partager