Ez melyik titkosítás?

Fórumok

Sziasztok!

Perlben kellene lekérdeznem egy mysql adatbázist, amit egy PHP program kezel, de úgy akarom megoldani, hogy egy adott szintű (php programnak megfelelő) felhasználóval lehessen csak ezt megtenni, ergo egy bizonyos felhasználónév-jelszó párossal lehessen a lekérdezésig eljutni.
Az adatbázisban így tárolódnak a jelszavak pl.:

084c0343a4486fd05530df6c705c9ba4 stb.

Hát, ez sem des, sem md5. Szeretném úgy az egyezést megvizsgálni, mint pl. azt a Crypt::PasswdMD5-tel lehet, de tudnom kellene, hogy ez milyen kódolás kimenete.

Előre is köszi a segítséget.

Hozzászólások

*.php-ben meg tudod keresni hol irja az adott tabla adott mezojet, ottlesz valahol a kodolas is.

egw: eGroupWare
Ha jól tudom az eGroupWare is MD5-öt használ. Amúgy első ránézésre énis annak látom.
Én úgy oldanám meg, hogy legregisztálnám magamat az adott egw rendszerbe. Akkor tudom a jelszót. És lekódolom MD5-el, meg ami még szóba jöhet. Aztán amelyik egyezik, olyan a kódolás.

"Van egy teória, miszerint ha egymillió majomnak adsz egy-egy írógépet, amit elkezdenek össze-vissza véletlenszeruen püfölni, akkor elobb-utóbb megírják Shakespeare összes muvét. Az Internetnek hála, ma már tudjuk, hogy ez nem igaz.,,

md5(alma): ebbc3c26a34b609dc46f5c3378f96e08 :32 karakter
sha1(alma): 5f5ea3800d9a62bc5a008759dbbece9cad5db58f :40 karakter
crypt(alma): $2a$05$48Odsedb8TmTby3oPianIep2cfaQScrSIieB05mkhs/d0nMgjE5GC :60 karakter (ez a php-s crypt!)
SELECT ENCRYPT('alma'): UX6LHaSC3CUMk :14 karakter
SELECT MD5('alma'): ebbc3c26a34b609dc46f5c3378f96e08: 32 dettó
SELECT SHA1('alma'): 5f5ea3800d9a62bc5a008759dbbece9cad5db58f :40 dettó.

Szerintem MD5.

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

Letezik olyan veges hosszusagu karaktersorozat, aminek ez az md5sum-ja. <= ez egy igaz allitas; ettol fuggetlenul ez barmi lehet, amit mondtak:
- random 32 hexa karakter
- egy sha1 elso 32 hexa jegye
- ...
de ettol fuggetlenul valoban az a legvaloszinubb hogy ez valaminek az md5sum-ja (nem biztos hogy a jelszonak, lehet hogy jelszo+salt-nak, ...).

Ha az e-groupware, akkor ha jól rémlik, többféle hash-t (és nem titkosítást) tud a jelszótárolásra -> nézd meg a beállításait.

John the Ripper szerint:
john teszt
Loaded 2 passwords with no different salts (NT LM DES [48/64 4K])

A 2 passwords miatt nem tudom mennyire lehet hiteles amit mond, a file-ban ez van:
teszt:084c0343a4486fd05530df6c705c9ba4

hossz alapján md5-nek kellene lennie.

Kb. 10 perc alatt egy függvény a kódból...

http://www.egroupware.org/viewvc/trunk/setup/account_migration.php?revi…


function hash_sql2ldap($hash)
{
    $type = $GLOBALS['egw_info']['server']['sql_encryption_type'];
    
    if (preg_match('/^\\{(.*)\\}(.*)$/',$hash,$matches))
    {
        $type = $matches[1];
        $hash = $matches[2];
    }
    switch(strtolower($type))
    {
        case '':    // not set sql_encryption_type
        case 'md5':
            $hash = '{md5}' . base64_encode(pack("H*",$hash));
            break;
        case 'crypt':
            $hash = '{crypt}' . $hash;
            break;
            
        case 'plain':
            break;
    }
    return $hash;
}

Tenyleg, most igy jobban belegondolva, igaz-e az, hogy az md5: {0,...255}^N = {0,...,255}^32 lekepezes/fuggveny szurjektiv? Hm.