【发布时间】:2016-04-08 16:47:00
【问题描述】:
我有以下加密功能,不知道这段代码是用哪种语言编写的。据我所知,这个函数正在用 SHA256 加密字符串。
Use Namespace: Imports System.Security.Cryptography
Data: Agent Code ~ Userid ~ Security ID~ MerchantID~ Terminalid~ LoginKey
Public Function EncryptSHA(ByVal Data As String) As String
Dim sh As New SHA256Managed
Try
Convert.ToBase64String(sh.ComputeHash(Encoding.ASCII.GetBytes(Data)))
Dim eNC_data As Byte() = ASCIIEncoding.ASCII.GetBytes(Data)
Dim eNC_str As String = Convert.ToBase64String(eNC_data)
Return eNC_str
Catch ex As ExceptionGeneral.Err_Handler("General", "EncryptSHA", ex.Message)
Return Nothing
End Try
End Function
我正在研究 php 并希望在 php 中具有相同的 php 加密功能。 请有人解释这个功能使用什么加密? 这是我的php代码:
$data='Agent Code ~ Userid ~ Security ID~ MerchantID~ Terminalid~ LoginKey';
$encryptcode = hash('SHA256', $data);
对不起,我的英语不好。
【问题讨论】:
-
这是 VB.Net。当您尝试解密 php.ini 中的数据时,使用正确的编码非常重要。 (ASCII)。也许你也应该发布你的 php 代码?
-
@Merryweather php代码已添加,请帮忙
-
SHA256 和所有密码散列函数都是不加密,它们是单向函数,无法获取原始数据。由于它们不能被反转,它们不是可以被反转以获得原始数据的加密。术语确实很重要。