コード例 #1
0
 private static byte[] RunCryptoService(this byte[] file, EncryptionKeyContainer sharedSecret, TransformCreator createCryptoTransform)
 {
     using (var hashProvider = new MD5CryptoServiceProvider())
     {
         using (var tdesAlgorithm = hashProvider.CreateKey(sharedSecret).CreateAlgorithm())
         {
             return TransformFinalBlock(file, createCryptoTransform, tdesAlgorithm);
         }
     }
 }
コード例 #2
0
 private static byte[] RunCryptoService(this byte[] file, EncryptionKeyContainer sharedSecret, TransformCreator createCryptoTransform)
 {
     using (var hashProvider = new MD5CryptoServiceProvider())
     {
         using (var tdesAlgorithm = hashProvider.CreateKey(sharedSecret).CreateAlgorithm())
         {
             return(TransformFinalBlock(file, createCryptoTransform, tdesAlgorithm));
         }
     }
 }
コード例 #3
0
 public BasicCredentials(string username, EncryptionKeyContainer password)
 {
     Username = username;
     Password = password;
     if (username.Contains("\\"))
     {
         var parts = username.Split('\\');
         DomainName     = parts[0];
         DomainUserName = parts[1];
     }
 }
コード例 #4
0
 public BasicCredentials(string username, EncryptionKeyContainer password)
 {
     Username = username;
     Password = password;
     if (username.Contains("\\"))
     {
         var parts = username.Split('\\');
         DomainName = parts[0];
         DomainUserName = parts[1];
     }
 }
コード例 #5
0
 private static byte[] CreateKey(this HashAlgorithm hashProvider, EncryptionKeyContainer sharedSecret)
 {
     return(hashProvider.ComputeHash(GetFileSecret(sharedSecret).GetByteArray()));
 }
コード例 #6
0
 public static byte[] Encrypt(this byte[] file, EncryptionKeyContainer sharedSecret)
 {
     return(file.RunCryptoService(sharedSecret, CreateEncryptTransform));
 }
コード例 #7
0
 public static string Encrypt(this string message, EncryptionKeyContainer sharedSecret)
 {
     return(Convert.ToBase64String(message.GetByteArray(EncodingType.Unicode).Encrypt(sharedSecret)));
 }
コード例 #8
0
 public static string Decrypt(this string message, EncryptionKeyContainer sharedSecret)
 {
     return(Convert.FromBase64String(message).Decrypt(sharedSecret).GetStringFromArray(EncodingType.Unicode));
 }
コード例 #9
0
 private static string GetFileSecret(EncryptionKeyContainer sharedSecret)
 {
     return(string.Format("{0}_{1}", sharedSecret.GetSecret(), Salt));
 }
コード例 #10
0
 private static string GetFileSecret(EncryptionKeyContainer sharedSecret)
 {
     return string.Format("{0}_{1}", sharedSecret.GetSecret(), Salt);
 }
コード例 #11
0
 private static byte[] CreateKey(this HashAlgorithm hashProvider, EncryptionKeyContainer sharedSecret)
 {
     return hashProvider.ComputeHash(GetFileSecret(sharedSecret).GetByteArray());
 }
コード例 #12
0
 public static byte[] Encrypt(this byte[] file, EncryptionKeyContainer sharedSecret)
 {
     return file.RunCryptoService(sharedSecret, CreateEncryptTransform);
 }
コード例 #13
0
 public static string Encrypt(this string message, EncryptionKeyContainer sharedSecret)
 {
     return Convert.ToBase64String(message.GetByteArray(EncodingType.Unicode).Encrypt(sharedSecret));
 }
コード例 #14
0
 public static string Decrypt(this string message, EncryptionKeyContainer sharedSecret)
 {
     return Convert.FromBase64String(message).Decrypt(sharedSecret).GetStringFromArray(EncodingType.Unicode);
 }