- deletet -
...............
Druckbare Version
- deletet -
...............
könnte gehen....und wer gibt dir so viel webspace ?
hmm wenn du 1. ne db hast die so viele exabyte fasst und 2. nen cluster hast der dir das in die db schreibt dann könntest du das machen ;)
ein bisschen rechnen :
ausgehen davon das deine berechnung stimmt:
1,4615016373309029182036848327163e+48 (max anzahl der hashes) * 32 (anzahl der chars pro hash) = 4,6768052394588893382517914646912e+49 byte
um das in tb auszudrücken : 4,676805239458889338251791464691e+37 TerraByte
== 46768052394588893382517914646910 Exabyte... was nach exa kommt weis ich nicht aber ich will es auch nicht wissen.
ich denke damit dürfte deine frage beantwortet sein...
= 46768052394588893382517914646,910 Zettabyte
=4676805239458889338251791,4646910 Yottabyte
weiter weiß ich auch nicht xD und wikipedia nicht :-P
aber das Fazit ist es ist zu viel :-D
aber theoretisch wäre es möglich?
natürlich aber aufgrund der aktuellen pyhsikalischen grenzen von festplatten und cpus bzw gpus ist es nicht umsetzbar
EDIT:// ich glaube ihr habt euch nen bissl verechnet..Zitat:
Zitat von the_dragon
http://img300.imageshack.us/img300/6582/xdhq9.jpg
was willst du uns mit dem screen jetzt beweisen ?!
naja in der datenbank sind 3191395 zeilen die brauchen 262,440 kb und jetz rechne weittaaaa
1. weis ich nicht was die zeilen beinhalten könnte ja auch nur je 1 zeichen enthalten
2. kenn ich mich weder mit php noch mit sql aus und weis deshalb nicht ob mysql in irgend einer form komprimiert, und text lässt sich verdammt gut komprimieren. meine berechnungen haben sich auf txts bezogen die man auf die hdd schreibt
3. weis ich nicht ob die angabe von speicher die pysikalische oder die logische menge ist was einen erheblichen unterschied macht!
4. es ist eig egal wie groß oder klein die db ist denn alles in allem wird sie risig und ob wir nun über billiarden von yottabyte reden oder ein zettabyte (ja ich hab wieder was gelernt ;)) spielt faktisch keine rolle.
1. die zeilen sind in 3 spalten eingeteilt in id(ünterstützt 42 stellen) und in 2 mal 32 zeichen lange textfelder (2 MD5 hash´s)
2. ich rede von anfang an von php und mysql
3. ka
4. doch es spielt eine große Rolle wenn es wirklich so sehr komprimiert ist lässt es sich vllt. umsetzen...
EDIT:// http://denny.de.ohost.de/md5_search.php?zu=euerhash
dort könnt ihr eure hash´s suchen
EDIT:// iwie ist das wie nen kreislauf.. ich lass die datei jetz lange laufen und hab schon 12 mal den selben hash..
Denkst du nicht, wenn es so einfach möglich wäre, dass die onlinecracker die es so im Inet gibt das schon längst getan hätten?
Außerdem wird jetzt immer mehr auf salted Hashes gesetzt.
die angesprochene funktion übernehmen ja die rainbowtables, von daher wird es in gewisser weise schon genutzt nur etwas besser verarbeitet
http://denny.de.ohost.de/md5.php?start=hashZitat:
<?php
$verbindung = mysql_connect ("localhost",
"++++", "+++++")
or die ("keine Verbindung möglich.
Benutzername oder Passwort sind falsch");
$handler = MD5($start);
while($handler != $start){
$handler = MD5($handler);
if($start == $handler){
echo $old;
}
$old = $handler;
mysql_select_db("+++++")
or die ("Die Datenbank existiert nicht.");
}
?>
is doch das selbe wie ne rainbowtable oder?
Added after 4 minutes:
http://denny.de.ohost.de/md5.php?start=hashZitat:
<?php
$verbindung = mysql_connect ("localhost",
"++++", "+++++")
or die ("keine Verbindung möglich.
Benutzername oder Passwort sind falsch");
$handler = MD5($start);
while($handler != $start){
$handler = MD5($handler);
if($start == $handler){
echo $old;
}
$old = $handler;
mysql_select_db("+++++")
or die ("Die Datenbank existiert nicht.");
}
?>
is doch das selbe wie ne rainbowtable oder?
DAS da ist kein Rainbowtables sondern nur ein simples Script mit etlichen Fehlern drin.Zitat:
Zitat von heatshock
Ganz davon abgesehen ist eine Rainbowtable eine spezialisierte Datei die auch mit komprimierungstechniken gestaltet wurde.
Eine Datenbank ist grundlegend anders aufgebaut.
Merke:
Datenbank != Rainbowtable != Wordlist
wo ist da nen fehler drinn?
Was sucht das mysql_select_db() MITTEN in der WHILE Schleife?Zitat:
Zitat von heatshock
Mal ganz davon abgesehen ist dir klar dass du da eine Endlosschleife hast die sich nicht ändert?
mysql_select_db() ist dafür das das script nich abricht wegen 10 ausführungszeit...
nein das ist keineunendliche schleife wenn du logisch nachdenkst..
Du willst also allen ersntes eine Schleife haben die den md5 vom md5 vom md5 berechnet?
Du ziehltst damit also rein auf Kollisionen ab die leider sehr selten sind.
Davon abgesehen wäre dann dein Datenbankaufbau falsch, text ist so ziemlich das schlechteste Feld was man dazu nehmen kann. Nimm lieber 2 mal char(32) und vergess den UNIQUE Index nicht auf 'von', allein durch den Index hast du schon das doppelte an Speicherplatz belegt, oder du willst pro Anfrage die Komplette Tabelle per table scan durchsuchen lassen.