ldap密码修改程序,如何加密ssha


我想做一个ldap密码修改程序,但是不知道如何把密码加密成ssha格式并写入ldap中,求解

Linux lighttpd

diggo 12 years, 6 months ago

LDAP中SHA,SSHA,MD5加密方法经过了特殊处理

SHA加密方法:

   
  /**
  
* SHA加密
* @param $password 需要加密的字符串
* @return 返回加密号的字符串
* */
public function ldap_sha($password)
{
$ldap_passwd = "{SHA}".base64_encode(pack("H*", sha1($password)));
return $ldap_passwd;
}

SSHA加密方法:

   
  /**
  
* SSHA加密算法
* @param $password 需要加密的字符串
* @return 返回加密号的字符串
* */
public function ldap_ssha($password)
{
$salt = "";
for ($i=1; $i<=10; $i++)
{
$salt .= substr('0123456789abcdef',rand(0,15),1);
}
$hash = "{SSHA}" .base64_encode(pack("H*",sha1($password.$salt)).$salt);
return $hash;
}

MD5加密方法:

   
  /**
  
* MD5加密
* @param $password 需要加密的字符串
* @return 返回加密号的字符串
* */
public function ldap_md5($password)
{
$md5 = "{MD5}".base64_encode(pack( 'H*',md5($password)));
return $md5;
}

放开那个萝莉 answered 12 years, 6 months ago

Your Answer