private bool ParseBarcode(string code, int index, out string value)
        {
            value = null;
            if (string.IsNullOrEmpty(code))
            {
                return(false);
            }

            if (_cryptoKeyProvider == null)
            {
                _cryptoKeyProvider = IoC.Instance.Resolve <ICryptoKeyProvider>();
            }

            var descr = _cryptoKeyProvider.GetKey(index);
            var txt   = CryptoHelper.Decrypt(code, descr);

            if (!string.IsNullOrEmpty(txt))
            {
                value = txt;
                return(true);
            }
            return(false);
        }
 public CachedCryptoKeyProvider(ICryptoKeyProvider remoteKeyStore)
 {
     _remoteKeyStore = remoteKeyStore;
 }
예제 #3
0
 /// <summary>
 /// Creates an instance of CryptoProvider with a ICryptoKeyProvider instance
 /// </summary>
 /// <param name="keyProvider">ICryptoKeyProvider used for encryption settings</param>
 public CryptoProvider(ICryptoKeyProvider keyProvider)
 {
     _keyProvider = keyProvider;
 }
예제 #4
0
 public AesEncryptionProvider(ICryptoKeyProvider keyProvider)
 {
     _key = keyProvider.GetEncryptionKey();
     _iv  = keyProvider.GetInitializationVector();
 }
예제 #5
0
 public static ICryptoKeyProvider WithCaching(this ICryptoKeyProvider client)
 {
     return(new CachedCryptoKeyProvider(client));
 }
예제 #6
0
 internal static void Initialize(ICryptoKeyProvider keyProvider)
 {
     _keyProvider = keyProvider;
 }