AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Schneller Code - Von Delete und Insert -> Copy -> ???

Schneller Code - Von Delete und Insert -> Copy -> ???

Ein Thema von -Lucky- · begonnen am 6. Mai 2008 · letzter Beitrag vom 8. Mai 2008
Antwort Antwort
Seite 3 von 4     123 4   
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
34.931 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#21

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 12:51
Zum Thema UPX und Co.:
Als Schutz bringt das nichts, da man dieses leicht wieder entpacken/entschlüsseln kann.
Abgesehn davon, daß selbst bei gepackter/verschlüsselter EXE der Code(Algo) ungeschützt, ungepackt, unverschlüsselt im RAM liegt, denn sonst könnte Windows ja dein Programm nicht ausführen.
Und dazu liegt auch noch alles Nötige für die Entschlüsselung und/oder das Entpacken direkt in der EXE (sie muß sich ja selbst entpacken/entschlüsseln können).

PS: such mal im Forum nach Beiträgen des Users "negah" (Hagen) ... ist einer der größten Verschlüsselungsexperten ... also gibt's viel guten Stoff zum lesen,
aber nach den Beschreibungen hier, würd ich jetzt einfach mal vermuten, daß er deinen Algo in der Luft zerreißt und dirleicht beweißt, daß er unsicher ist ... sind halt, selbst wenn in guter und sicherer Kern dahinterstecken könnte, zuviele Schwachstellen drin, welche das Ganze wieder insgesammt unsicher machen ...
jedenfalls scheint es mir so, denn wozu sollte es sonst nötig sein den Algo mit "billigen" Tricks zu verschleiern?
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014
  Mit Zitat antworten Zitat
-Lucky-

Registriert seit: 4. Mai 2008
28 Beiträge
 
Delphi 7 Enterprise
 
#22

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 13:00
Zitat:
zu deinem patent (a) gibts hier in europa keine softwarepatente
Wie jetzt? Dann kann ich mir das also sparen... mhh...

Theoretisch könnte ich den Algorithmus ja dann doch ins Forum schreiben. Ich werd drüber nachdenken.

Was das copy angeht:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var text1,text2: string;
i,x: integer;
begin
  text1 := FileToString('abc.xyz'); // datei hat nix zu sagen, dient als temp. Datenquelle
  x := length(text1);
  ShowMessage('Messung starten');
  for i := 1 to 1000 do
  begin
     text2 := copy(text1,20000,500000 - 19999) + copy(text1,1,19999) + copy(text1,500001,x - 500000);
  end;
  ShowMessage('Fertig');
end;
Dauer: 37 Sekunden


Delphi-Quellcode:
procedure TForm1.Button5Click(Sender: TObject);
var text1,text2: string;
i,x: integer;
begin
  text1 := FileToString('abc.xyz'); // datei hat nix zu sagen, dient als temp. Datenquelle
  x := length(text1);
  ShowMessage('Messung starten');
  for i := 1 to 1000 do
  begin
    SetLength(text2, x); // Speicher reservieren
    Move(text1[20000], text2[1], 500000 - 19999);
    Move(text1[1], text2[500001 - 20000], 19999);
    Move(text1[500001],text2[500001], x - 500001);
  end;
  ShowMessage('Fertig');
end;
Dauer: 11 Sekunden


Delphi-Quellcode:
procedure TForm1.Button7Click(Sender: TObject);
var text1,text2: string;
i,x: integer;
begin
  text1 := FileToString('abc.xyz'); // datei hat nix zu sagen, dient als temp. Datenquelle
  x := length(text1);
  ShowMessage('Messung starten');
  for i := 1 to 1000 do
  begin
    SetLength(text2, x); // Speicher reservieren
    text2 := copy(text1,20000,500000 - 19999) + copy(text1,1,19999) + copy(text1,500001,length(text1) - 500000);
    SetLength(text2, x);
    MoveMemory(@text2[1], @text1[20000], 500000 - 19999);
    MoveMemory(@text2[500000 -19999 + 1], @text1[1], 19999);
    MoveMemory(@text2[500001], @text1[500001], x-500001);
  end;
  ShowMessage('Fertig');
end;
Dauer: 47 Sekunden


Damit wäre diese Frage auch beantwortet. Mit Move kann man die Meiste Zeit einsparen, dann geht das ganze 3 mal so schnell

Werd dies auch auf alle anderen Stellen übertragen, wo Zeichenketten zusammengefügt werden. Wieder etwas neues dazu gelernt

Aber eine Frage habe ich jetzt noch:

Wenn ich hier in Deutschland dieses Programm nun kostenlos zur Verfügung stelle, könnte ich dann von den anderen Ländern aus Ärger bekommen? Es liegt ja nahe, dass auch in diesen Ländern das Programm genutzt werden "könnte". Oder ist dann der Anwender schuld, der es benutzt?

Ich bin gerade dabei das Programm ins Englische zu übersetzen. Kann ich da Probleme bekommen wenn ich das Online stelle, und auch Englisch unterstützt wird? Weil damit fördere ich ja quasi die Verbreitung auf den anderen Kontinenten. Kennt sich da jemand aus?


Zitat:
PS: such mal im Forum nach Beiträgen des Users "negah" (Hagen) ... ist einer der größten Verschlüsselungsexperten ... also gibt's viel guten Stoff zum lesen,
aber nach den Beschreibungen hier, würd ich jetzt einfach mal vermuten, daß er deinen Algo in der Luft zerreißt und dirleicht beweißt, daß er unsicher ist ... sind halt, selbst wenn in guter und sicherer Kern dahinterstecken könnte, zuviele Schwachstellen drin, welche das Ganze wieder insgesammt unsicher machen.
Ich werde mich mit ihm in Kontakt setzen, das wäre schon krass wenn es da ne Schwachstelle gibt, denn ich habe keine Hintertüren eingebaut, es wird noch nicht mal erkannt, ob das Passwort richtig ist, also kein Rückgabewert geliefert. Naja, mal schauen.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.329 Beiträge
 
Delphi 7 Personal
 
#23

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 13:22
Hallo Lucky,

Ich weiß ja nicht warum Du gerne ein Patent auf deinen Algoritmus haben möchtest, vermute aber Du hast falsche Vorstellungen von den Möglichkeiten eines Patentes.

1) Wie schon oben angemerkt, gibt es in Europa keine Softwarepatente! Wenn es sich allerdings um die Steuerung eines bestimmten Gerätes handelt, sind die Chancen schon größer.

2) Gesetzt der Fall Du hast ein (erteiltes) Patent, dann hast Du zunächst nur ein Stück Papier auf dem Patent steht. Weiterhin wird in diesem Patent die Vorgehensweise Deines Programms veröffentlicht! Jeder kann also Lesen was Du Dir ausgedacht hast, und jeder weiß, da? es sich hierbei um Deine Idee handelt.

3) Geld kannst Du mit dem Patent nur verdienen, wenn Du eine oder mehrere Lizenzen verkaufen kannst. Damit vergist Du an Deine Lizenznehmer das Recht, deine Idee zu nutzen. Die andere Möglichkeit ist es einem Wettbewerber/Konkurrenten nachzuweisen, daß er Dein Patent nutzt, dann kannst Du per Gerichtsbeschluß eine Zwangslizenz oder einen Schadenersatz erzwingen. Du mußt nur nachweisen, daß er Dein Patent nutzt.

4) Mach bitte nicht den Fehler Patent=Idee zu setzen. Letztendlich wird durch das Patent das geschützt was Du beschrieben hast. Im pratischen Beispiel hast Du den Code durch die Verwendung von MOVE optimiert. Wenn ich stattdessen copy nutzen würde, müßte letztendlich ein Gericht entscheiden, ob ich Dein Patent verletze. Und ohne Urteil gibt's kein Geld.

5) Wenn Du denn ein Patent in den USA hättest, dann wäre die Nutzung auch nur in den USA geschützt und überall sonst auf der Welt könnte Dir jeder eine lange Nase drehen.

Gruß
K-H
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#24

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 13:23
Zitat von -Lucky-:
Wenn ich hier in Deutschland dieses Programm nun kostenlos zur Verfügung stelle, könnte ich dann von den anderen Ländern aus Ärger bekommen? Es liegt ja nahe, dass auch in diesen Ländern das Programm genutzt werden "könnte". Oder ist dann der Anwender schuld, der es benutzt?
musst halt vertraglich ausschliessen, dass es in den ländern benutzt werden kann, wo du probleme bekommen würdest. z.b. beschränkung auf deutschland... wenn er akzeptiert und es doch in die USA oder z.b. nach lybien nimmt, ist er für die konsequenzen selber schuld ...
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.329 Beiträge
 
Delphi 7 Personal
 
#25

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 13:49
Zitat:
Wenn ich hier in Deutschland dieses Programm nun kostenlos zur Verfügung stelle, könnte ich dann von den anderen Ländern aus Ärger bekommen? Es liegt ja nahe, dass auch in diesen Ländern das Programm genutzt werden "könnte". Oder ist dann der Anwender schuld, der es benutzt?

Ich bin gerade dabei das Programm ins Englische zu übersetzen. Kann ich da Probleme bekommen wenn ich das Online stelle, und auch Englisch unterstützt wird? Weil damit fördere ich ja quasi die Verbreitung auf den anderen Kontinenten. Kennt sich da jemand aus?
Na Ja, auf legalem Wege wird Dir wohl keiner in die Parade fahren können. Soweit ich weiß kanns Du in Deutschland keinen Ärger bekommen. Aber es gibt ja noch ein paar andere Länder, und die haben u.U. ein anderes Verständnis von freiem Gedankenaustausch.

aber "Ideen sind wie Zahnpasta, man kann sie nicht wieder in die Tube zurück drücken".
(ist leider nicht von mir!)

Auf der anderen Seite wenn Du deine Idee nicht veröffentlichst, bekommt auch keiner mit wie gut Du bist!

Gruß
K-H
  Mit Zitat antworten Zitat
Benutzerbild von skyobserver
skyobserver

Registriert seit: 18. Mai 2005
Ort: Ense
114 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#26

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 14:02
Zum Thema Patent...

Kannst Du mathematisch beweisen wieviele Möglichkeiten es braucht um den richtigen Schlüssel zu finden?
Kannst Du mathematisch die Warscheinlichkeit des Auftretens von Mustern zur verkürzten Suche berechnen?

Ich will dich nicht entmutigen, aber wenn nicht, kannst Du den Gedanken abschreiben das jemals Jemand
Interesse an deinem Verfahren hat! "Glauben" ist halt nicht "Wissen" und wer heute hochsensible Daten
verschlüsselt (und Gebühren für das Verfahren zahlt) der will halt "Wissen" wie sicher es ist.
Schon oft haben sich scheinbar sichere Verfahren als einfach zu knacken herausgestellt, wenn erstmal
ein Angriffspunkt gefunden ist.

Wenn Du hunderte von Misch- und Umstellverfahren in einer Geheimen Reihenfolge anwendest mußt Du
sicherstellen das keine Vereinfachung existiert: x*10/2 und x*5 sind unterschiedliche Operationen
die zum gleichen Ergebnis führen.
Wenn Du einen Rubik-Würfel verdrehst indem Du immer den gleichen Zug machst kommst Du irgendwann
wieder zum Ausgangspunkt zurück, sagen wir mal nach 128 Zügen. Wenn Du jetzt drei verschiedene
Züge mit je 128er Zyklus kombinierst (1,2,3,1,2,3,...) erwartest Du sicher einen Gesamt-Zyklus von
128*128*128=2097152 Zügen. Das wird selten der fall sein! Es wird Dir fast immer passieren, daß
während dieser 2097152 Züge der Würfel mehrmals die Ausgangsposition durchläuft und in diesen
Fällen sinkt die Anzahl der Möglichkeiten dann auf 2097152 geteilt durch die Anzahl der passagen
der Ausgangsposition. Das Große Ziel der Kryptologie ist es also ein Verfahren mir einem möglichst
großen und vor allem perfekten Zyklus ohne Wiederholungen zu finden. Da kommen die HASH-Funktionen
wieder ins Spiel: Eine HASH-Funktion liefert zu einem Wert "A" einem Wert "B". Allerdings können
mehrere verschiedene Werte "A" zum gleichen Wert "B" führen (der umgekehrte Weg ist also nicht
eindeutig).
HASH-Funktionen werden heutzutage von Mathe-Genies und Supercomputern Tag und Nacht analysiert um
herauszufinden welche "A"s zum gleichen "B" führen. Es gibt bekannte HASH-Funktionen die lange als
sicher galten bis man einen Weg fand mit relativ geringem Rechenaufwand zu einem bestimmten "A" alle
Gegenstücke zu finden. Soviel ich weiß gibt es nur wenige HASH-Funktionen bei denen bis zum heutigen
Tage keine Pärchen gefunden werden konnten.

Ein Verschlüsselungsverfahren wird heute nur noch akzeptiert, wenn das Verfahren bekannt und für
Jedermann zugänglich ist. Die Sicherheit darf nur von dem Schlüssel (oder den Schlüsseln) abhängen;
nicht aber von dem Verfahren an sich. Darum wird auch bei jeder Verschlüsselung immer der Name
angegeben (z.B. PGP). Es ist halt kein Geheimnis wie es funktioniert...das kann man im Internet nachlesen!

Da Du uns aber nicht sagen möchtest wie Dein Verfahren funktioniert, folgere ich daraus, daß Niemand
den verschlüsselungsvorgang kennen darf, weil er sonst in der Lage wäre deinen Code zu knacken.

Daraus ergibt sich ein gewaltiges Sicherheitsloch: Du must dem Anwender ja eine Software geben, damit
er die Daten wieder entschlüsseln kann. Ein Hacker wird den Binärcode deiner Software reassemblieren
und sehen was dein Programm macht. Dagegen kann man nichts unternehmen. Ein Programm das ein Computer
abarbeiten kann, kann auch ein Programmierer interpretieren. Und schon ist das Geheimnis kein Geheimnis mehr.


Also wie willst Du mich von der Sicherheit deines Verfahren überzeugen damit ich es kaufe?
Du kannst mir ja nicht sagen wie es funktioniert damit ich einschätzen kann ob es sicher ist.
Jeder der was verkaufen will erzählt mir doch heute das blaue vom Himmel und sein Produkt sei
das beste. Da verlange ich schon ein paar Expertiesen von namhaften Forschungsinstitutionen.
Hast Du das Geld eine Solche Expertiese anfertigen zu lassen?

Was wenn sich herausstellt, das eine Vereinfachung existiert oder dein Programm analysiert wurde?
Die vertraulichen Daten all meiner Kunden können von jedermann im Internet gelesen werden.
Meine Kunden verklagen mich auf Schadensersatz und ich bin pleite!
Ich wiederum verklage dich auf mehrere Millionen!


Wenn Du jetzt nicht nachdenklich geworden bist und Dir immer noch sicher bist dann wünsche ich
Dir auf jeden Fall viel Erfolg (vielleicht kannst Du ja wirklich früher mit dem Arbeiten aufhören)!
Die größte Enttäuschung für einen Perfektionisten ist die Realität
  Mit Zitat antworten Zitat
-Lucky-

Registriert seit: 4. Mai 2008
28 Beiträge
 
Delphi 7 Enterprise
 
#27

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 14:36
Zitat:
Kannst Du mathematisch beweisen wieviele Möglichkeiten es braucht um den richtigen Schlüssel zu finden?
Ja. Das Passwort muss mind. 10 Zeichen lang sein, und für jedes Zeichen gibt es 256 Möglichkeiten. Das Programm achtet auch darauf, dass nicht nur Buchstaben und Zahlen vorhanden sind und hilft bei der Eingabe von Steuerzeichen etc.

Macht mindestens!!! 256^10 Möglichkeiten = 1208925819614629174706176 Möglichkeiten.

Im Durchschnitt braucht man jedoch nur 604462909807314587353088 Versuche.

Noch einmal möchte ich anmerken, für den Fall dass das Passwort minimal ist, also 10 Zeichen. Es wird länger sein, darum gibt es nahezu unmöglich viele Möglichkeiten.

Gehen wir mal von einem Rechner aus, der knapp 4 mal so schnell wie der schnellste Rechner der Welt ist - also wir denken schon mal in die Zukunft vorraus. das wären 10^15 Befehle die er in einer Sekunde ausführen kann. Grob gerechnet, 1.000.000 mal so schnell wie nen durchschnitts PC.

Wenn der Algorithmus exakt 5 Sekunden benötigt, und irgend jemand das irgendwie auf 1 Sekunde reduzieren könnte, dann bräuchte man zum Knacken durchschnittlich 19167393131891000 Jahre auf einem Handelsüblichen PC.

Zweiter Fall: Der Super Rechner. Benötigt immer noch 19167393131 Jahre.

Zitat:
Kannst Du mathematisch die Warscheinlichkeit des Auftretens von Mustern zur verkürzten Suche berechnen?
Ja. Dafür müsste ich dir aber das Verschlüsselungsverfahren erklären, das mache ich aber erst im November, da ich bei einem Wettbewerb teilnehmen möchte.

Zitat:
Schon oft haben sich scheinbar sichere Verfahren als einfach zu knacken herausgestellt, wenn erstmal
ein Angriffspunkt gefunden ist.
Ich werde den Algorithmus im November offen legen. Denn selbst wenn ich dies tue sind die Daten noch sicher. Die Verschlüsselung hängt 100% vom Passwort ab. Muster können nicht gefunden werden, das geht nicht, da jede Verschlüsselung einzigartig ist. Selbst wenn man eine Million mal die gleiche Datei auf diese Art mit dem gleichen Passwort verschlüsseln würde, hätte man anschließend eine Million verschiedene verschlüsselte Dateien. Auch wenn ihr es mir nicht glaubt, das funktioniert. Auch das Entschlüsseln.

Zitat:
Wenn Du hunderte von Misch- und Umstellverfahren in einer Geheimen Reihenfolge anwendest mußt Du
sicherstellen das keine Vereinfachung existiert:
Habe ich sicher gestellt, glaub mir einfach

So etwas wie Hash Funktion gibts bei mir gar nicht. Einfach aber Sicher - davon bin ich überzeugt.

Als ich mein Projekt im Infounterricht in 90 Minuten präsentiert habe, da hat mein Info Lehrer einfach nur "krass" gesagt, mehr nicht. Dort habe ich das Verfahren auf einfache Art und Weise erklärt.

Zitat:
Da Du uns aber nicht sagen möchtest wie Dein Verfahren funktioniert, folgere ich daraus, daß Niemand
den verschlüsselungsvorgang kennen darf, weil er sonst in der Lage wäre deinen Code zu knacken.
Das stimmt nicht, ich möchte nur nicht, dass andere meine Ideen verwenden, bevor ich es getan habe. Ich wäre dafür, dass wir dieses Thema hier schließen, diese Topic wenn das möglich ist. Die Eigentliche Frage wurde beantwortet, mit der Prozedur Move kann man das copy etwas beschleunigen, also nicht direkt das copy, aber das mit den strings zusammen setzen.

Zitat:
Daraus ergibt sich ein gewaltiges Sicherheitsloch: Du must dem Anwender ja eine Software geben, damit
er die Daten wieder entschlüsseln kann. Ein Hacker wird den Binärcode deiner Software reassemblieren
und sehen was dein Programm macht. Dagegen kann man nichts unternehmen. Ein Programm das ein Computer
abarbeiten kann, kann auch ein Programmierer interpretieren. Und schon ist das Geheimnis kein Geheimnis mehr.

Wie gesagt, da gebe ich dir Recht. Darum werde ich den Algorithmus offen legen, wenn das Programm öffentlich ist. Dies wird anfang November sein. Ich verspreche, dass dieses Forum das erste sein wird, welches den Code einsehen kann. Dann dürft ihrs auseinander schlachten und negative Kritik äußern.

Zitat:
Also wie willst Du mich von der Sicherheit deines Verfahren überzeugen damit ich es kaufe?
Zu kaufen gibts das nicht, das wird kostenlos sein.

Zitat:
Was wenn sich herausstellt, das eine Vereinfachung existiert oder dein Programm analysiert wurde?
Das kann nicht passieren. Es ist nicht so ertwas wie Zwei Zeichen austauschen, Substitution oder Transposition. Indirekt schon, aber das Ergebnis hat nichts mit dem Originaltext zu tun. Ich mache mir mehr Gedanken um die Rechtlichen Sachen.

Noch mal zu dem Post davor:

Zitat:
musst halt vertraglich ausschliessen, dass es in den ländern benutzt werden kann, wo du probleme bekommen würdest. z.b. beschränkung auf deutschland... wenn er akzeptiert und es doch in die USA oder z.b. nach lybien nimmt, ist er für die konsequenzen selber schuld ...


Wie kann ich das machen? Das Programm ist eine normale Exe Datei. Da wird nichts installiert. Es wird zwar eine Readme.txt erzeugt und geöffnet, aber erst nach dem Programmstart. Wo kann ich eine solche Beschränkung also bekannt geben?

Könnte ich so etwas schreiben wie: Falls sie nicht aus Deutschland sind, dann informieren Sie sich bitte, ob das Programm in Ihrem Land zugelassen ist. Es handelt sich hierbei um ein Verschlüsselungsverfahren, welches wohl sehr schwer zu knacken sein wird.

Geht das?
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#28

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 14:59
Zitat von -Lucky-:
Ja. Das Passwort muss mind. 10 Zeichen lang sein, und für jedes Zeichen gibt es 256 Möglichkeiten. Das Programm achtet auch darauf, dass nicht nur Buchstaben und Zahlen vorhanden sind und hilft bei der Eingabe von Steuerzeichen etc.

Macht mindestens!!! 256^10 Möglichkeiten = 1208925819614629174706176 Möglichkeiten.

Im Durchschnitt braucht man jedoch nur 604462909807314587353088 Versuche.
tja, hier ist schon der erste denkfehler. die passwörter sind nicht über den gesamten zeichensatz gleichverteilt. somit hast du hier schon eine viel geringere sequenz. selbst wenn du auf die gross- und kleinschreibung achtet, wirst du da wohl nur auf 70 verschiedene zeichen kommen. damit reduzierst du den verschlüsselungsraum schon gewaltig.

ausserdem weigerst dich auch behaarlich, den code offen zu legen. spätestens beim wettbewerb werden sie deinen code auseinandernehmen und dir die schwachstellen auflisten.

falls es das doch überleben sollte, solltest du vor einer veröffentlichung erst mal deinen quälcode hier prüfen lassen. ansonsten würd ich gleich auf eine veröffnetlichung verzichten. dann hast du das problem nicht, mit den unterschiedlichen rechtsvorschriften ... und schadensersatzforderungen ...

für die lizinzfrage, musst du dir vor dem herunterladen und vor dem programmstart bestätigen lassen (am besten mit rückmeldung), dass das programm vom kunden nur im definierten rahmen (z. b. land) eingesetzt werden darf. z.b. über freischaltcode und registrierung. den code könntest dann direkt an die ECHSE ran hängen... dann kann er das progry auch auf 'n USB stick verwenden...
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.292 Beiträge
 
Delphi XE7 Professional
 
#29

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 15:04
Zitat von grenzgaenger:
Zitat von -Lucky-:
Ja. Das Passwort muss mind. 10 Zeichen lang sein, und für jedes Zeichen gibt es 256 Möglichkeiten. Das Programm achtet auch darauf, dass nicht nur Buchstaben und Zahlen vorhanden sind und hilft bei der Eingabe von Steuerzeichen etc.

Macht mindestens!!! 256^10 Möglichkeiten = 1208925819614629174706176 Möglichkeiten.

Im Durchschnitt braucht man jedoch nur 604462909807314587353088 Versuche.
tja, hier ist schon der erste denkfehler. die passwörter sind nicht über den gesamten zeichensatz gleichverteilt. somit hast du hier schon eine viel geringere sequenz. selbst wenn du auf die gross- und kleinschreibung achtet, wirst du da wohl nur auf 70 verschiedene zeichen kommen. damit reduzierst du den verschlüsselungsraum schon gewaltig.
.. nun, man könnte das Passwort ja als mindestens 20 stellige HexNotation eingeben.
Dann hätte man den Spielraum von 0 bis 255.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von skyobserver
skyobserver

Registriert seit: 18. Mai 2005
Ort: Ense
114 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#30

Re: Schneller Code - Von Delete und Insert -> Copy ->

  Alt 7. Mai 2008, 15:22
Zitat:
Ist es möglich, aus den 1en und 0en in irgendeiner Art und Weise einen Quellcode zu erzeugen?
Ja, man kann den Binärcode wenigstens wieder zurück in Assemblercode übersetzen. Der kann dann von einem
guten Programmierer halbwegs gelesen werden. Zurück in einen Hochsprachen-Quelltext (Basic/Delphi/C++) kommt
man nicht wirklich (Die meisten Strukturen und Variablennamen gehen beim Compilieren verloren).

Zitat:
Dann dürft ihrs auseinander schlachten und negative Kritik äußern
Die hier geäußerten Bedenken sollen deinen Code sicher nicht madig machen. Niemand
von uns weiß schließlich wieviel Du über die Mathematik weißt oder wie lange Du Dich
schon mit dem Thema beschäftigt hast. Wir wollen nur das Du deinen Code selber kritisch
betrachtest ob er unseren Bedenken standhält.

Man will hier nur sicherstellen, daß Du kein Träumer bist den man auf dem Boden der
Tatsachen zurückholen muß damit er sich nicht eventuell fürchterlich blamiert.

Wie oft liest man nicht im Forum: "Ich habe seit gestern Delphi! Wie schreibe ich
einen unknackbaren Code?"


Ich drücke Dir jedenfalls die Daumen für den Wettbewerb!
Die größte Enttäuschung für einen Perfektionisten ist die Realität
  Mit Zitat antworten Zitat
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 23:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf