Example #1
0
        internal static byte[] DecryptSymmetric(string symmetricInstance, byte[] ciphertext, ConfigurationContext context)
        {
            ArgumentValidation.CheckForNullReference(symmetricInstance, "symmetricInstance");
            ArgumentValidation.CheckForEmptyString(symmetricInstance, "symmetricInstance");

            SymmetricCryptoProviderFactory factory           = new SymmetricCryptoProviderFactory(context);
            ISymmetricCryptoProvider       symmetricProvider = factory.CreateSymmetricCryptoProvider(symmetricInstance);

            return(symmetricProvider.Decrypt(ciphertext));
        }
Example #2
0
        /// <summary>
        /// Decrypts a cipher text using a specified symmetric cryptography provider.
        /// </summary>
        /// <param name="symmetricInstance">A symmetric instance from configuration.</param>
        /// <param name="ciphertext">The cipher text for which you want to decrypt.</param>
        /// <returns>The resulting plain text.</returns>
        public static byte[] DecryptSymmetric(string symmetricInstance, byte[] ciphertext)
        {
            if (string.IsNullOrEmpty(symmetricInstance))
            {
                throw new ArgumentException(Resources.ExceptionNullOrEmptyString, "symmetricInstance");
            }

            try
            {
                SymmetricCryptoProviderFactory factory           = new SymmetricCryptoProviderFactory(ConfigurationSourceFactory.Create());
                ISymmetricCryptoProvider       symmetricProvider = factory.Create(symmetricInstance);

                return(symmetricProvider.Decrypt(ciphertext));
            }
            catch (ConfigurationErrorsException configurationException)
            {
                TryLogSymmetricConfigurationError(configurationException, symmetricInstance);

                throw;
            }
        }
Example #3
0
		/// <summary>
		/// Decrypts a cipher text using a specified symmetric cryptography provider.
		/// </summary>
		/// <param name="symmetricInstance">A symmetric instance from configuration.</param>
		/// <param name="ciphertext">The cipher text for which you want to decrypt.</param>
		/// <returns>The resulting plain text.</returns>
		public static byte[] DecryptSymmetric(string symmetricInstance, byte[] ciphertext)
		{
			if (string.IsNullOrEmpty(symmetricInstance)) throw new ArgumentException(Resources.ExceptionNullOrEmptyString, "symmetricInstance");

			try
			{
				SymmetricCryptoProviderFactory factory = new SymmetricCryptoProviderFactory(ConfigurationSourceFactory.Create());
				ISymmetricCryptoProvider symmetricProvider = factory.Create(symmetricInstance);

				return symmetricProvider.Decrypt(ciphertext);
			}
			catch (ConfigurationErrorsException configurationException)
			{
				TryLogSymmetricConfigurationError(configurationException, symmetricInstance);

				throw;
			}
		}
Example #4
0
        internal static byte[] EncryptSymmetric(string symmetricInstance, byte[] plaintext, ConfigurationContext context)
        {
            ArgumentValidation.CheckForNullReference(symmetricInstance, "symmetricInstance");
            ArgumentValidation.CheckForEmptyString(symmetricInstance, "symmetricInstance");

            SymmetricCryptoProviderFactory factory = new SymmetricCryptoProviderFactory(context);
            ISymmetricCryptoProvider symmetricProvider = factory.CreateSymmetricCryptoProvider(symmetricInstance);
            return symmetricProvider.Encrypt(plaintext);
        }
 private ISymmetricCryptoProvider CreateProvider()
 {
     SymmetricCryptoProviderFactory factory = new SymmetricCryptoProviderFactory(cachingConfigurationView.ConfigurationContext);
     SymmetricStorageEncryptionProviderData data = (SymmetricStorageEncryptionProviderData) cachingConfigurationView.GetStorageEncryptionProviderData(ConfigurationName);
     return factory.CreateSymmetricCryptoProvider(data.SymmetricInstance);
 }