AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Einmal mit DEC Ver- und Entschlschlüsseln funktioniert nicht
Thema durchsuchen
Ansicht
Themen-Optionen

Einmal mit DEC Ver- und Entschlschlüsseln funktioniert nicht

Ein Thema von xZise · begonnen am 31. Dez 2006 · letzter Beitrag vom 1. Jan 2007
 
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#1

Einmal mit DEC Ver- und Entschlschlüsseln funktioniert nicht

  Alt 31. Dez 2006, 10:11
Nachdem ich seit kurzem (gestern ) DEC benutze, gibt es ein Verschlüsselungs und Enschlüsselungsproblem. Einmal mit DEC En/DeCoded ergibt leider nicht die Ausgangsdatei.

Hier meine Vorgehensweise:
Zuerst erstelle ich eine TStringList (ohne ""):
Zitat:
""
"<Anzahl Daten>"
""
"<Daten (1) Name>"
"<Daten (1) Info1>"
"<Daten (1) Info2>"
""
"<Daten (2) Name>"
"<Daten (2) Info1>"
"<Daten (2) Info2>"
...
Und die Verschlüssel und speichere ich nun:
Delphi-Quellcode:
fileCatalog{<== Die StringList}.Text := EnCode(frmPassword.Password, fileCatalog.Text);

fileCatalog.SaveToFile(sdSave.FileName);
Delphi-Quellcode:
function TfrmManager.EnCode(key, text: string): string;
begin
  with TCipher_Rijndael.Create do
    try
      Mode := cmCBCx;
      Init(THash_SHA1.KDFx(key, RandomBinary(16), Context.KeySize));
      Result := EncodeBinary(text);
    finally
      Free;
    end;
end;
Wenn ich die Dann lade:

fileCatalog.Text := DeCode(frmPassword.Password, fileCatalog.Text);
Delphi-Quellcode:
function TfrmManager.DeCode(key, text: string): string;
var
  Salt : Binary;
begin
  Salt := RandomBinary(16);

  with TCipher_Rijndael.Create do
    try
      Mode := cmCBCx;
      Init(thash_sHA1.KDFx(key, Salt, Context.KeySize));
      Result := DecodeBinary(text);
    finally
      Free;
    end;
end;
Dann kommt nicht das Entprodukt raus.
Ich kann außerdem ausschließen, dass die Datei (unverschlüsselt) fehlerhaft ist.
Also ist sie innerhalb des DeCode/Encode-Blocks.

Vor dem Verschlüsseln:
Zitat:
""
"2"
""
"a"
"b"
""
""
"1"
"2"
""
Nach dem Entschlüsseln
Zitat:
F5ñ“;¢’‚‚ôÌ‘GŽ˜ß Y]D&¢(âð¤
[edit]Es lag am "Salz", aber wie kann man es sonst benutzen?[/edit]

[edit]Öhm, aber jetzt ist etwas in der letzten "Zeile" kaputt ...[/edit]
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
 


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 21:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz