hlmod.hu https://hlmod.hu/ |
|
[PHP] MD5 password https://hlmod.hu/viewtopic.php?f=114&t=28955 |
Oldal: 1 / 1 |
Szerző: | The Peace [ 2018.05.03. 12:55 ] |
Hozzászólás témája: | [PHP] MD5 password |
Üdvözletem! Azt hogyan tudnám megoldani hogy SQL-be titkosítva(md5)-ben írja ki a jelszót? Igazándiból már próbálkoztam vele, de átírta SQL-be random MD5-re de akkor meg nem bírtak belépni a megadott jelszóval, aki segít előre is köszönöm.
|
Szerző: | DeteCT0R [ 2018.05.03. 22:03 ] |
Hozzászólás témája: | Re: [PHP] MD5 password |
Alapbol md5-be szurd be a jelszokat. Kód: $mypassword -> MD5('".$mypassword."')valahogy igy. Es loginnal is hasonlo. De ha mar jelszot akarod kodolni akkor SHA2-ot hasznalj az biztonsagosabb. |
Szerző: | The Peace [ 2018.05.03. 22:41 ] |
Hozzászólás témája: | Re: [PHP] MD5 password |
DeteCT0R írta: Alapbol md5-be szurd be a jelszokat. Kód: $mypassword -> MD5('".$mypassword."')valahogy igy. Es loginnal is hasonlo. De ha mar jelszot akarod kodolni akkor SHA2-ot hasznalj az biztonsagosabb. Köszönöm, majd megpróbálom, de lehet akkor mégis csak az SHA2-nek nézek utána. |
Szerző: | Silent [ 2018.05.04. 11:02 ] |
Hozzászólás témája: | Re: [PHP] MD5 password |
Miért lenne biztonságosabb? |
Szerző: | Silent [ 2018.05.04. 11:19 ] |
Hozzászólás témája: | Re: [PHP] MD5 password |
Kicsit kifejtem a dolgokat. SHAXXX MD5 és társai nem "titkosítók". Ezek hash algoritmusok, így jelszavakat plain md5-ben vagy sha256-ban nem éri meg tárolni, maximum egy lépcsővel nehezíted meg az esetleges támadó dolgát. Ha mégis a fentiek közül szeretnél választani, akkor először is érdemes tisztázni, hogy SHA2-t nem használunk, nagyon régi. SHA256-os algoritmus az tényleg trendi, azonban ha választani kellene, még mindig jobb az MD5, mivel kb 60%-al gyorsabb mint a SHA256. (Quick math, az SHA256 egy egységnyi dolgot lehashel 100 másodperc alatt, akkor azt az MD5 40 másodperc alatt megteszi, ez nyilván szürreális és ilyen időtartamok még fájlintegráció check-nél sincsenek jobb esetben). Na de mégis hogyan tárold a jelszavakat? Egy viszonylag könnyen kivitelezhető módszer, ha entitás perzisztáláskor (pl. regisztráció) generálsz az entitásnak egy random stringet, amit eltárolsz mondjuk egy `salt` oszlopban. A jelszót pedig letárolhatod a következő képlettel..: MD5 ( 'PLAIN_PASSWORD' + SALT) vagy akár MD5( 'PLAIN_PASSWORD' + MD5( SALT)) Utóbbi már picit overkill, de láttam már hasonlót. Bejelentkezésnél nyilván nem a plain passwordöt kell összehasonlítanod az adatbázisban lévővel, hanem a fenti algoritmust elvégzed a requestben kapott jelszóval és úgy hasonlítod össze a DB-ben lévővel. Ha van kérdés, vagy valami bullshitet írtam feel free to ask. |
Szerző: | DeteCT0R [ 2018.05.04. 20:14 ] |
Hozzászólás témája: | Re: [PHP] MD5 password |
md5-ot 5 perc alatt visszaforditod. SHA256-ba mar nehezebb dolgod van amig nincs fent a neten a kodod ui: sha256-ot akartam irni. |
Szerző: | Silent [ 2018.05.05. 18:35 ] |
Hozzászólás témája: | Re: [PHP] MD5 password |
Ez nem így van, ez bullshit. |
Szerző: | DeteCT0R [ 2018.05.06. 03:28 ] |
Hozzászólás témája: | Re: [PHP] MD5 password |
Silent írta: Ez nem így van, ez bullshit. Ez igyvan es nem bullshit teszteld le md5-ot akkor fejted vissza amikor akarod. Sha-val nehezebb a dolgod. Nem egyszer fejtettem vissza md5-ot kodot mert elfelejtettem a jelszom de volt adatbazis loginom. Amugy lenyegtelen nem ez volt a kerdezo kerdese. |
Szerző: | Silent [ 2018.05.06. 11:49 ] |
Hozzászólás témája: | Re: [PHP] MD5 password |
A visszafejtési elméleted ott bukott meg, hogy megszámolhatatlan olyan expression van, amelyik ugyanarra a stringre hashelődik, ami ugye abból adódik, hogy mindenképp 128 bit lesz a hash. Megeshet, hogy az alma és a körte hashe ugyanaz lesz, bár nyilván ez csak két random expression, az esélye, hogy tényleg így van, kb 0.1 Edit: Csak a mondandóm lényege maradt le.. Szóval az md5, sha és társai, mind one-way hash algoritmusok, nincs visszafejtő algoritmus. Esetlegesen dictionary módszerrel szerezheted meg a jelszót, de mint az alma és a körte példájánál, kicsi rá az esély, hogy az a hash tényleg ahhoz a jelszóhoz tartozik, bár auth részről ez lényegtelen, mert ha már van egy olyan jelszavad ami ugyanarra hashelődik le mint az igazi jelszó, akkor bejutottál, ez inkább abból a szempontból érdekes, hogy ha van egy DB-d amiben lemented az almát hashelve, megszerzed a hash-t, ha egy másik DB-ben is ugyanez a jelszó van, akkor a hozzá tartozó appba már nem tudsz bejutni a körtével, mert lehet, hogy ott nem ezt az algoritmust használják. To sum up: Jelszavakat nem tárolunk hashelve, semmi értelme nincs. MD5 gyorsabb mint a sha256/512 stb, így hashelésre én ezt ajánlom, viszont encryptionre kevés lesz önmagában bármelyik is. Lehet fokozni az encryptiont különböző módszerekkel, pl mint amit leírtam md5(password + salt), vagy akár belevihetsz egy timestampet is, md5(password + salt + created_at) vagy akár mindet lehashelheted külön és utána a konkatenált stringet hasheled tovább. Ezek azok a példák, amik roppant egyszerűen kivitelezhetőek, mégis viszonylag adnak egy biztonság érzetet. Onnanstól meg, ha van a DB-hez loginja valakinek, ha szimpla hashelt jelszó van tárolva, nem kell semmit visszafejtenie, elég ha megváltoztatja a letárolt jelszót egy sajátra + lehasheli. Az én példámnál ez már nem fog működni, mert nem tudja az algoritmust, hogy mi alapján van lementve. |
Oldal: 1 / 1 | Minden időpont UTC+02:00 időzóna szerinti |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |