public static CryptoResponseModel Decrypt(string input) { CryptoResponseModel responseModel = new CryptoResponseModel(); try { byte[] inputArray = System.Convert.FromBase64String(input); TripleDESCryptoServiceProvider tripleDES = new TripleDESCryptoServiceProvider(); tripleDES.Key = UTF8Encoding.UTF8.GetBytes(MasterConstant.MASTER_CRYPTOKEY); tripleDES.Mode = CipherMode.ECB; tripleDES.Padding = PaddingMode.PKCS7; ICryptoTransform cTransform = tripleDES.CreateDecryptor(); byte[] resultArray = cTransform.TransformFinalBlock(inputArray, 0, inputArray.Length); tripleDES.Clear(); return (responseModel = new CryptoResponseModel { Status = CryptoStatusCodeEnum.Success, Value = UTF8Encoding.UTF8.GetString(resultArray) }); } catch (Exception ex) { responseModel = new CryptoResponseModel { Status = CryptoStatusCodeEnum.Fail, Message = ex.Message.ToString() }; } return(responseModel); }
public void InsertDBDetailsToTokenFile(DBSetting dbSetting, string serverType, string serverName, string dbName, string filePath) { List <CustomerTokenModel> acc = new List <CustomerTokenModel>(); if (CheckAPITokenFile(dbSetting)) { var sTokenPath = GetAPITokenFilePath(); if (File.Exists(sTokenPath)) { var text = File.ReadAllText(sTokenPath); CryptoResponseModel descryptResponseModel = Decryption(text); if (descryptResponseModel.Status == CryptoStatusCodeEnum.Success) { acc = JsonConvert.DeserializeObject <List <CustomerTokenModel> >(descryptResponseModel.Value); CustomerTokenModel cust = new CustomerTokenModel { ServerType = serverType, ServerName = serverName, DBName = dbName, }; acc.Add(cust); } else { // insert into log } } else { CustomerTokenModel cust = new CustomerTokenModel { ServerType = serverType, ServerName = serverName, DBName = dbName, }; acc.Add(cust); } } else { CustomerTokenModel cust = new CustomerTokenModel { ServerType = serverType, ServerName = serverName, DBName = dbName, }; acc.Add(cust); } string jsontext = JsonConvert.SerializeObject(acc); var encryptResponseModel = Encryption(jsontext); if (encryptResponseModel.Status == CryptoStatusCodeEnum.Success) { if (File.Exists(filePath)) { File.WriteAllText(filePath, encryptResponseModel.Value); } else { FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Write); StreamWriter sw = new StreamWriter(fs); sw.BaseStream.Seek(0, SeekOrigin.End); sw.WriteLine(encryptResponseModel.Value); sw.Flush(); sw.Close(); } } else { // fail insert into log } }