0
在VBA.NET中我尝试将其转换为PHP。我主要是一名PHP开发人员,在VB中我几乎没有什么知识。在将VBA.NET函数转换为PHP时出现问题
<%
Public Shared Function ComputeHash(ByVal Key As String) As String
Dim objSHA1 As New SHA1CryptoServiceProvider
objSHA1.ComputeHash(System.Text.Encoding.UTF8.GetBytes(Key.ToCharArray))
Dim buffer() As Byte = objSHA1.Hash
Dim HashValue As String = System.Convert.ToBase64String(buffer)
Return HashValue
End Function
%>
我试过搜索手册并找到一些指导。 这是迄今为止我已经转换到PHP自己:
function compute_hash($string){
return base64_encode(sha1($string));
}
Hovewer也不会产生相同的结果,VB的功能ComputeHash()
。有人告诉我做错了什么?执行对两种语言的
例子:
VBA.NET
string = "orange45877687459999SENTRYORD01154321"
ComputeHash(string) // Returns = WbwSWEBzPqgo9C4nZmGwHhd/FBQ=
PHP
$string = "orange45877687459999SENTRYORD01154321";
compute_hash(string) // Returns = NTliYzEyNTg0MDczM2VhODI4ZjQyZTI3NjY2MWIwMWUxNzdmMTQxNA== (but I need "WbwSWEBzPqgo9C4nZmGwHhd/FBQ=")
你的目标是什么?你想在sha1中返回一个散列? –
@MASIDDIQUI不,实际上并不那么简单。不只是哈希本身。我正在寻找在PHP中使用'ComputeHash()'的确切平等点 – Yang
您能发布一些您接收到的示例输入和输出吗? –