Public feed
#724690
<?phpfunction dhash2 ($str){ $orig = $str; // Myöhempää käyttöö varten :PPP $kryptisempi = (strlen($orig) > 2)?round(strlen($orig)/3):2; // Pistetään vähän alkukireyttä peliin :-)) $str = sha1(sha1($str)); // Kirjaimet-taulukko mukaan $kirjaimet = array("a","b","c","d","e","f"); // Numerot-taulukko mukaan $numerot = array(1,2,3,4,5,6,8,9); // Merkit-taulukko mukaan $merkit = array("!","@","#","$",".","&","?","_","-","^"); // Hinkataan aluilleen hassu pikku taulunen $taulukko = array(); // Alustetaan muutoslaskuri $muutoslaskuri = 0; // Sitte alotetaan pikku kieputtelu edestaas ettei kukaan varmasti keksi mitään järkevää :P for($i=0;$i<strlen($str);$i++) { // Hieman sotkua aluksi -- Käytetään olemassa olevaa hashia vähän mielenkiintoisemmin... 0, $i :) $valiaikainen = substr(sha1(substr($str,0,$i)),0,4); // Ei päästetä muutoslaskuria yli viiden if($muutoslaskuri > 5) $muutoslaskuri = 0; // Vain joka toiselle kierrokselle paukautetaan muuttelufunktiot $muutos = ($i%2)?$muutoslaskuri:false; //Suoritetaanko muuttelua tällä kertaa? if($muutos == true) { // Sitten käytetään edellisen vaiheen tulos hasukan muokkauskoodin lävitse (olettaen, että se suoritetaan tällä kertaa) - leetit mukana ofc :) $valiaikainen = str_replace($kirjaimet[$muutos],round($i+strlen($orig)%strlen($orig)+0.1337,5),$valiaikainen); } //Lisätään sotkut taulukkoon $taulu[] = $valiaikainen; //Lisätään muutoslaskuriin arvoa $muutoslaskuri++; } // Kootaan tallenne-muuttuja ja tyhjätään taulu $tallenne = implode("",$taulu); empty($taulu); $taulu = array(); // Alustetaan muutoslaskuri $muutoslaskuri = 0; // Muutetaan tulosta vähän kryptisemmän näköiseksi :D for($i=0;$i<strlen($tallenne);$i++) { if(in_array($tallenne{$i}, $numerot) && $i%$kryptisempi) { // Ei päästetä muutoslaskuria yli yhdeksän if($muutoslaskuri > 9) $muutoslaskuri = 0; $haku = $muutoslaskuri - $tallenne{$i}; if($haku < 0) $haku * (-1); $muutettu = $merkit[$haku]; $muutoslaskuri++; } else { $muutettu = $tallenne{$i}; } $taulu[] = $muutettu; } // Kootaan tallenne-muuttuja ja tyhjätään taulu $tallenne = implode("",$taulu); empty($taulu); $taulu = array(); // Puolet pois :P for($i=0;$i<strlen($tallenne);$i++) { if($i%2) $taulu[] = $tallenne{$i}; } // Kootaan lopputulos, ettei koko työ hukkaan mennyt o_O $lopputulos = implode("",$taulu); // Ulostetaan se maailmalle! return $lopputulos;}echo dhash2($_GET["h"]);?>