当前位置: 代码迷 >> VB Dotnet >> 求教加密类使用方法解决方法
  详细解决方案

求教加密类使用方法解决方法

热度:1162   发布时间:2016-04-25 02:25:53.0
求教加密类使用方法
Imports Microsoft.VisualBasic
Imports System.Security.Cryptography

Public Class MD5Class MD5

    ''MD5加密方法
    Function Shared()Function Shared MD5Encrypt(ByVal PasswordString As String) As String
        Return FormsAuthentication.HashPasswordForStoringInConfigFile(PasswordString, "MD5")
    End Function

    ''字符串简单加密
    Function Shared()Function Shared strEncrypt(ByVal PasswordString As String) As String
        Return Convert.ToBase64String(System.Text.Encoding.Default.GetBytes(pToEncrypt))
    End Function

    ''字符串解密
    Function Shared()Function Shared strDecrypt(ByVal PasswordString As String) As String
        Return System.Text.Encoding.Default.GetString(Convert.FromBase64String(pToDeCrypt))
    End Function    
End Class

从百度搜到的加密类,不知道如何使用。

请各位老师指点。
------解决方案--------------------
看你那个代码,感觉那个类不好用.

MD5、SHA512加密算法,以及可逆算法 .
http://blog.csdn.net/hdhai9451/article/details/11481721



------解决方案--------------------
那些都不是加密。

MD5是Hash算法,不可逆的,因此无法从MD5的密文得知原文。
Base64编码不能算加密,因为这种转换不需要密钥,算法也是公开的。

你贴的代码也不全,不知道pToDeCrypt是什么东西。

建议使用Google,百度经常给出一些毫无价值的搜索结果,当然,这不能完全怪百度,因为垃圾站往往非常重视对百度的黑帽SEO作弊,所以那些垃圾文章在百度上泛滥。而低端用户的广告转化率更高,这使得通过百度吸引低端用户换取广告收入成为比较有利可图的事情。
------解决方案--------------------

Public Class AesEncryption

    '创建用来封装加密和解密方法的类。

    'Visual Basic
    Public NotInheritable Class Simple3Des


        '添加用来存储 3DES 加密服务提供程序的私有字段。

        'Visual Basic

        Private TripleDes As New TripleDESCryptoServiceProvider


        '添加私有方法,该方法将从指定密钥的哈希创建指定长度的字节数组。

        'Visual Basic

        Private Function TruncateHash(ByVal key As String, ByVal length As Integer) As Byte()

            Dim sha1 As New SHA1CryptoServiceProvider


            ' Hash the key.

            Dim keyBytes() As Byte = System.Text.Encoding.Unicode.GetBytes(key)

            Dim hash() As Byte = sha1.ComputeHash(keyBytes)


            ' Truncate or pad the hash.

            ReDim Preserve hash(length - 1)

            Return hash

        End Function


        '添加用来初始化 3DES 加密服务提供程序的构造函数。

        'key 参数控制 EncryptData 和 DecryptData 方法。

        'Visual Basic

        Sub New(ByVal key As String)

            ' Initialize the crypto provider.

            TripleDes.Key = TruncateHash(key, TripleDes.KeySize \ 8)

            TripleDes.IV = TruncateHash("", TripleDes.BlockSize \ 8)

        End Sub

        '添加加密字符串的公共方法。

        'Visual Basic

        Public Function EncryptData(ByVal plaintext As String) As String

            ' Convert the plaintext string to a byte array.

            Dim plaintextBytes() As Byte = System.Text.Encoding.Unicode.GetBytes(plaintext)


            ' Create the stream.

            Dim ms As New System.IO.MemoryStream


            ' Create the encoder to write to the stream.
  相关解决方案