Jump to content
php.lv forumi

Datubāzē paroļu kodēšana.


Maaren

Recommended Posts

Iesakiet, kā vislabāk kodēt datubāzē paroles? Bija doma izmantot md5(), bet pēc tam tad nevar no administrācijas paneļa paskatīties kāda lietotājam parole, arī vēlāk ar paroļu atgriešanu uz pastkastīti būs problēmas..

 

bija doma izveidot str_replace() savu sakarību, bet man kautkā neiet.

 

Kādi būtu jūsu ieteikumi?

Link to comment
Share on other sites

Viennozīmīgi md5 (var arī sha1 vai kādu citu skarīgu hešfunkciju) + sāls. Adminam nav jālūr lietotāju paroles. Nevienam tās nav jālūr.

A bet paroļu "atgriešanu" lietotājam vajag aizstāt ar paroles noresetošanu, paprasot lietotājam ievadīt jaunu pēc kautkāda unikāla linka, kas šim uz mailu aizsūtīts.

Link to comment
Share on other sites

Pieņemsim, ja man vajadzēs lietotājam paroli izsūtīt caur sms-servisu, kā one.lv?

nu a kur problema ?

useris kad registrejas, ievada paroli .. kamer vinsh vel nav atstajis sistemu . nosuuti SMS ..

Ja parole pazaudeta, tad Uzgeneree jaunu un to nosuuti .... pashu paroli saglabajot DB, ar MD5 ...

---

Tas nav normali kad Administracija var redzeet usera paroles...

Link to comment
Share on other sites

Neiet runa jau par to vai kāds skatīsies tās paroles. Es nemaz netaisos lūrēt.

 

Ar to ģenerēšanu arī ir tā kā ir. Pieņemsim, ja kāds ļaundaris zinot manu mobīlā telefona numuru sāks man ģenerēt paroles? Un ja numurs ir nomainijies? Tad skaiti paroli vispār nebūs iespējams atgriest.

Link to comment
Share on other sites

Sūti nevis jaunu paroli, bet randomā uzģenerētu linku, kurš derīgs teiksim tikai 10 minūtes (tipa http://tava_lapa.lv/reset_password.php?id=1237918237). Un šajā linkā tad arī prasi ievadīt jauno paroli. Lai tad arī ļaundaris sāk pieprasīt paroles resetošanu - ja viņš netiks klāt tavam epastam/telefonam, tad viņš nevarēs noresetot paroli, tikai panāks to, ka uz tavu epastu/sms atnāks kaudze ar ziņām par resetošanas linkiem. Uzliec vēl limitu - teiksim stundas laikā max 2 reseti var būt un nebūs nekādu problēmu.

Link to comment
Share on other sites

Īsti vīri paroles nehešo.

 

Noņem paroļu tabulai visas permisijas userim, kurš no php slēdzas mysql.

Izveido mysql funkcijas, kuras veic darbu ar paroļu tabulu.

Edited by codez
Link to comment
Share on other sites

man liekas ka shitaads kodeeshana buutu pietiekama ...

function mk_pw($parole)
{
 $p = md5($parole);
 $salt = substr($p,0,8);
 return md5($p . $salt);
}

tiekot pie DB dump un netiekot pie koda, kas paroli taisa, tad ar tiem md5 var dariit ko grib, jo no vinjiem neko nevar atkodeet ...

un salts arii neglabaajas db, taa kaa "lielajam" hakerim pat nav nosjausmas, ka parolei ir saals ..)

taas manas domas . ko citi domaa?

Link to comment
Share on other sites

Klez, tavā variantā tas salts īsti nepilda savu misiju - tas ir - salts parasti panāk to, ka laušana ar vārdnīcas palīdzību paliek daudz grūtāka, jo katrai parolei atsevišķi ir jāģenerē katra vārdnīcas vārda md5 strings. Tavā gadijumā, ja es zinu (kā lauzējs, kas tikko dabūjis tavas paroles un piekļuvi kodam), ka tu izmanto šadu aizkodēšanas metodi, tad no tā tava salta vairs jēgas nav nekādas.

Link to comment
Share on other sites

Kad no salt ir jēga piekļūstot gan kodam, gan DB? Es izmantoju šādu triku:

	/**
* @desc Atgriež paroli ar salt + md5()
* @param $pass string
* @param $newPass boolean Vai ģenerēt jaunu paroli? (reminderam)
* @param $newPassLen int Jaunās paroles simbolu skaits
* @return void
* @version 0.1
*/
function password($pass,$newPass = false,$newPassLen = 5)
{		
	if ($newPass) {
		return substr(md5('salt'.time().'salt2'.time()),0,$newPassLen);
	}
	return md5('salt'.$pass.'salt2'.$pass);
} /* password */
/**************************************************************************/

Link to comment
Share on other sites

Tavā gadijumā, ja es zinu (kā lauzējs, kas tikko dabūjis tavas paroles un piekļuvi kodam), ka tu izmanto šadu aizkodēšanas metodi, tad no tā tava salta vairs jēgas nav nekādas.
tiekot pie DB dump un netiekot pie koda, kas paroli taisa, tad ar tiem md5 var dariit ko grib, jo no vinjiem neko nevar atkodeet ...
Link to comment
Share on other sites

×
×
  • Create New...