maarc93 Posted June 16, 2015 Report Share Posted June 16, 2015 Kā PHP valodā izveidot paroles pārbaudi pie reģistrācijas, lai pārbauda, vai parolē ir vismaz viens lielais burts un specsimbols? Quote Link to comment Share on other sites More sharing options...
ieleja Posted June 16, 2015 Report Share Posted June 16, 2015 http://stackoverflow.com/questions/10752862/password-strength-check-in-php Quote Link to comment Share on other sites More sharing options...
maarc93 Posted June 16, 2015 Author Report Share Posted June 16, 2015 Paldies! Tiku galā ar šādu kodu: if(!preg_match('/[A-Z]/', $password) || !preg_match('/[\W]/', $password)){ echo "Parolei jāsatur vismaz vienu lielo burtu un vienu specsimbolu!"; } Quote Link to comment Share on other sites More sharing options...
qwerty Posted June 17, 2015 Report Share Posted June 17, 2015 Dievs, pasargā no lapām kur liek veidot šādas paroles.. Quote Link to comment Share on other sites More sharing options...
daGrevis Posted June 17, 2015 Report Share Posted June 17, 2015 Dievs pasarg no parolēm kuras ir viegli bruteforceot vai atkost izmantojot rainbow table. Tiesa gan, daudz prātīgāk būtu pārbaudīt ka parole ir pietiekami gara (10+ simboli) nekā pārbaudīt vai parole satur “speciālos simbolus“. Quote Link to comment Share on other sites More sharing options...
qwerty Posted June 17, 2015 Report Share Posted June 17, 2015 Saltošana pret rainbow 8+ simboli pret brutforce, manuprāt, ir gana labi. Ja nemaldos tad Swedbank liek izmantot 8+. Quote Link to comment Share on other sites More sharing options...
codez Posted June 17, 2015 Report Share Posted June 17, 2015 Jāuzliek cilvēcīgi ierobežojošu līdz 100 pārbaužu iespēju diennaktī un 500 mēnesī un pat 5 simbolu tikai mazo burtu paroli nevarēs brūtforsēt. Quote Link to comment Share on other sites More sharing options...
daGrevis Posted June 17, 2015 Report Share Posted June 17, 2015 Ja tiks pie datubāzes dumpa, varēs gan. Tad nekādi ierobežojumi nestrādās. No otras puses, ja kāds ir ticis pie datubāzes dumpa, ir lielākas problēmas par iespējamu bruteforce. :) Quote Link to comment Share on other sites More sharing options...
codez Posted June 17, 2015 Report Share Posted June 17, 2015 Ar db dumpu nepietiek, ir nepieciešams arī šifrēšanas algoritms. Bet, ja tik tiešām tiek pie šiem abiem, tad tā tiešām ir mazākā problēma. Bez tam 8 simbolu parole ar 26 burtiem veido 26^8 = 200 miljardi kombināciju. Ja uzliek šifrēšanu, kas aizņem sekundi mūsdienu CPU jaudas, tad vajadzīgi būs 6000 gadu, lai brūtforsētu pat vienu paroli. Un cik rāda statistika, tad ļoti daudz lielā burta un ciparu obligātas lietošanas gadījumā, paroli taisa Xxxxx111 formā. Un tad patiesībā 8 simbolu kombinācija dod: Xxxxxx1 - 26^7 * 10 = 80 miljardi Xxxxx11 - 26^6 * 100 = 30 miljardi Xxxx111 - 26^5 * 1000 = 11 miljardi Kopā mazāk kombināciju. Quote Link to comment Share on other sites More sharing options...
ieleja Posted June 17, 2015 Report Share Posted June 17, 2015 nu ja vienīgā iespēja ir bakstīt paroli webformas logā, tad tā var uzlauzt tikai: parole, abc123 un vēl apmēram astoņas tāpēc pieņemam, ka ir mums 'specforums.sql' pārdesmit megabaitu izmērā algoritmu mazliet vienkāršāk atrast, ja lauznim ir savs konts tajā resursā, tad viņš zina 'user_name', 'crypted_pass' un arī 'pass' pasargāties no lapām, kur ir striktāki paroļu izveides noteikumi ir grūti, jo tās ir visas bankas, VID EDS, mansLMT daļa e-pasta kantoru u.c. vajadzīgu resursu Quote Link to comment Share on other sites More sharing options...
F3llony Posted June 17, 2015 Report Share Posted June 17, 2015 Ar db dumpu nepietiek, ir nepieciešams arī šifrēšanas algoritms. Bet, ja tik tiešām tiek pie šiem abiem, tad tā tiešām ir mazākā problēma. Bez tam 8 simbolu parole ar 26 burtiem veido 26^8 = 200 miljardi kombināciju. Ja uzliek šifrēšanu, kas aizņem sekundi mūsdienu CPU jaudas, tad vajadzīgi būs 6000 gadu, lai brūtforsētu pat vienu paroli. Un cik rāda statistika, tad ļoti daudz lielā burta un ciparu obligātas lietošanas gadījumā, paroli taisa Xxxxx111 formā. Un tad patiesībā 8 simbolu kombinācija dod: Xxxxxx1 - 26^7 * 10 = 80 miljardi Xxxxx11 - 26^6 * 100 = 30 miljardi Xxxx111 - 26^5 * 1000 = 11 miljardi Kopā mazāk kombināciju. Tieši tāpēc bcrypt un laika faktors palielināms ik pa gadam, diviem uz katru jaunu paroles maiņu. Quote Link to comment Share on other sites More sharing options...
daGrevis Posted June 17, 2015 Report Share Posted June 17, 2015 Gandrīz lapa bez fleima un personiskiem uzbraucieniem! Tā turpināt, kungi. :) Quote Link to comment Share on other sites More sharing options...
Kavacky Posted June 17, 2015 Report Share Posted June 17, 2015 Dievs, pasargā no lapām kur liek veidot šādas paroles..++ Bcrypt, nevis to lower/upper/simbolu/ciparu pederastiju. Quote Link to comment Share on other sites More sharing options...
briedis Posted June 21, 2015 Report Share Posted June 21, 2015 Ja konkrēti par parolēm PHP vidē, tad neveidojam kaut kādus savus velosipēdus (lipinam sāļus ar parolēm), bet lietojam password_* funkcijas, http://php.net/manual/en/function.password-hash.php password_hash, password_verify. Tas gan ir tikai PHP 5.5, bet nu lietot kaut ko vecāku jau tagad gan nevajadzētu... Quote Link to comment Share on other sites More sharing options...
jurgenzz Posted June 26, 2015 Report Share Posted June 26, 2015 (edited) Man interesē, cik laba/slikta būtu šāda vienkārša js psw.length > 8 validācija? Tobiš, nelaut formai iet cauri, ja parole ir zem 8 simboliem? document.getElementById("submit").onclick = function () { var x=document.getElementById("password").value; x = x.length; if (x < 8) { alert("Password needs to be at least 8 symbols"); return false; } return true; } Edited June 26, 2015 by jurgenz Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.