Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Pascal - Programma x criptare e decriptare una stringa
Forum - Pascal - Programma x criptare e decriptare una stringa

Avatar
lomiz (Normal User)
Rookie


Messaggi: 26
Iscritto: 09/11/2005

Segnala al moderatore
Postato alle 19:10
Giovedė, 24/11/2005
Mi potete fare un esempio di una procedura che cripti una stringa e di un'altra che la decripti?
Grazie

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 18:55
Martedė, 24/01/2006
Semplicissime funzioni per la criptazione/decriptazione. Se vuoi, posso postarti anche algoritmi pi? complessi...:k:

(*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;

Ciao!:asd:

PM Quote