VB.NET中的哈希或编码函数

时间:2017-05-02 13:48:42

标签: vb.net

我在VB脚本中有以下功能:

Function DecryptSHA1(ByVal strOriginalString As String) As String
    If strOriginalString = "" Then Return ""

    Dim dEC_data() As Byte = Convert.FromBase64String(strOriginalString)
    Dim dEC_Str As String = ASCIIEncoding.ASCII.GetString(dEC_data)
    DecryptSHA1 = dEC_Str
End Function

Function EncryptSHA1(ByVal strOriginalString As String) As String
    If strOriginalString = "" Then Return ""

    Dim shaM As New SHA1Managed
    Convert.ToBase64String(shaM.ComputeHash(Encoding.ASCII.GetBytes(strOriginalString)))
    Dim eNC_data() As Byte = ASCIIEncoding.ASCII.GetBytes(strOriginalString)
    Dim eNC_str As String = Convert.ToBase64String(eNC_data)
    EncryptSHA1 = eNC_str
End Function

我不用VB编写代码,但我可以看到这些函数与加密SHA1无关,而是与rater Base64编码和解码无关。我错了吗?唯一可以让我考虑散列的是Dim shaM As New SHA1Managed函数中的EncryptSHA1()行,但DecryptSHA1()函数不再使用它。这些简单的Base64编码/解码功能还是更多吗?

1 个答案:

答案 0 :(得分:0)

这些函数唯一能做的就是转换为base64。 在EncryptSHA1函数中有一些SHA1散列码,但实际上并未使用它。

因此,没有任何散列或加密,这使得这些功能非常混乱。