/// <summary> /// Finds the resource in calling assembly that contains the given string 'name'. /// </summary> public static byte[] GetEncryptedResource(string name, string rijpass) { var asm = Assembly.GetCallingAssembly(); var target = asm.GetManifestResourceNames().FirstOrDefault(mrn => mrn.Contains(name)); if (target == null) { throw new FileNotFoundException($"Could not find a resource that contains the name '{name}'"); } var res = asm.GetManifestResourceStream(target); var rij = new RijndaelEnhanced(rijpass); return(rij.DecryptToBytes(res.ReadAll())); }
/// <summary> /// Decrypt the SOAP Stream BeforeSerialize. /// </summary> /// <param name="message"></param> private void Decrypt(SoapMessage message) { if (encryptMessage) { CopyBinaryStream(oldStream, newStream); MemoryStream ms = new MemoryStream(); newStream.Position = 0; CopyBinaryStream(newStream, ms); ms.Position = 0; byte[] encryptedBytes = ms.ToArray(); RijndaelEnhanced rj = new RijndaelEnhanced(sPassPhrase, sInitVector); if (compressMessage) { byte[] compressedBytes = rj.DecryptToBytes(encryptedBytes); newStream.Position = 0; BinaryWriter binaryWriter = new BinaryWriter(newStream); binaryWriter.Write(compressedBytes); binaryWriter.Flush(); } else { string soapMessage = rj.Decrypt(encryptedBytes);; newStream.Position = 0; StreamWriter streamWriter = new StreamWriter(newStream); // Clear all newStream contents with WhiteSpace before overwrite for (int i = 0; i < newStream.Length; i++) { streamWriter.Write(" "); streamWriter.Flush(); } newStream.Position = 0; streamWriter.Write(soapMessage); streamWriter.Flush(); } newStream.Position = 0; } }
public byte[] DecryptToBytes(byte[] data, string key) { var rij = new RijndaelEnhanced(key); return rij.DecryptToBytes(data); }
public byte[] DecryptToBytes(byte[] data, string key) { var rij = new RijndaelEnhanced(key); return(rij.DecryptToBytes(data)); }