AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Arbeiten mit dem DEC

Ein Thema von Sko · begonnen am 11. Sep 2005 · letzter Beitrag vom 12. Sep 2005
Antwort Antwort
Seite 1 von 2  1 2   
Benutzerbild von Sko
Sko

Registriert seit: 11. Sep 2005
327 Beiträge
 
Turbo Delphi für Win32
 
#1

Re: VerschlüsselungsProgramm

  Alt 11. Sep 2005, 11:00
Hallo,

ich hab auch ein kleines Verschlüsselungsprogramm erstellt, und hab da mal zwei Fragen (aber bitte nich hauen, bin totaler Anfänger ):

also wie gesagt ich hab ein kleines Verschlüsselungsprogramm geschrieben, in dem man eine Quellatei und eine Zieldatei auswählt und dann ein Passwort eingibt, welches der Schlüssel der Verschlüsselung ist. Das ganze hab ich mit dem DEC gebaut. Zur Zeit sieht das so aus:

Delphi-Quellcode:
    with TCipher_Blowfish.Create(Edit3.text, nil) do
    try
      EncodeFile(Filename, crypt);
    finally
      Free;
    end;
1. Frage: Kann ich wenn ich einen Ciphermanager auf dem Formular habe auch folgendes schreiben:

Delphi-Quellcode:
CipherManager1.InitKey(Edit3.text,nil);
CipherManager1.EncodeFile(Filename,crypt);
Ciphermanager1.Free;
2. Frage: Ich würde gerne eine ComboBox einbauen, in der ich den Verschlüsselungsalgorithmus ändern kann, wie kann ich das machen? Ich hatte es so probiert:

Delphi-Quellcode:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  Ciphermanager1.algorithm:=Combobox1.text;
end;
das hat aber nicht geklappt.

Vielen Dank schon mal im Vorraus für eure Hilfe
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: VerschlüsselungsProgramm

  Alt 11. Sep 2005, 11:13
Hai Sko,

Hagen empfiehlt die "Manger" aus dem DEC nicht zu verwenden. Diese hat er wohl nur zum testen entwickelt.
Wenn Du verschiedenen Verschlüsselungsmethoden verwenden möchtest kannst Du das z.B. so machen:
Delphi-Quellcode:
procedure TFRM_Main.btn_TestClick(Sender: TObject);
var
  DefCipherClass: TCipherClass;
begin
  if (Montag) then DefCipherClass := TCipher_Blowfish;
  if (Dienstag) then DefCipherClass := TCipher_Rijndael;
  if (Mittwoch) then DefCipherClass := TCipher_3DES;
  with DefCipherClass.Create('blubb',nil) do
  begin
    try
      EncodeFile(Filename, crypt);
    finally
      Free;
    end;
  end;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Sko
Sko

Registriert seit: 11. Sep 2005
327 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: VerschlüsselungsProgramm

  Alt 11. Sep 2005, 11:26
Danke Sharky,

ich hab das jetz so gebaut:

Delphi-Quellcode:
var
  Form1: TForm1;
  Filename: string;
  crypt: string;
  Algorithmus: TCipherClass;
.
.
.
.
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  if ComboBox1.text = 'Blowfishthen Algorithmus := TCipher_Blowfish;
  if ComboBox1.text = 'Rijndaelthen Algorithmus := TCipher_Rijndael;
  if ComboBox1.text = 'Sapphire IIthen Algorithmus := TCipher_Sapphire II;
end;
aber da bekomme ich die Meldung undefinierter Bezeichner "TCipher_Rijndael" und
undefinierter Bezeichner "TCipher_Sapphire II"
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#4

Re: VerschlüsselungsProgramm

  Alt 11. Sep 2005, 11:29
Zitat von Sko:
...aber da bekomme ich die Meldung undefinierter Bezeichner "TCipher_Rijndael" ...
Binde noch die Unit Cipher1 mit ein.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Sko
Sko

Registriert seit: 11. Sep 2005
327 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: VerschlüsselungsProgramm

  Alt 11. Sep 2005, 11:36
Danke jetz funktionierts.

Aber kann ich irgendwie überprüfen, ob auch ein anderer Algorithmus verwendet wird? Ich hab jetz mal zum testen ein Word-Dokument verschlüsselt und bei allen 3 Varianten sah der Inhalt danach gleich aus.

Und dann noch was: bei größeren Dateien dauerts ja etwas mit der Verschlüsselung, kann ich da irgendwie eine ProgressBar einbauen?
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#6

Re: VerschlüsselungsProgramm

  Alt 11. Sep 2005, 11:44
Zitat von Sko:
... Aber kann ich irgendwie überprüfen, ob auch ein anderer Algorithmus verwendet wird?
Gehe das Programm eninmal Schritt für Schritt durch (Breakpoint setzen) durch und prüfe ob alle so passiert wie Du möchtest.

Zitat:
... kann ich da irgendwie eine ProgressBar einbauen?
Verwende nicht die Methode EncodeFile sondern EncodeBuffer. Dann kannst Du bei einer Buffergröße von z.B. 1024 Byte eine passende Progressbar verwenden welche Du dann jedesmal positionierst.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Sko
Sko

Registriert seit: 11. Sep 2005
327 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: VerschlüsselungsProgramm

  Alt 11. Sep 2005, 11:54
So, das mit den Algorithmen funktioniert, aber wie mach ich das mit dem Buffer?
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#8

Re: VerschlüsselungsProgramm

  Alt 11. Sep 2005, 12:04
Zitat von Sko:
So, das mit den Algorithmen funktioniert, aber wie mach ich das mit dem Buffer?
Du könntest die Datei zuerst in einen Stream laden.
Dann kopierst Du immer x-Byte vom Stream in einen Buffer. Diesen verschlüsselst Du dann und kopierst ihn in einen zweiten Stream. Dies machst Du solange bis Du am Ende des Quellstreams bist.

Ach ja,
hatte ich total vergessen:

"Herzlich Willkommen in der Delphi-PRAXiS".
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#9

Re: Arbeiten mit dem DEC

  Alt 11. Sep 2005, 12:09
Oder du benutzt gleich die Stream Methoden der Cipher Objekte, eg. TCipher_Blowfish.EndecodeStream() etc.

Gruß Hagen
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Arbeiten mit dem DEC

  Alt 11. Sep 2005, 12:17
Zitat von negaH:
Oder du benutzt gleich die Stream Methoden der Cipher Objekte, eg. TCipher_Blowfish.EndecodeStream() etc...
Hai Hagen,

haben die inzwichen eine Callbackmethode oder wie kann man dann eine Progressbar einbauen?
Oder meinst Du den Sourcestream "blockweise" in den Deststream zu verschlüsseln.
Wird die Position der Streams durch deine Methoden so gesetzt das man dies machen kann oder muss ich mich darum kümmern?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 13: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