- Megerősíti a platformfüggetlen sugárkövetéses tesztjét a 3DMark
- A Seenda ollós klaviatúrája a Microsoft Sculpt Ergonomic Keyboard nyomdokain jár
- Gamescom 2025: Itt a legújabb Gaming NUC
- Cicomától mentes Palit GeForce RTX 5060 a kevésbé tágas gépházak gazdáinak
- Eldőlt: nem építhetnek hátsó kaput az Apple termékekbe a britek
- TCL LCD és LED TV-k
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Apple asztali gépek
- Bambu Lab 3D nyomtatók
- Milyen billentyűzetet vegyek?
- Fejhallgató erősítő és DAC topik
- Milyen monitort vegyek?
- Kormányok / autós szimulátorok topikja
- Azonnali notebookos kérdések órája
Új hozzászólás Aktív témák
-
biker
nagyúr
válasz
tothjozsi96 #16502 üzenetére
Most lehet páran nekem ugranak, vagy legalább elindul egy vita, de...
Az md5 NEM alkalmas jelszó titkosítására, mert nem titkosító eljárás. egy kód, ami 32 bit hosszú, akkor is, ha az input "a" vagy épp NULL, és 32 bit akkor is, ha egy 10GB-os image file ellenőrzőkóód generálás a feladat.
Ebből ered, hogy információt nem hordoz, és persze nem is visszafejthető, (de vannak md5/szó pár adatbázisok)
Ellenben kis valószínűséggel, de előfordul hogy két teljesen más karaktersornak ugyanaz lesz az md5 értéke.
A többit rád bízom, mit választasz -
DNReNTi
őstag
válasz
tothjozsi96 #16502 üzenetére
A biztonságos beléptetés valamint főleg a felhasználói adatok biztonságos kezelése elég összetett dolog, írhatnék délig, mire leírom az egésszel kapcsolatban a véleményemet.
Mivel az idő az ellenségem, rövidre fogom. Ami már kiderült itt korábban is a felhasználói adatok sütiben tárolása a lehető legrosszabb megoldás, ha ráadásul még a jelszót is sütiben tárolod (ahogy korábban írtad) az pedig egyenesen kötél általi halált ér.
Leírom az én alap megoldásom, aztán majd a többiek kijavítják vagy kiegészítik, szerintem ez egy weboldal esetén megfelelően biztonságos:
A felhasználók az alap adataikon kívül regisztrációkor kapnak egy mondjuk 20 számjegy hosszú unique random számsort, amely adatbázisban a felhasználó táblában van rögzítve. Amikor a felhasználó a felhasználónév és jelszó párossal helyesen belép, akkor a $_SESSION[] változóban eltárolom ezt a random azonosítót. Innentől a böngésző bezárásáig ez alapján azonosítom a felhasználót. A számsor unique, szóval ugyan úgy használhatom erre a célra mint mondjuk az id-t. Ha lehetőséget adsz arra, hogy a felhasználó belépve maradjon, akkor ezt a számsort nyugodtan tárolhatod sütiben is, így amikor a felhasználó újra meglátogatja az oldalt, a süti tartalmát beállítod a session változóba és minden megy tovább ahogy eddig. Kilépéskor a sütit "lejáratod" a sessiont unset()-eled.Miért számsor és nem string?
Mert az SQL lekérdezés gyorsabb számszerű ekvivalenciára mint szöveges egyezésre.Miért jó ez megoldás?
Mert ha még valaki, valahogyan hozzá is jutna, ehhez az azonosítóhoz (pl. a sütiból), abban semmilyen logikai minta nincs, ami alapján a többi felhasználó azonosítója megszerezhető lenne.Hogyan lehet ez még biztonságosabb?
Ennek a level 2 változata, ha random azonosítót minden belépéskor generálod és mented el a felhasználóhoz, ez viszont félmegoldás, mivel ha a felhasználó miközben be van lépve, belép egy másik eszközről, akkor az eredeti munkamentét el fogja veszíteni.Hogyan akadályozható ez meg?
Egyszerűen, level 2 helyett egyből a level 3-mal. Ugyan úgy egyedi azonosítót generálsz belépéskor, de ezt már nem a felhasználó táblában, hanem egy külön a belépéseket kezelő táblában rögzíted. Fontos, itt nem elég csak a random azonosítókat és a felhasználó id-kat tárolni, az egyértelmű azonosítás érdekében környezeti változók mentésére is szükség van. Kilépéskor a tárolt munkamenet célszerű az adatbázisból eldobni, így nem lesz tele szeméttel, továbbá érdemes időközönként háttérfolyamattal takarítani, teszem azt mondjuk a 48 óránál régebbi munkameneteket eldobni.Röviden ennyi.
Aki nem ért egyet pls javítson ki. -
válasz
tothjozsi96 #16502 üzenetére
Mindenképpen session cookie.
Új hozzászólás Aktív témák
- Új Acer Predator 16 WQXGA 165Hz G-Sync i9-13900HX 16GB 1TB Nvidia RTX 4070 8GB 140W Win11 Garancia
- Számítógép, ryzen 5 2600, RX 580 8GB, 16gb ddr4, 512gb ssd, 1tb hdd
- HP EliteBook 850 G8 Fémházas Multimédiás Laptop 15,6" -65% i7-1185G7 16/512 Iris Xe FHD
- Gigabyte GeForce GTX 1660 Ti OC hibátlan, dobozos, 14 nap személyes garanciával
- HP EliteBook 850 G8 Fémházas Multimédiás Laptop 15,6" -65% i7-1185G7 32/512 Iris Xe FHD
- REFURBISHED - HP USB-C Universal Dock G1 docking station (DisplayLink)
- 35" ASUS ROG Swift PG35VQ curved GAMER monitor
- Prémium gépház most fantasztikus áron!
- Bomba ár! Dell Latitude 7320 - i5-11GEN I 8GB I 256SSD I HDMI I 13,3" FHD I Cam I W11 I Garancia!
- Eladó egy wittings steel hr sport hibrid okos óra dobozával töltővel
Állásajánlatok
Cég: FOTC
Város: Budapest