手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#生成注册码的实例代码
C#生成注册码的实例代码
摘要:复制代码代码如下:stringt=DateTime.Now.Ticks.ToString();t=DESKey.DESEncrypt(t,D...

复制代码 代码如下:

string t = DateTime.Now.Ticks.ToString();

t = DESKey.DESEncrypt(t, DESKey.DesKeyStr);

string[] strid = new string[t.Length];//

for (int i = 0; i < t.Length; i++)//把字符赋给数组

{

strid[i] = t.Substring(i, 1);

}

string s = "";

Random rdid = new Random();

for (int i = 0; i < 9; i++)//从数组随机抽取字符组成新的字符生成机器三

{

s += strid[rdid.Next(0, strid.Length)];

}

复制代码 代码如下:

class DESKey

{

public const string DesKeyStr = "BLUE2013";

#region DES加密

/// <summary>

/// DES加密

/// </summary>

/// <param name="pToEncrypt">需要加密的字符串</param>

/// <returns>加密后的字符串</returns>

public static string DESEncrypt(string pToEncrypt, string DesKeyStr)

{

try

{

DESCryptoServiceProvider des = new DESCryptoServiceProvider();

byte[] inputByteArray = Encoding.Default.GetBytes(pToEncrypt);

des.Key = ASCIIEncoding.ASCII.GetBytes(DesKeyStr);

des.IV = ASCIIEncoding.ASCII.GetBytes(DesKeyStr);

MemoryStream ms = new MemoryStream();

CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write);

cs.Write(inputByteArray, 0, inputByteArray.Length);

cs.FlushFinalBlock();

StringBuilder ret = new StringBuilder();

foreach (byte b in ms.ToArray())

{

ret.AppendFormat("{0:X2}", b);

}

ret.ToString();

return ret.ToString();

}

catch

{

return "";

}

}

#endregion

#region DES解密

/// <summary>

/// DES解密

/// </summary>

/// <param name="pToDecrypt">加密后的字符串</param>

/// <returns>解密后的字符串</returns>

public static string DESDecrypt(string pToDecrypt, string DesKeyStr)

{

try

{

DESCryptoServiceProvider des = new DESCryptoServiceProvider();

byte[] inputByteArray = new byte[pToDecrypt.Length / 2];

for (int x = 0; x < pToDecrypt.Length / 2; x++)

{

int i = (Convert.ToInt32(pToDecrypt.Substring(x * 2, 2), 16));

inputByteArray[x] = (byte)i;

}

des.Key = ASCIIEncoding.ASCII.GetBytes(DesKeyStr);

des.IV = ASCIIEncoding.ASCII.GetBytes(DesKeyStr);

MemoryStream ms = new MemoryStream();

CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write);

cs.Write(inputByteArray, 0, inputByteArray.Length);

cs.FlushFinalBlock();

StringBuilder ret = new StringBuilder();

return System.Text.Encoding.Default.GetString(ms.ToArray());

}

catch

{

return "";

}

}

#endregion

}

【C#生成注册码的实例代码】相关文章:

c# 调用.bat文件的实现代码

C# 无需COM组件创建快捷方式的实现代码

C# 实现简单打印的实例代码

c#结构和类的相关介绍

C# WORD操作实现代码

C# 游戏外挂实现核心代码

用C#写的ADSL拨号程序的代码示例

C#中使用Socket获取网页源代码的代码

C#软件注册码的实现代码

C#简单的加密类实例

精品推荐
分类导航