AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken DBMemo Text vorm speichern verschlüsseln
Thema durchsuchen
Ansicht
Themen-Optionen

DBMemo Text vorm speichern verschlüsseln

Ein Thema von Alterauge · begonnen am 6. Aug 2012 · letzter Beitrag vom 9. Aug 2012
Antwort Antwort
Seite 1 von 3  1 23      
Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#1

DBMemo Text vorm speichern verschlüsseln

  Alt 6. Aug 2012, 16:57
Datenbank: MySQL • Version: 5.5 • Zugriff über: MyConnection
Hallo,

möchte gerne den DBMemo Text (Inhalt) vorm speichern verschlüsseln!

Delphi-Quellcode:
procedure TForm1.Timer7Timer(Sender: TObject);
var
i : integer;
s : string;
begin
  if filelistbox1.Count > 0 then
  fileListbox1.ItemIndex:=0;
 if filelistbox1.ItemIndex= 0 then
 begin
DBMemo1.Lines.LoadFromFile(filelistbox1.FileName);
MyTable1.FieldByName('Status').Text:='Eingang';
MyTable1.FieldByName('Meldung').AsString := DBMemo1.Text;
DBMemo1.Lines.SaveToFile(FormatDateTime('yyyy-mm-dd_hh-nn-ss__',now)+('MySQL')+ '.asc');
MyTable1.Post;
MyTable1.Refresh;
MyTable1.Insert;
DBMemo1.Clear;
i := 0;
while i < fileListBox1.Items.count do begin
deletefile (filelistbox1.FileName);
 inc ( i );
FileListBox1.Update;
MyConnection1.Connected:=false;
MyTable1.Active:=false;
  end;
 end;
end;
Zurzeit wird der TEXT unverschlüsselt gespeichert!
Wie könnte ich es umsetzen!
Kann ein einfacher Schlüssel sein, der auch nicht so sicher ist!
Möchte nur das der Text halt verschlüsselt ist.

Wenn ich die Daten mit einem DBGrid lese,
müssen diese natürlich wieder entschlüsselt werden.
Hier brauche ich auch eine Idee!

Danke
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

AW: DBMemo Text vorm speichern verschlüsseln

  Alt 6. Aug 2012, 17:20
Forensuche schon bemüht?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: DBMemo Text vorm speichern verschlüsseln

  Alt 6. Aug 2012, 17:21
Nimm halt die möglichkeiten der DB http://dev.mysql.com/doc/refman/5.1/...functions.html
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#4

AW: DBMemo Text vorm speichern verschlüsseln

  Alt 6. Aug 2012, 20:39
Datenfelder (TField) bieten die Möglichkeit, über die OnGetText/OnSetText-Ereignisse, Verschlüsselungen transparent und Datenbankunabhängig zu implementieren.

Nachteil, die Verschlüsselung ist durch Reverse-Engineering knackbar.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: DBMemo Text vorm speichern verschlüsseln

  Alt 6. Aug 2012, 22:30
Nachteil, die Verschlüsselung ist durch Reverse-Engineering knackbar.
Weiterer Nachteil: Du kannst keine SQL mehr verwenden da ja deine DB von der Verschlüsselung nix weiss
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#6

AW: DBMemo Text vorm speichern verschlüsseln

  Alt 6. Aug 2012, 22:46
Naja wenn sowas wie die Cäsar"Verschlüsselung" genutzt wird dann könnte man SQL noch nutzen. Nur was soll dieses
Kann ein einfacher Schlüssel sein, der auch nicht so sicher ist!
Möchte nur das der Text halt verschlüsselt ist.
Entweder macht man's richtig oder läßt die Finger davon.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#7

AW: DBMemo Text vorm speichern verschlüsseln

  Alt 7. Aug 2012, 05:19
Hallo, möchte gerne den DBMemo Text (Inhalt) vorm speichern verschlüsseln!
Zurzeit wird der TEXT unverschlüsselt gespeichert! Wie könnte ich es umsetzen! Kann ein einfacher Schlüssel sein, der auch nicht so sicher ist! Möchte nur das der Text halt verschlüsselt ist.
Also wenn ich dich richtig verstanden habe, möchtest du den Inhalt eines Blob-Text-Feldes verschlüsseln (encode) und vor dem Anzeigen wieder entschlüsseln (decode). Weil aber DB-Memo direkt auf das entsprechende DataSource zugreift, kommst du da nur schwer ran. Ich verwende in solchen Fällen kein DBMemo, sondern ein "normales" TMemo. In der Ereignisbehandlung des entsprechenden Datasets OnAfterScroll kannst du dann die Entschlüsselung starten.

Aber bevor ich dir das jetzt lang und breit auseinandersetze, stelle ich hier lieber ein Beispiel-Projekt rein, das ich einmal für einen skeptischen Kunden angefertigt hatte, der meinte, MS-Access sei als Datenbank nicht sicher genug (siehe Anhang).

Wenn ich die Daten mit einem DBGrid lese, müssen diese natürlich wieder entschlüsselt werden. Hier brauche ich auch eine Idee!
Da machst du das genauso wie beim Memo: Kein DBGrid verwenden, sondern ein TStringGrid und in der Ereignisbehanldung für OnAfterScroll die Befüllung des StringGrid auslösen.

P.S.: Ich verwende zum Ver- und Entschlüsseln TJvVigenereCipher aus der Jedi-Komponentenpalette JvEncrypt, Compress.
Angehängte Dateien
Dateityp: zip Crypting.zip (247,3 KB, 17x aufgerufen)
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#8

AW: DBMemo Text vorm speichern verschlüsseln

  Alt 7. Aug 2012, 07:22
Weiterer Nachteil: Du kannst keine SQL mehr verwenden da ja deine DB von der Verschlüsselung nix weiss
Du meinst bei Reports?

...in der Ereignisbehanldung für OnAfterScroll die Befüllung des StringGrid auslösen.
Gefällt Dir OnGetText/OnSetText nicht?

Geändert von Furtbichler ( 7. Aug 2012 um 07:24 Uhr)
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#9

AW: DBMemo Text vorm speichern verschlüsseln

  Alt 7. Aug 2012, 07:25
Du meinst bei Reports?
Ich glaube, er meint, daß man z.B. keine WHERE-Klausel mehr verwenden kann, weil man ja nicht weiß, wie die verschlüsselten Daten in der DB aussehen. Aber ich meine, man kann doch, indem man nämlich den Parameter z.B. in der WHERE-Klausel zuvor verschlüsselt. Danach müßte die DB den korrekten Wert finden ...

Gefällt Dir OnGetText/OnSetText nicht?
Stimmt, wäre auch eine Möglichkeit ...
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#10

AW: DBMemo Text vorm speichern verschlüsseln

  Alt 7. Aug 2012, 07:32
Ich glaube, er meint, daß man z.B. keine WHERE-Klausel mehr verwenden kann, weil man ja nicht weiß, wie die verschlüsselten Daten in der DB aussehen. Aber ich meine, man kann doch, indem man nämlich den Parameter z.B. in der WHERE-Klausel zuvor verschlüsselt. Danach müßte die DB den korrekten Wert finden ...
Na, das Problem ist ja generell, das man die Daten des Feldes nur mit spezieller Software verwenden kann.

Es ist generell nicht leicht, in einem verschlüsselten Text einen anderen zu finden, wenn die Verschlüsselung nicht trivial ist, denn ein Wort XY wird in einem Text anders verschlüsselt als wenn das Wort solo verschlüsselt würde.

Denk einfach mal an einfache XOR-Verschlüsselung mit einem Key:
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:25 Uhr.
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