什么是DEC加密算法?
DEC加密算法一种计算机加密算法///summary///DEC加密过程////summary///paramnamepToEncrypt;被加密的字符串/param///paramnamesKey;密钥(只支持8个字节的密钥)/param///returns;加密后的字符串/returnspublicstringEncrypt(stringpToEncrypt,stringsKey){//访问数据加密标准(DES)算法的加密服务提供程序(CSP)版本的包装对象DESCryptoServiceProviderdesnewDESCryptoServiceProvider();des。 Ke...全部
DEC加密算法一种计算机加密算法///summary///DEC加密过程////summary///paramnamepToEncrypt;被加密的字符串/param///paramnamesKey;密钥(只支持8个字节的密钥)/param///returns;加密后的字符串/returnspublicstringEncrypt(stringpToEncrypt,stringsKey){//访问数据加密标准(DES)算法的加密服务提供程序(CSP)版本的包装对象DESCryptoServiceProviderdesnewDESCryptoServiceProvider();des。
KeyASCIIEncoding。ASCII。GetBytes(sKey);//建立加密对象的密钥和偏移量des。IVASCIIEncoding。ASCII。GetBytes(sKey);//原文使用ASCIIEncoding。
ASCII方法的GetBytes方法byte[]inputByteArrayEncoding。Default。GetBytes(pToEncrypt);//把字符串放到byte数组中MemoryStreammsnewMemoryStream();//创建其支持存储区为内存的流//定义将数据流链接到加密转换的流CryptoStreamcsnewCryptoStream(ms,des。
CreateEncryptor(),CryptoStreamMode。Write);cs。Write(inputByteArray,0,inputByteArray。Length);cs。FlushFinalBlock();//上面已经完成了把加密后的结果放到内存中去StringBuilderretnewStringBuilder();foreach(bytebinms。
ToArray()){ret。AppendFormat({0:X2},b);}ret。ToString();returnret。ToString();}///summary///DEC解密过程////summary///paramnamepToDecrypt;被解密的字符串/param///paramnamesKey;密钥(只支持8个字节的密钥,同前面的加密密钥相同)/param///returns;返回被解密的字符串/returnspublicstringDecrypt(stringpToDecrypt,stringsKey){newDESCryptoServiceProvider();byte[]inputByteArraynewbyte[pToDecrypt。
Length/2];for(intx0;xpToDecrypt。Length/2;x++){inti(Convert。ToInt32(pToDecrypt。Substring(x*2,2),16));inputByteArray[x](byte)i;}des。
IVASCIIEncoding。ASCII。GetBytes(sKey);MemoryStreammsnewMemoryStream();CryptoStreamcsnewCryptoStream(ms,des。
CreateDecryptor(),CryptoStreamMode。Write);cs。FlushFinalBlock();//建立StringBuild对象,createDecrypt使用的是流对象,必须把解密后的文本变成流对象StringBuilderretnewStringBuilder();returnSystem。
Text。Encoding。Default。GetString(ms。ToArray());}。收起