AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

datei kodieren und speichern

Ein Thema von maluprog · begonnen am 4. Feb 2010 · letzter Beitrag vom 4. Feb 2010
Antwort Antwort
Seite 1 von 2  1 2      
maluprog

Registriert seit: 20. Okt 2009
Ort: Wildau
19 Beiträge
 
Delphi 6 Professional
 
#1

datei kodieren und speichern

  Alt 4. Feb 2010, 16:23
hallo,

habe für die kodierung von memo.text in listbox.items.add(s) Text verschlüsselt

Delphi-Quellcode:
procedure TForm1.BCodClick(Sender: TObject);
var s : string[255];
    c : array[0..255] of byte absolute s;
    i : Integer;
begin
        s := memo1.Text;
        For i := 1 To ord(s[0]) do c[i] := superkey[i] Xor c[i];
        ListBox1.Items.Add(s);
        memo1.Clear;
end;
.. diesen dann als txt-datei gespeichert.

Delphi-Quellcode:
procedure TForm1.BExpClick(Sender: TObject);
begin
        if sdcod.Execute then
        begin
         ListBox1.Items.SaveToFile(sdcod.FileName);
        end;
end;
Solange das programm läuft kann ich die kodierte Datei wieder entschlüsseln, verlasse ich das programm nach dem speichern und hole mir diese datei wieder, kann ich sie nicht mehr entschlüsseln.

über:
Delphi-Quellcode:
procedure TForm1.BImpClick(Sender: TObject);
begin
        if odcod.Execute then
        begin
         ListBox1.Items.LoadFromFile(odcod.FileName);
        end;
end;
erfolgt keine decodierung mehr.

Delphi-Quellcode:
procedure TForm1.BdecodClick(Sender: TObject);
var s : string[255];
    c : array[0..255] of byte absolute s;
    i : Integer;
begin
        s := ListBox1.Items[0];
        For i := 1 To Length(s) do s[i] := Chr(superkey[i] Xor ord(s[i]));
        memo1.Text := s;
        ListBox1.Clear;
end;
warum nicht? wer kann helfen, was ist falsch?

malu

[edit=Luckie]Delphi-Tags. Mfg, Luckie[/edit]
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#2

Re: datei kodieren und speichern

  Alt 4. Feb 2010, 16:44
s := ListBox1.Items[0]; Wenn ich nicht daneben tippe, beginnen die Items bei 1

[Edit] Fast vergessen, ersmal herzlich willkommen in der DP
... und XOR ist nicht wirklich eine Verschlüsselung [/Edit]
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: datei kodieren und speichern

  Alt 4. Feb 2010, 16:50
Nein, 0 ist schon richtig.

Und über die Sicherheit von XOR brauchen wir wohl nicht mehr zu diskutieren.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#4

Re: datei kodieren und speichern

  Alt 4. Feb 2010, 16:56
... dann müßte vlt. die For-Schleife mit 0 starten?
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#5

Re: datei kodieren und speichern

  Alt 4. Feb 2010, 17:01
bist du dir sicher, dass dein key der selbe ist ?
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01
  Mit Zitat antworten Zitat
maluprog

Registriert seit: 20. Okt 2009
Ort: Wildau
19 Beiträge
 
Delphi 6 Professional
 
#6

Re: datei kodieren und speichern

  Alt 4. Feb 2010, 17:09
hallo,

mit
s := ListBox1.Items[1]; funktioniert nicht, kommt fehlermeldung = listenindex überschreitung Max(1) !

Schleife mit "0" zu beginnen klappt auch nicht mit decodierung, genauso wie bei "for i := 0 to ... ".

über xor bin ich gleicher meinung, möchte aber dieses lösen!

hoffe noch!

malu
  Mit Zitat antworten Zitat
maluprog

Registriert seit: 20. Okt 2009
Ort: Wildau
19 Beiträge
 
Delphi 6 Professional
 
#7

Re: datei kodieren und speichern

  Alt 4. Feb 2010, 17:13
hallo,

key und schlüssel sind sowohl beim speicher und laden, sowie kodierung und decodieren gleich!

danke bis hierhin, hoffe weiter
vielleicht muß die dateiverschlüsselung anders gespeichert werden?

malu
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

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

Re: datei kodieren und speichern

  Alt 4. Feb 2010, 17:40
Zunächst traue ich deinem SuperKey[i] überhaupt nicht über den Weg!
was sagt denn der Debugger?

Und warum decodierst Du eigentlich einen String und nicht das Byte array?
Gibt es in deinen verschlüsselten Daten $0D,$0A und $00 dann könnte das LoadfromFile in die Hose gehen!

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

Registriert seit: 20. Okt 2009
Ort: Wildau
19 Beiträge
 
Delphi 6 Professional
 
#9

Re: datei kodieren und speichern

  Alt 4. Feb 2010, 18:01
mit dem debugger ist alles o.k


vielleicht noch eine ergänzung;

procedure TForm1.FormCreate(Sender: TObject);
var i :integer;
begin
randseed:=code;
randomize;
for i := 1 to high(superkey) do superkey[i]:=random(255);
end;

wobei einmal als var

superkey : array[1..keysize] of byte;

deklariert ist.

als z. bsp. als const

keysize = 1234;
code = 5678; gesetzt sind. ( können auch andere Zahlenkombinationen sein! )

vielleicht hilft's weiter, habe inzwischen alles probiert!

die datei lädt schon meines erachtens schon richt, sehe ich ander zeichenkette, es muss am decodieren
nach einem neustart liegen!

malu
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: datei kodieren und speichern

  Alt 4. Feb 2010, 18:31
Da SuperKey bei jedem Start ein anderer zufälliger Wert zu gewiesen wird, klappt die Entschlüsselung natürlich nicht.

Und bitte benutzt die Delphi-Tags für deinen Code!
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 19:42 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