Example #1
0
        public static String DecryptCsvFile(Stream file, CryptoProvider crypto)
        {
            StringBuilder sb = new StringBuilder();

            using (StreamReader reader = new StreamReader(file))
            {
                String line;
                while ((line = reader.ReadLine()) != null)
                {
                    char[]   delims     = { ',' };
                    String[] values     = line.Split(delims);
                    bool     firstValue = true;
                    foreach (String value in values)
                    {
                        String rawValue = value.Trim('"', ' ');
                        String newValue = null;
                        crypto.TryDecryptOrValue(rawValue, out newValue);
                        if (firstValue)
                        {
                            firstValue = false;
                        }
                        else
                        {
                            sb.Append(",");
                        }

                        sb.Append(newValue);
                    }
                    sb.AppendLine(String.Empty);
                }
                reader.Close();
            }

            return(sb.ToString());
        }
Example #2
0
 private static void DecryptXmlNode(XmlNode node, CryptoProvider crypto)
 {
     if (node.NodeType == XmlNodeType.Text || node.NodeType == XmlNodeType.Attribute)
     {
         String newValue = null;
         crypto.TryDecryptOrValue(node.Value, out newValue);
         if (node.Value != newValue)
         {
             node.Value = newValue;
         }
     }
     else
     {
         foreach (XmlNode child in node.ChildNodes)
         {
             DecryptXmlNode(child, crypto);
         }
         foreach (XmlNode attribute in node.Attributes)
         {
             DecryptXmlNode(attribute, crypto);
         }
     }
 }