MD5加密解密辅助类

/// <summary>
    /// ConvertUtil 的摘要说明。
    /// </summary>
    public class ConvertUtil
    {
        //将字节数组转化为字符串
        public static string Byte2HEX(byte[] ibs)
        {
            char[] Digit = { ‘0‘, ‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘, ‘6‘, ‘7‘, ‘8‘, ‘9‘, ‘A‘, ‘B‘, ‘C‘, ‘D‘, ‘E‘, ‘F‘ };
            char[] ob = new char[2];
            StringBuilder returnStr = new StringBuilder();
            
            for (int i = 0; i < ibs.Length; i++)
            {
                ob[0] = Digit[(ibs[i] >> 4) & 0X0F];
                ob[1] = Digit[ibs[i] & 0X0F];
                string s = new string(ob);
                returnStr.Append(s);
            }

return returnStr.ToString();
        }

private static int HexChar2Int(char hexChar)
        {
            switch (hexChar)
            {
                case ‘0‘:
                    return 0;
                case ‘1‘:
                    return 1;
                case ‘2‘:
                    return 2;
                case ‘3‘:
                    return 3;
                case ‘4‘:
                    return 4;
                case ‘5‘:
                    return 5;
                case ‘6‘:
                    return 6;
                case ‘7‘:
                    return 7;
                case ‘8‘:
                    return 8;
                case ‘9‘:
                    return 9;
                case ‘A‘:
                    return 10;
                case ‘B‘:
                    return 11;
                case ‘C‘:
                    return 12;
                case ‘D‘:
                    return 13;
                case ‘E‘:
                    return 14;
                case ‘F‘:
                    return 15;
                default:
                    return 0;
            }
        }

//将字符串转化为字节数组
        public static byte[] Hex2Byte(string strHex)
        {
            byte[] bytes = null;
            try
            {
                char[] charHex = strHex.ToUpper().ToCharArray();
                int bytesLength = charHex.Length / 2;
                bytes = new byte[bytesLength];
                if (bytesLength <= 0)
                {
                    return bytes;
                }

int[] tempBytes = new int[2];

//循环每次处理两个字符
                for (int i = 0; i < charHex.Length; i=i+2)
                {
                    tempBytes[0] = HexChar2Int(charHex[i]) << 4 & 0XF0;
                    tempBytes[1] = HexChar2Int(charHex[i + 1]);
                    bytes[i / 2] = (byte)(tempBytes[0] + tempBytes[1]);
                }
            }
            catch(Exception ex)
            {
                throw ex;
            }

return bytes;
        }

/// <summary>
        /// 是否是整数
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public static bool IsInt(string str)
        {
            return Regex.IsMatch(str, "^([0-9]*)$");
        }
    }

时间: 2024-10-11 13:41:57

MD5加密解密辅助类的相关文章

java 采用MD5加密解密

MD5加密解密 package endecrypt; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /** * 采用MD5加密解密 * @author tfq * @datetime 2011-10-13 */ public class MD5Util { /*** * MD5加码 生成3

MD5加密解密帮助类

using System; using System.Security.Cryptography; using System.Text; namespace Maticsoft.DBUtility { /// <summary> /// DES加密/解密类. /// </summary> public class DESEncrypt { public DESEncrypt() { } #region ========加密======== /// <summary> /

.NET MD5加密解密代码

MD5简介: 是让大容量信息在用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数).不管是MD2.MD4还是MD5,它们都需要获得一个随机长度的信息并产生一个128位的信息摘要.虽然这些算法的结构或多或少有些相似,但MD2的设计与MD4和MD5完全不同,那是因为MD2是为8位机器做过设计优化的,而MD4和MD5却是面向32位的电脑.这三个算法的描述和C语言源代码在Internet RFCs 1321中有详细的描述,这是一份最权威的文档

C#,ASP.NET简单的MD5加密,解密

简单的MD5加密 首先要有一个加解密的规则  就是key 代码如下 // 创建Key public string GenerateKey() { DESCryptoServiceProvider desCrypto = (DESCryptoServiceProvider)DESCryptoServiceProvider.Create(); return ASCIIEncoding.ASCII.GetString(desCrypto.Key); } 然后就是加密 传入的参数分别为你要加密的字符串,

VB使用API进行MD5加密解密

根据网络资料整改,来源未知,已调试通过. Option Explicit Private Declare Function CryptAcquireContext Lib "advapi32.dll" _ Alias "CryptAcquireContextA" ( _ ByRef phProv As Long, _ ByVal pszContainer As String, _ ByVal pszProvider As String, _ ByVal dwProv

MD5加密解密

using System.Security.Cryptography; using System.IO; using System.Text; ///MD5加密 public string MD5Encrypt(string pToEncrypt, string sKey) { DESCryptoServiceProvider des = new DESCryptoServiceProvider(); byte[] inputByteArray = Encoding.Default.GetByt

MD5加密解密类(asp.net)&amp;使用MD5过时处理

加密类 #region ========加密======== /// <summary> /// 加密 /// </summary> /// <param name="Text"></param> /// <returns></returns> public static string Encrypt(string Text) { return Encrypt(Text, "cong"); }

MD5加密解密在.NET平台实现那些事

MD5作为一种散列算法,广泛用于密码传输过程中的加密过程.MD顾名思义Message Digest(报文摘要),可以将输入的密码,一般来说为一个字符串,加密成密文,并且这种加密是单向的.唯一的,理论上说是不能解密的,当然个别网站通过搜集大家简单的字符串输入形成所谓的“数据字典”,然后根据大家习惯,形成明文,这个其实就是统计形成的结果,通过比对实现,与MD5算法的理论基础没有太大的关系.最近几年,山东一个高校的女博士也在研究MD5算法的解密,并且通过一些算法可以求解密文的明文,但仅仅局限于简单的字

MD5加密解密类

public class CrytMd5    {        private static string symmetricKey = "2fSA4Gd3czxzmsel5kgEs6dXj6h4vA6y";    //对称加密密钥        private static string symmetricIV = "he86rTcIvr12CiwN";    //对称加密初始向量 /// <summary>        /// 设置密钥,只写