MrShahzodbek, Unaqada Bita savol johnda user regdan o'tganda parol md5da hashlanadi. Axir biz logn.phpga parolni odiy raqam shaklida yozamiz u odiy raqam bazadagi md5 bilan solishtriganda va bir xil bo'lgandagina userni saytga kirgazadiku shu hodisa qanday yuz beradi shuni tushunmadim.
.
Rahmatli uzfor.netda ham foydalanuvchlar parolini dehash qilib ancha vaqtgacha parollarni saqlab kelganku. Qanday qilgan ular.
.
Katta master emasman va bu javoblar (sizningcha) odiy bo'lsa bizga (aniqrog'i menga) tushuntrib yuborsangiz.
Akbarali, JohnCMS login.php da siz yozgan parolni tekshiradi masalan parolingiz Akbarali2018 va shu parolingizni ikki marta heshlaydi, ya'ni quyidagicha mda5(md5(Akbarali2018)) va heshning natijasi bazadagi parolingiz bilan bir hil bo'lsa avtorizatsiyadan o'tasiz.
Akbarali2018 ning heshlangani (masalan): asd54asd4wq1e32asd8964qw bo'lsa $user['paroli'] ham shu asd54asd4wq1e32asd8964qw ga teng bo'lishi kerak.
Сирожиддин, Har doim Bir hil heshlanadimi parolar umuman o'zgarmaydimi. 2 daqiqa dan keyin yozdi:
Bita savol nega johnda reg qilyapkanda parolni ikki marta kiritish kerak ikki marta heshlanishi uchunmi 6 daqiqa 37 soniyadan keyin yozdi:
johncms.com/registration/ da parolni takrorlang degan joyi yo'q lekin juda ko'p saytlarda bor nega
Akbarali, buni hohishga ko'ra qo'yish ham mumkin, masalan bir marta parol so'raydigan joyig parol yozsangiz parolni o'zini ko'rsatadi, ya'ni: Sizningparol1007 ikki marta so'raydigan joyda esa yozgan parolingiz harflari o'rnida ******** chiqadi. 25 soniyadan keyin yozdi:
parolni bir marta so'raydigan formada ham parol o'rniga ******* chiqadigan qilishingiz mumkin
Сирожиддин, Buni bilaman shunchaki textni pasword qilsa ****** chiqadi lekin necha ikki marta yozish nega kerak bazani ortiqcha qiynashni nima keragi bor. ?
Akbarali, bunisi ihtiyoriy, bunga baza qiynalmaydi, parolingizniz faqat ikkisi bir hil ekanligi solishtiriladi to'g'ri bo'lsa heshlab bir ustunga yoziladi holos.
Akbarali, Qisqasi bunaqa siz saytga kirishni ammalga oshirgan paytiz parolni bazadagi bilan tekshiradi agar tog'ri kelsa sizning browserizga sesiya(cooking) orqali id va parolizni yozdi lekin parolni hashlab yozadi. Cookinglarni o'g'irlash mumkun shuning uchun hashlab saqlaydi browserizda, keyingi sahifalar davomida saytga kirilgannizni tekshirish sayt yadrosida cookingizdan id va hash(parol)izni tekshiradi bazadagi parollarni hashlab tekshirish ko'proq vaqtni oladi agar bazadagi parolni hashlangani ham bor bo'lsa tekshirish ham oson ham hafsiz ham samarali.
Parolni-ku hashladik, ammo tiklashga biroz muammo bo'lmoqda?
Qanday yechimlarni taklif etasilar?
Emailga maxsus kod jo'natish varianti bor manda. Keyin maxsus kod va yangi parolni yozadi. Natijada yangi parol o'rnatiladi. Yanada oson va qulay varianti bormi?
MrShahzodbek, Emailga kod jo'natib nima qilas?! U kod menimcha 4 xonali raqam bo'ladi. Agar link yuborsangiz uni 16xonali hashlangan raqam yuborasiz bo'ladiku bazada parolni tiklashlarni sesialarini yozib boradigan table yaratasiz unga useridsi kegin hash kod (rand(123333,6664666);) tasodifan tanlangan. Kegin hash kodni tekshiruvchi sahifadan bazadagi hashlangan kodni get so'rovdagi kod bilan solishtiradigan qilas bo'ldi.
Menimcha u hashni sohtalashtirish qiyin 4ta kodan ko'ra. masalan http://sayt.uz/respass?6454625464564548
Сирожиддин, ikkinchi namunada ko'rsatganingizdek o'zim bilgan so'zni yoki parolni md5();da bir marta shifrlab bersam shifrdan ochib bera olasizmi )))
Fikrimcha xoh u bir marta shifrlansin xoh u ikki marta shifrlansin, md5 shifrni ochish yo'li halicha topilmagan. To'g'ri md5(); shifrini ochamiz degan servilar bor lekin ular faqat bazasida bor so'zlarni shifrdan ocha oladi. Bazasida bo'lmasa va qiyin parol bo'lsa uni ochishga yillar yetmasa kerak.
Menda kichkinagina muammocha paydo bo'lib qoldi! Kimda qanday fikr bor shuni bilmoqchiman! Odatda base64_encode() va base64_decode() juda osondir, lekin, shunga kalit qo'shsam decode qilolmayapman! O'ylashimcha, kalit bilan orqaga qaytarsa bo'lsa kerak! Masalan,
Ulty, # Ulty (28.04.2018 / 21:01)
Сирожиддин, ikkinchi namunada ko'rsatganingizdek o'zim bilgan so'zni yoki parolni md5();da bir marta shifrlab bersam shifrdan ochib bera olasizmi )))
Fikrimcha xoh u bir marta shifrlansin xoh u ikHohlagan so'zingizni md5 da shirftlab bering shirftdan chiqarib berishim mumkun