DES算法 求C#高手教我写DES算法。那位愿意收我为徒的啊? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://blog.csdn.net/lego2816/article/details/6698388 public sealed class DESEncryption { private static readonly string encryptKey = "YJSERVER"; private static readonly string decryptKey = "YJSERVER"; #region**********Method******************************* /// <summary> /// 加密字符串 /// 注意:密钥必须为8位 /// </summary> /// <param name="strText">字符串</param> /// <param name="encryptKey">密钥</param> /// <return>加密后字符串</return> public static string DesEncrypt(string strText) { string outString=""; byte[] byKey=null; byte[] IV= {0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF}; try { byKey = System.Text.Encoding.UTF8.GetBytes(encryptKey.Substring(0, encryptKey.Length)); DESCryptoServiceProvider des = new DESCryptoServiceProvider(); byte[] inputByteArray = Encoding.UTF8.GetBytes(strText); MemoryStream ms = new MemoryStream(); CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(byKey, IV), CryptoStreamMode.Write) ; cs.Write(inputByteArray, 0, inputByteArray.Length); cs.FlushFinalBlock(); outString = Convert.ToBase64String(ms.ToArray()); } catch(System.Exception) { outString = ""; } return outString; } /// <summary> /// 解密字符串 /// </summary> /// <param name="strText">加了密的字符串</param> /// <param name="decryptKey">密钥</param> public static string DesDecrypt(string strText) { string outString = ""; byte[] byKey = null; byte[] IV= {0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF}; byte[] inputByteArray = new Byte[strText.Length]; try { byKey = System.Text.Encoding.UTF8.GetBytes(decryptKey.Substring(0, decryptKey.Length)); DESCryptoServiceProvider des = new DESCryptoServiceProvider(); inputByteArray = Convert.FromBase64String(strText); MemoryStream ms = new MemoryStream(); CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(byKey, IV), CryptoStreamMode.Write); cs.Write(inputByteArray, 0, inputByteArray.Length); cs.FlushFinalBlock(); System.Text.Encoding encoding = new System.Text.UTF8Encoding(); outString = encoding.GetString(ms.ToArray()); } catch(System.Exception) { outString = ""; } return outString; } #endregion } 如图:怎么在另一个WinForm里调用当前类的属性和方法 请问静态方法中,如果调用非静态方法,两个方法都在同一个类中。 关于整站保存为静态 C# ACCESS 保留字 有关判断的问题 comboBox1.SelectedIndex 的值为什么会返回-1 请问怎么把文件里里面的内容读出来 为什么我的配置文件为空了(启动页中),而且所有自写的窗体类双击只打开源代码而不能设计窗体? 在线等 一个基础问题 请教一下ToolBar的用法 datagridview 设置数据行的高度充满整个datagridview 客户端双击快捷方式(或者右键→打开),都没反应
{
private static readonly string encryptKey = "YJSERVER";
private static readonly string decryptKey = "YJSERVER";
#region**********Method******************************* /// <summary>
/// 加密字符串
/// 注意:密钥必须为8位
/// </summary>
/// <param name="strText">字符串</param>
/// <param name="encryptKey">密钥</param>
/// <return>加密后字符串</return>
public static string DesEncrypt(string strText)
{
string outString="";
byte[] byKey=null;
byte[] IV= {0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF};
try
{
byKey = System.Text.Encoding.UTF8.GetBytes(encryptKey.Substring(0, encryptKey.Length));
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
byte[] inputByteArray = Encoding.UTF8.GetBytes(strText);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(byKey, IV), CryptoStreamMode.Write) ;
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
outString = Convert.ToBase64String(ms.ToArray());
}
catch(System.Exception)
{
outString = "";
} return outString;
} /// <summary>
/// 解密字符串
/// </summary>
/// <param name="strText">加了密的字符串</param>
/// <param name="decryptKey">密钥</param>
public static string DesDecrypt(string strText)
{
string outString = "";
byte[] byKey = null;
byte[] IV= {0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF};
byte[] inputByteArray = new Byte[strText.Length];
try
{
byKey = System.Text.Encoding.UTF8.GetBytes(decryptKey.Substring(0, decryptKey.Length));
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
inputByteArray = Convert.FromBase64String(strText);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(byKey, IV), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
System.Text.Encoding encoding = new System.Text.UTF8Encoding();
outString = encoding.GetString(ms.ToArray());
}
catch(System.Exception)
{
outString = "";
} return outString;
} #endregion }