Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Daten verschlüsselt speichern (https://www.delphipraxis.net/185251-daten-verschluesselt-speichern.html)

strom 26. Mai 2015 09:04

Datenbank: MariaDB • Version: ? • Zugriff über: MyConnect

Daten verschlüsselt speichern
 
Würde gerne Daten in der Database verschlüsselt speichern,
und im StringGrid wieder entschlüsselt darstellen.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
i:integer;
begin
 //Test Text
 s:='Dies ist ein Test';
  for i:=1 to length(s) do begin
   s[i]:=Chr((Ord(s[i]) Xor (i*i-i))+(3+i)*(5+i));
    Memo1.text := s; // Test Memo1 Ansicht
  end;
   MyTAble1.Insert;
    MyTAble1.Edit;
    MyTable1.FieldByName('Eingabe').Text := s;
    MyTAble1.Post;
    MyTAble1.Refresh;
    DBGrid1.Refresh; // Daten verschlüsselt speichern
   for i:=1 to length(s) do begin
    s[i]:=Chr((Ord(s[i])-(3+i)*(5+i)) Xor (i*i-i));
  end;
  //Endschlüsseln und im StringGrid kopieren
   StringGrid1.FixedCols := 0;
   StringGrid1.FixedRows := 1;
   StringGrid1.ColCount := MyTable1.FieldCount;
   StringGrid1.RowCount := MyTable1.RecordCount+1;
   Memo2.text:= s; // Test Memo2 Ansicht
 for i := 0 to MyTable1.FieldCount - 1 do begin
  StringGrid1.Cells[i,0] := MyTable1.Fields[i].DisplayName;
   end;
    MyTable1.First;
     while not MyTable1.Eof do begin
      for i := 0 to MyTable1.FieldCount - 1 do begin
     StringGrid1.Cells[i, MyTable1.RecNo] := MyTable1.Fields[i].AsString;
    end;
   MyTable1.Next;
 end;
end;

vagtler 26. Mai 2015 09:10

AW: Daten verschlüsselt speichern
 
Wo ist die Frage?

Perlsau 26. Mai 2015 09:13

AW: Daten verschlüsselt speichern
 
Keine Ahnung, ob Maria-DB Verschlüsselung beherrscht, aber ich mache das immer so, wenn ich Tabelleninhalte verschlüsselt abspeichern will:

Im Programm arbeite ich mit einem ClientDataset. Beim Programmstart iterere ich durch die Original-Tabelle, entschlüssle die verschlüsselten Inhalte und speichere selbige im ClientDataSet. Beim Programmende speichere ich die im ClientDataSet enthaltenen Daten wieder in die Original-Tabelle, wobei die relevanten Spalten wieder verschlüsselt werden. Während des Programmlaufs arbeite ich ausschließlich mit dem ClientDataSet, das ich dann auch dem entsprechenden DataSource zuweise, um damit ein DBGrid zu "füttern".

Alternativ könnte man auch im Original-Dataset ein zusätzliches Feld (Feldeditor) anlegen und in OnGetText dieses neuen Feldes den entschlüsselten Inhalt bereitstellen und in OnChange wieder speichern.

War es das, was du wissen wolltest?

frankyboy1974 26. Mai 2015 09:19

AW: Daten verschlüsselt speichern
 
Zitat:

Wo ist die Frage?
Die hat er verschlüsselt in der Datenbank gespeichert!!!:lol:

fillibuster 26. Mai 2015 09:25

AW: Daten verschlüsselt speichern
 
Zitat:

Zitat von Perlsau (Beitrag 1303017)
Keine Ahnung, ob Maria-DB Verschlüsselung beherrscht, ...

MariaDB unterstützt Verschlüsselung: https://mariadb.com/kb/en/mariadb/table-encryption/

Popov 26. Mai 2015 09:30

AW: Daten verschlüsselt speichern
 
strom, der Wort-Minimalist ist wieder da ;)

Also strom, wenn es nichts kompliziertes sein muss, die Verschlüsselung mehr ein Sichtschutz als wirkliche Verschlüsselung sein soll, dann würde ich eine XOR Verschlüsselung empfehlen. Die ist sehr einfach und lässt sich nach paar Versuchen relativ schnell knacken, aber wie gesagt, sie ist sehr einfach. Und sie reicht allemal dazu den Text unleserlich zu machen.

Mavarik 26. Mai 2015 09:34

AW: Daten verschlüsselt speichern
 
Zitat:

Zitat von Popov (Beitrag 1303024)
Also strom, wenn es nichts kompliziertes sein muss, die Verschlüsselung mehr ein Sichtschutz als wirkliche Verschlüsselung sein soll, dann würde ich eine XOR Verschlüsselung empfehlen. Die ist sehr einfach und lässt sich nach paar Versuchen relativ schnell knacken, aber wie gesagt, sie ist sehr einfach. Und sie reicht allemal dazu den Text unleserlich zu machen.

Nicht nur das... Ein XOR gilt schon als Verschlüsselung und ein Ausspähen der Daten gilt schon als reverse Engineering und ist strafbar...

Popov 26. Mai 2015 09:44

AW: Daten verschlüsselt speichern
 
Ich hab gerade seinen Code überflogen und glaube, dass er schon selbst auf XOR gekommen ist. Ich vermute, eindeutig kann ich es nicht sagen, dass die Frage an das Forum ist, ob die Verschlüsselung ok ist. Warum storm sich aber immer so kurz mit seinen Fragen hält, weiß ich nicht. Meine beste Theorie bisher ist, dass er noch einen alten CompuServe Account für 5 DM die Stunde hat und einen 14,4 kB/s Modem. Da hält man sich knapp, denn Zeit kostet Geld.

vagtler 26. Mai 2015 10:32

AW: Daten verschlüsselt speichern
 
Warum sollte er sich auch um ein soziales Verhalten bemühen? Er bekommt doch genügend Antworten auf dem Silbertablett serviert.

strom 26. Mai 2015 10:37

AW: Daten verschlüsselt speichern
 
Entschuldigung, hier bin ich wieder!

Die Daten werden verschlüsselt in der Datenbank abgelegt,
und auch wieder ins StringGrid kopiert!

Leider sind die Daten im StringGrid noch verschlüsselt!


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:09 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz