Używam Zend_Auth
z setCredentialTreatment
do ustawienia metody hash i soli. Widzę wszystkie przykłady robi coś takiego, gdzie salt
wydaje się być wstawiony jako tekst.Zend_Auth setCredentialTreatment
-.> SetCredentialTreatment ('? SHA1 (CONCAT (sól))'
ale moja sól są przechowywane w bazie danych mogę je odzyskać pierwszy następnie używać go w setCredentialTreatment
ale jest tam sposób mogę ją określić bezpośrednio jako nazwa pola, więc setCredentialTreatment
wiedziałby, aby ją od tej dziedzinie? coś w rodzaju sposób definiujemy nazwę pola dla nazwy użytkownika lub hasła
->setCredentialColumn('password')
boczna emisyjnej jestem jest to, że chciałbym użyć SHA512 nie SHA1. Czy to możliwe, czy nie jest dostępne? Wszystkie przykłady, które widzę, używają SHA1.
Powinienem powiedzieć, że jestem całkiem nowy, by zendować i przesyłam istniejącą aplikację, więc proszę, nie krępuj się z odpowiedziami.
PHP ma wsparcia SHA512 poprzez rozszerzenie skrótu: hash ('sha512', 'jakiś tekst hash') ; –
Właściwie w oryginalnym PHP używam 'hash_hmac ('sha512')', ale nie definiuję nowej karty trochę przesady dla tego. Ile linii kodu definiuje nowy adapter? Nie mogłem powiedzieć z połączonej strony, ponieważ obcinają kod. – jblue
Jest to dwustopniowy proces polegający na tym, że najpierw trzeba załadować sól, aby wykonać mieszanie w PHP, co sprawia, że twoje wymagania są trochę niestandardowe. Możesz rozszerzyć Zend_Auth_Adapter_DbTable, więc nie trzeba wiele kodu. Edytowałem swoją odpowiedź na przykładzie, aby zacząć grę - kod jest całkowicie nieprzetestowany. Zamień $ hash = ''; część z kodem hash_hmac(). –