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.

  1. if(isset($_POST['valami']))
  2.  {
  3.  $myname= $_POST['teljesnev'];   
  4.  $myusername= $_POST['felhasznalonev'];
  5.  $mypassword= $_POST['jelszo'];
  6.  $mydate= $_POST['datum'] = date('Y-m-d H:i:s');
  7.  
  8.  $Olvas=mysqli_query($con,"insert into admin (felhasznalonev,jelszo,teljesnev,datum)values('$myusername','$mypassword','$myname','$mydate')");
  9.  
  10.     if($Olvas)
  11.     {
  12.         header("location: Bejelentkezes.php"); //Dobjon át a bejelentkezésre.
  13.     }

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?

 ! Moderátori megjegyzés (Pika):
DUPLA H.SZ! Figyelmeztetés kiosztva! Legközelebb figyeljünk oda!

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 :D 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/