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

发布于 2016-10-24 21:29:32 字数 53 浏览 2134 评论 3

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

甜柠檬 2017-05-20 20:36:38

ssha加密格式:

function ssha_encode($text) {
for ($i=1; $i<=10; $i++) {
$salt .= substr('0123456789abcdef',rand(0,15),1);
}
$hash = "{SSHA}" . base64_encode(pack("H*",sha1($text.$salt)).$salt);
return $hash;
}

Ladp密码格式参见:RFC2307

甜柠檬 2017-01-06 09:55:27

你可以看看用PHP实现SSHA加密和LDAP密码验证 这篇文章。

偏爱自由 2016-12-24 13:21:46

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;
}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文