public static string GenerateKey(string user, string count, string productName, string editionType) { string Result = string.Empty; string info = string.Empty; string TimeOps = string.Empty; byte[] seed = null; byte[] key = null; emProductName name = (emProductName)Enum.Parse(typeof(emProductName), productName); emEditionType edition = (emEditionType)Enum.Parse(typeof(emEditionType), editionType); switch (name) { case emProductName.fishDatabase: case emProductName.fishDictionary: case emProductName.fishConvert: case emProductName.fishCodeLib: case emProductName.fishCapture: case emProductName.fishResource: case emProductName.fishVocabulary: TimeOps = String.Empty; editionType = String.Empty; break; case emProductName.fishDBMigration: TimeOps = char.ConvertFromUtf32(2468 + 41); TimeOps = TimeOps + Convert.ToString(DateTime.Now.Subtract(DateTime.Now).Seconds); break; case emProductName.fishDatabase5X64: TimeOps = char.ConvertFromUtf32(9786 + 30); productName = Enum.GetName(name.GetType(), emProductName.fishDatabase); TimeOps = TimeOps + Convert.ToString(DateTime.Now.Subtract(DateTime.Now).Seconds); break; default: throw new Exception("Invalid Product Name"); } seed = Encoding.UTF8.GetBytes(productName + TimeOps + (int)edition); info = productName + _seperator + user + " " + _seperator + count + _seperator + count + _seperator + editionType + _seperator + "@" + user; key = GetDesKey(seed); Result = DesEncrypt(info, key); return(Result); }
public string GenerateKey(string user, string count, emProductName name) { string Result = string.Empty; string info = string.Empty; byte[] seed = null; byte[] key = null; switch (name) { case emProductName.fishDatabase: case emProductName.fishDictionary: case emProductName.fishConvert: case emProductName.fishCodeLib: case emProductName.fishCapture: case emProductName.fishResource: case emProductName.fishVocabulary: seed = Encoding.UTF8.GetBytes(this.ProductName[(int)name]); break; case emProductName.fishDBMigration: int ProductType = 0; string TimeOps = char.ConvertFromUtf32(2468 + 41); string rtime = TimeOps + Convert.ToString(DateTime.Now.Subtract(DateTime.Now).Seconds); seed = Encoding.UTF8.GetBytes(this.ProductName[(int)name] + rtime + Convert.ToString(ProductType)); break; default: throw new Exception("Invalid Product Name"); } info = this.ProductName[(int)name] + this.Seperator + user + this.Seperator + count; key = this.GetDesKey(seed); Result = DesEncrypt(info, key); return(Result); }