Esempio n. 1
0
        /// <summary>
        /// Decrypts the specified bytes.
        /// </summary>
        /// <param name="provider">The provider.</param>
        /// <param name="bytes">The bytes.</param>
        /// <returns></returns>
        public static T Decrypt <T>(this IDataSecurityProvider provider, byte[] bytes)
        {
            var originalString = (provider != null && bytes != null) ? encoding.GetString(provider.Decrypt(bytes)) : null;

            return(typeof(T) == typeof(string) ? (T)(object)originalString : originalString.TryConvertJsonToObject <T>());
        }
Esempio n. 2
0
 /// <summary>
 /// Decrypts the specified data.
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="provider">The provider.</param>
 /// <param name="data">The data.</param>
 /// <returns></returns>
 public static T DecryptFromString <T>(this IDataSecurityProvider provider, string data)
 {
     return(Decrypt <T>(provider, data.DecodeBase64ToByteArray()));
 }
Esempio n. 3
0
 /// <summary>
 /// Encrypts as string.
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="provider">The provider.</param>
 /// <param name="obj">The object.</param>
 /// <returns></returns>
 public static string EncryptObjectAsString <T>(this IDataSecurityProvider provider, T obj)
 {
     return(Encrypt(provider, obj).EncodeBase64());
 }
Esempio n. 4
0
 /// <summary>
 /// Encrypts the specified object.
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="provider">The provider.</param>
 /// <param name="obj">The object.</param>
 /// <returns></returns>
 public static byte[] Encrypt <T>(this IDataSecurityProvider provider, T obj)
 {
     return((provider != null && obj != null) ? provider.Encrypt(encoding.GetBytes(typeof(T) == typeof(string) ? obj.ToString() : obj.ToJson(false))) : null);
 }
Esempio n. 5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DataSecurityRequiredAttribute"/> class.
 /// </summary>
 /// <param name="encryptionProvider">The encryption provider.</param>
 public DataSecurityRequiredAttribute(IDataSecurityProvider encryptionProvider = null)
 {
     EncryptionProvider = encryptionProvider;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="DataSecurityAttribute"/> class.
 /// </summary>
 /// <param name="provider">The provider.</param>
 public DataSecurityAttribute(IDataSecurityProvider provider)
 {
     DataSecurityProvider = provider;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="DataSecurityAttribute"/> class.
 /// </summary>
 /// <param name="loader">The loader.</param>
 public DataSecurityAttribute(IDataSecurityOptionLoader loader)
 {
     DataSecurityProvider = loader?.GetProvider();
 }