求.net和PHP双料高手翻译代码

popcat007 2016-01-09 01:18:39
代码如下,求翻译成PHP代码:

public string GenerateSalt()
{
byte[] array = new byte[16];
new RNGCryptoServiceProvider().GetBytes(array);
return Convert.ToBase64String(array);
}
public string EncodePassword(string pass, int passwordFormat, string salt)
{
if (passwordFormat == 0)
{
return pass;
}
byte[] bytes = Encoding.Unicode.GetBytes(pass);
byte[] array = Convert.FromBase64String(salt);
byte[] array2 = new byte[array.Length + bytes.Length];

System.Buffer.BlockCopy(array, 0, array2, 0, array.Length);

System.Buffer.BlockCopy(bytes, 0, array2, array.Length, bytes.Length);

byte[] inArray;

HashAlgorithm hashAlgorithm = HashAlgorithm.Create(Membership.HashAlgorithmType);
inArray = hashAlgorithm.ComputeHash(array2);

return Convert.ToBase64String(inArray);
}

...全文
163 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
csdddn 2016-01-19
  • 打赏
  • 举报
回复
hash算法没有说明
xuzuning 2016-01-09
  • 打赏
  • 举报
回复
function GenerateSalt() {
  $s = pack('L*', rand(), rand(), rand(), rand());
  return base64_encode($s);
}
function EncodePassword($pass, $passwordFormat, $salt) {
  if($passwordFormat ==0) return $pass;
  $s = $pass . base64_decode($salt);
  return base64_encode(sha1($s));
}

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧