AGB  ·  Datenschutz  ·  Impressum  







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

Denkblockade (rekursive funktion)

Ein Thema von Meflin · begonnen am 17. Feb 2005 · letzter Beitrag vom 18. Feb 2005
 
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#1

Denkblockade (rekursive funktion)

  Alt 17. Feb 2005, 19:17
Hi,

vielleicht kennt ja jemand mein brute force tut (hier in der tutorials sparte). das dort beschriebene verfahren ist zwar schön simpel und auch ganz gut was die geschwindigkeit angeht, nur verbruacht es halt wirklich extrem viel arbeitsspeicher. deswegen bin ich momentan dabei mir ein besseres verfahren auszudenken (das natürlich immernoch distributed brute forcing fähig sein soll )

das geht dann wie gefolgt:
gegeben sind ein string mit den zeichen, aus denen das passwort gebildetwerden soll, sowie ein substring, der die teilaufgabe des programms darstellt
Delphi-Quellcode:
string: abcdefghijklmnopqrstuvwxyz
substring: ab
mit diesen daten bilde ich nun zunächst die kombinationen der länge 2 (wie im alten verfahren auch schon)
Delphi-Quellcode:
aa ab ac ad ae af...
ba bb bc bd be bf...
diese kombinationen werden dann im ram behalten. aus ihnen sollen alle anderen passwörter erstellt werden, sodass immer nur diese (wenigen) kombinationen im arbeitsspeicher benötigt werden. das geht auch.

dazu muss man ja für passwörter der länge 4 einfach nur an jeden eintrag dieses buffers jeden anderen eintrag hinhängen. für die der länge 6 (im moment interessieren nur die geraden längen ) muss man für jedes der aus 4 gebildeten nochmal alle aus der liste anhängen.
Delphi-Quellcode:
aa | aa | aa
          ab
          ac
          ...
     ab | aa
          ab
          ac
          ...
     ac | aa
          ab
          ac
          ...
ich hoffe ihr versteht wie ich das meine. nun aber zu meinem problem: die vorher gebildeten längen sollen ja nicht im speicher behalten werden, d.h. ich muss jedes passwort neu berechnen.
da ich ja also sozusagen für jede länge eine größere anzahl von schleifen benötige, ist mir heute in der englisch stunde so gedämmert, dass sich das wohl mit rekursiven funktionen lösen lassen müsste. nur in mathe, erdkunde, deutsch, französisch, latein, geschichte, chemie und musik ist mir kein bisschen ein lichtlein aufgegangen, was diese funktion machen müsste.
kurz gesagt ich habe zwar ein verfahren, bin aber etwas unfähig das nach pascal zu übersetztn

ich hoffe auf eure hilfe

  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 06:38 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