Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Semplicissime funzioni per la criptazione/decriptazione. Se vuoi, posso postarti anche algoritmi pi? complessi...
(*prima ci vuole una funzione che legga un solo
carattere dalla stringa, cos? da poter criptare un carattere alla volta*)
function carattere(index:byte;s:string):string;
var f:string;
begin
f:=s;
delete(s,index+1,Length(s)-index-1);
if index>1 then
delete(s,1,index-1);
carattere:=s;
s:=f;
end;
function cripta(s:string):string;
var i:byte;
c:char;
begin
for i:=1 to length(s) do
begin
c:=chr(255-ord(carattere(i,s)));
cripta:=cripta + c; (*fai te il cast*)
end;
end;
function decripta(s:string):string;
begin
decripta:=cripta(s);
end;
Dato un carattere, il carattere criptato corrisponde al carattere corrispondente al codice ASCII 255-(codice ASCII del carattere da criptare). Decripta ? uguale, perch? se c ? il carattere iniziale:
(*c criptato*)
c:=chr(255-ord(c));
(*c decriptato*)
c:=chr(255-(255-ord(c)));
(*da cui deriva:*)
c:=chr(ord(c));
(*che ? uguale a :*)
c:=c;