AGB  ·  Datenschutz  ·  Impressum  







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

Gute Algorithmen?

Ein Thema von Delphi Freak · begonnen am 17. Aug 2004 · letzter Beitrag vom 17. Aug 2004
Antwort Antwort
Delphi Freak
(Gast)

n/a Beiträge
 
#1

Gute Algorithmen?

  Alt 17. Aug 2004, 17:56
Hallo,

ich habe gerade angefangen ein Verschlüsselungsprogramm zum Verschlüsseln von Dateien und Texten zu schreiben. Ich habe im Internet u.a. folgende Routinen gefunden. Meine Frage ist nun, ob mir jemand von euch sagen kann, wie diese Algorithmen heißen bzw. wie sicher diese sind.

Routine zur Datei-Verschlüsselung:
Delphi-Quellcode:
procedure FileEncrypt(FileName : string; Key : string);
var
  I : Integer;
  Zeichen : Byte;
  mem : TFileStream;
  keylen : Integer;
  keypos : Integer;
begin
  mem := TFileStream.Create(Filename,fmOpenReadWrite or fmShareExclusive);
  keylen := length(key)-1;
  keypos := 0;
    form2.ProgressBar1.Max:= mem.Size ;
  for I := 1 to mem.Size do
  begin
    if i mod 1000 = 0 then
    form2.ProgressBar1.position := i;


    mem.Position := I;
    mem.Read(Zeichen,1);

    if keypos = keylen then
      begin
        Zeichen := Zeichen-ord(key[keypos]);
        keypos := 0;
      end
    else
      begin
        Zeichen := Zeichen-ord(key[keypos]);
        inc(keypos);
      end;

    Mem.Position := I;
    mem.Write(Zeichen,1);
  end;
  mem.free;
end;
Routine zur Text-Verschlüsselung:
Delphi-Quellcode:
function InternalEncrypt(const S: AnsiString; Key: Word): AnsiString;
var
  I: Word;
  Seed: Word;
begin
  Result := S;
  Seed := Key;
  form2.ProgressBar1.Max:= Length(Result) ;
  for I := 1 to Length(Result) do
  begin

    form2.ProgressBar1.position := i;

    Result[I] := Char(Byte(Result[I]) xor (Seed shr 8));
    Seed := (Byte(Result[I]) + Seed) * Word(C1) + Word(C2)
  end
end;
  Mit Zitat antworten Zitat
bttb930

Registriert seit: 6. Okt 2003
372 Beiträge
 
#2

Re: Gute Algorithmen?

  Alt 17. Aug 2004, 18:34
Naja, der erste algorithmus ist einer der simpelsten die es gibt. ist nur sicher wenn der key lang genug ist.

der zweite algorithmus ist glaube ich wesentlich besser, das hängt aber auch von C1 und C2 ab.

Lies doch mal das Buch von Simon Singh zu dem Thema... sehr unterhaltsam und nebenbei erfährt man viel über Stärken und Schwächen solcher Algorithmen.
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#3

Re: Gute Algorithmen?

  Alt 17. Aug 2004, 18:47
Letzteres sieht aus wie ein Pseudo-Zufallsgenerator, der Dank bekanntem Startwert immer die gleiche 'Zufallsfolge' liefert.
Wenn C1, C2 und Key bekannt sind, gibt es nur noch 255 Möglickeiten
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#4

Re: Gute Algorithmen?

  Alt 17. Aug 2004, 19:09
und fall 1 sieht mir nach cäsar/vigniere aus
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Antwort Antwort


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