Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Delphi [codice Per Crittografare]

    Un buongiorno a tutti.

    Come sempre mi rivolgo al Forum dove, per meriti vostri, ho sempre risolto i miei problemi e colmato le mie lacune (principiante).

    Ho sviluppato un piccolo programmico che necessariamente deve lavorare con un database DBF. Il programma funziona e non daproblemi.

    Il mio problema sono i dati nel DBF, visto che potrebbero essere aperti con qualsiasi programma (excel incluso), ed allora avevo pensato che potrebbe essere utile criptare i dati che vado a registrare, ma mi servirebbe sapere come affrontare la scrittura di un algoritmo che possa criptare prima di salvare i dati e decriptare al momento della lettura.

    Grazie a tuti quelli che hanno letto il mio post e specialmente a chi potrà aoiutarmi in qualche modo.

    Saluti
    Alligator63
    - Napoli -

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    ciao

    come intuito da te anche io credo che tu debba usare una funzione per criptare prima della registrazione ed una funzione per decriptare dopo la lettura.... ti allego queste funzioni che trovai girovagando su internet.....

    devi definire c_chiave... una stringa da te scelta tramite la quale viene criptata la tua variabile

    codice:
    function Cripta(sPAssword : String): String;
    function DeCripta(sPAssword : String): String;
    
     C_Chiave= 'stringa da te scelta';
    
    
    
    function Cripta(sPAssword : String): String;
    var
       idx           : integer;
       KeyLen        : Integer;
       KeyPos        : Integer;
       offset        : Integer; 
       dest          : string; 
       SrcPos        : Integer; 
       SrcAsc        : Integer; 
       TmpSrcAsc     : Integer; 
       cOffSet, cCar : char; 
    begin 
       KeyLen := Length(C_Chiave);
       KeyPos := 0; 
       SrcPos := 0;
       SrcAsc := 0;
       dest   := ''; 
       for SrcPos := 1 to Length(sPAssword) do 
       begin 
          SrcAsc :=(Ord(sPAssword[SrcPos])); 
          if KeyPos < KeyLen then 
             KeyPos := KeyPos + 1 
          else 
             KeyPos :=1; 
          SrcAsc := SrcAsc + Ord(C_Chiave[KeyPos]); 
          dest :=dest + FormatFloat('000',SrcAsc); 
       end; 
       result := Dest;
    end;
    
    function DeCripta(sPAssword : String): String;
    var
       idx           : integer;
       KeyLen        : Integer;
       KeyPos        : Integer;
       offset        : Integer;
       dest          : string;
       SrcPos        : Integer;
       SrcAsc        : Integer;
       TmpSrcAsc     : Integer;
       cOffSet, cCar : char;
    begin
       Result := '';
       KeyLen := Length(C_Chiave);
       KeyPos := 0;
       SrcAsc := 0;
       dest    := '';
       SrcPos  := 1;
       while SrcPos <= Length(sPAssword) do
       begin
          TmpSrcAsc := StrToInt(copy(sPAssword,SrcPos,3));
          if KeyPos < KeyLen then
             KeyPos := KeyPos + 1
          else
             KeyPos := 1;
          TmpSrcAsc := TmpSrcAsc - Ord(C_Chiave[KeyPos]);
          dest      := dest + chr(TmpSrcAsc);
          SrcPos    := SrcPos + 3;
       end;
    
       Result:=Dest;
    end;

    ciao

  3. #3

    Grazie

    Grazie per la funzione.
    Proverò ad inserirla nel mio pg al più presto, ma già vista così credo che possa andare bene.
    Cmq ti farò sapere.

    Thanks
    Alligator63
    - Napoli -

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.