2011-01-28 2 views
1

내 응용 프로그램에는 Zend_Registry에 테이블 행 솔트와 정적 소금 세트가 있습니다. 내 자신의 Auth_Adapter를 작성할 필요없이 두 가지를 모두 시도하고있다. 여기 제가 단 한 번의 소금물 짜는 방법에 대해 지금 가지고있는 것이 있습니다.Zend_Auth 용 데이터베이스 및 파일 솔트

$adapter->setCredentialTreatment("SHA1(CONCAT(?, salt))"); 
$adapter->setCredential($values['password']); 

이 문제가 발생할 수 있습니까? 아니면이 문제를 해결하기 위해 전체 어댑터를 작성해야합니까?

+0

참고 (SHA1 SQLite는에서 기본적으로 사용할 수 없습니다) 당신이 데이터베이스를 변경하면 그때는 PHP에서 순수하게 그것을 할 조언 것이다 깨질 수 CONCAT() SHA1() 함수를 사용하여. –

답변

0

다른 항목을 CONCAT 기능에 추가하기 만하면됩니다.

$staticSalt = Zend_Registry::get('static_salt'); 
$treatment = "SHA1(CONCAT(?, salt, '" . $staticSalt . "'))"; 
$adapter->setCredentialTreatment($treatment); 
$adapter->setCredential($values['password']); 
+0

나는 이것을 시험해 보았다고 말할 수 있었지만 지금은 효과가있다. 고마워! – tcole

관련 문제