Esempio n. 1
0
        public void DecryptBadDataThrows()
        {
            DpapiCryptographer dpapi = new DpapiCryptographer();

            byte[] cipherText = new byte[] { 0, 1 };
            dpapi.Decrypt(cipherText, entropy);
        }
        private byte[] UnprotectBytes(byte[] ciphertext)
        {
            FileKeyAlgorithmPairStorageProviderData fileKeyAlgorithmPairStorageProviderData = GetFileKeyAlgorithmPairStorageProviderData();
            DpapiCryptographer dpapi = new DpapiCryptographer(fileKeyAlgorithmPairStorageProviderData.DpapiSettings.Mode);

            return(dpapi.Decrypt(ciphertext, fileKeyAlgorithmPairStorageProviderData.DpapiSettings.Entropy));
        }
Esempio n. 3
0
        public void DecryptWithEmptyCipherTextThrows()
        {
            byte[]             b     = new byte[] { };
            DpapiCryptographer dpapi = new DpapiCryptographer(DataProtectionScope.CurrentUser);

            dpapi.Decrypt(b);
        }
        public void DecryptWithDifferentEntropyThanEncrypt()
        {
            byte[] plainBytes = new byte[] {0, 1, 2, 3, 4};
            byte[] entropy1 = new byte[16];
            byte[] entropy2 = new byte[16];
            CryptographyUtility.GetRandomBytes(entropy1);
            CryptographyUtility.GetRandomBytes(entropy2);

            DpapiCryptographer dpapi = new DpapiCryptographer(DpapiStorageMode.Machine);
            byte[] encrypted = dpapi.Encrypt(plainBytes, entropy1);
            dpapi.Decrypt(encrypted, entropy2);
        }
Esempio n. 5
0
        public void EncryptAndDecryptUserMode()
        {
            DpapiStorageMode   mode  = DpapiStorageMode.User;
            DpapiCryptographer dpapi = new DpapiCryptographer(mode);

            byte[] cipherText = dpapi.Encrypt(this.plainText);

            Assert.IsFalse(CryptographyUtility.CompareBytes(this.plainText, cipherText));

            byte[] decryptedText = dpapi.Decrypt(cipherText);

            Assert.IsTrue(CryptographyUtility.CompareBytes(this.plainText, decryptedText));
        }
Esempio n. 6
0
        public void DecryptWithDifferentEntropyThanEncrypt()
        {
            byte[] plainBytes = new byte[] { 0, 1, 2, 3, 4 };
            byte[] entropy1   = new byte[16];
            byte[] entropy2   = new byte[16];
            CryptographyUtility.GetRandomBytes(entropy1);
            CryptographyUtility.GetRandomBytes(entropy2);

            DpapiCryptographer dpapi = new DpapiCryptographer(DpapiStorageMode.Machine);

            byte[] encrypted = dpapi.Encrypt(plainBytes, entropy1);
            dpapi.Decrypt(encrypted, entropy2);
        }
        public void EncryptAndDecryptMachineMode()
        {
            DpapiStorageMode mode = DpapiStorageMode.Machine;
            DpapiCryptographer dpapi = new DpapiCryptographer(mode);

            byte[] cipherText = dpapi.Encrypt(this.plainText, this.entropy);

            Assert.IsFalse(CryptographyUtility.CompareBytes(this.plainText, cipherText));

            byte[] decryptedText = dpapi.Decrypt(cipherText, this.entropy);

            Assert.IsTrue(CryptographyUtility.CompareBytes(this.plainText, decryptedText));
        }
Esempio n. 8
0
        public void DecryptWithDifferentEntropyThanEncryptThrows()
        {
            byte[] plainBytes = new byte[] { 0, 1, 2, 3, 4 };
            byte[] entropy1   = new byte[16];
            byte[] entropy2   = new byte[16];
            CryptographyUtility.GetRandomBytes(entropy1);
            CryptographyUtility.GetRandomBytes(entropy2);

            DpapiCryptographer dpapi = new DpapiCryptographer(DataProtectionScope.LocalMachine);

            byte[] encrypted = dpapi.Encrypt(plainBytes, entropy1);
            dpapi.Decrypt(encrypted, entropy2);
        }
        public void EncryptAndDecryptUserMode()
        {
            DataProtectionScope mode = DataProtectionScope.CurrentUser;
            DpapiCryptographer dpapi = new DpapiCryptographer(mode);

            byte[] cipherText = dpapi.Encrypt(plainText);

            Assert.IsFalse(CryptographyUtility.CompareBytes(plainText, cipherText));

            byte[] decryptedText = dpapi.Decrypt(cipherText);

            Assert.IsTrue(CryptographyUtility.CompareBytes(plainText, decryptedText));
        }
Esempio n. 10
0
        public void EncryptAndDecryptUserMode()
        {
            DataProtectionScope mode  = DataProtectionScope.CurrentUser;
            DpapiCryptographer  dpapi = new DpapiCryptographer(mode);

            byte[] cipherText = dpapi.Encrypt(plainText);

            Assert.IsFalse(CryptographyUtility.CompareBytes(plainText, cipherText));

            byte[] decryptedText = dpapi.Decrypt(cipherText);

            Assert.IsTrue(CryptographyUtility.CompareBytes(plainText, decryptedText));
        }
 public void DecryptWithEmptyCipherTextThrows()
 {
     byte[] b = new byte[] { };
     DpapiCryptographer dpapi = new DpapiCryptographer(DataProtectionScope.CurrentUser);
     dpapi.Decrypt(b);
 }
Esempio n. 12
0
        public void DecryptWithNullCipherText()
        {
            DpapiCryptographer dpapi = new DpapiCryptographer(DpapiStorageMode.User);

            dpapi.Decrypt(null);
        }
 public void DecryptWithNullCipherTextThrows()
 {
     DpapiCryptographer dpapi = new DpapiCryptographer(DataProtectionScope.CurrentUser);
     dpapi.Decrypt(null);
 }
Esempio n. 14
0
        public void DecryptWithNullCipherTextThrows()
        {
            DpapiCryptographer dpapi = new DpapiCryptographer(DataProtectionScope.CurrentUser);

            dpapi.Decrypt(null);
        }
        public void DecryptWithDifferentEntropyThanEncryptThrows()
        {
            byte[] plainBytes = new byte[] { 0, 1, 2, 3, 4 };
            byte[] entropy1 = new byte[16];
            byte[] entropy2 = new byte[16];
            CryptographyUtility.GetRandomBytes(entropy1);
            CryptographyUtility.GetRandomBytes(entropy2);

            DpapiCryptographer dpapi = new DpapiCryptographer(DataProtectionScope.LocalMachine);
            byte[] encrypted = dpapi.Encrypt(plainBytes, entropy1);
            dpapi.Decrypt(encrypted, entropy2);
        }
 public void DecryptBadDataThrows()
 {
     DpapiCryptographer dpapi = new DpapiCryptographer();
     byte[] cipherText = new byte[] { 0, 1 };
     dpapi.Decrypt(cipherText, entropy);
 }
Esempio n. 17
0
 public void DecryptWithNullCipherText()
 {
     DpapiCryptographer dpapi = new DpapiCryptographer(DpapiStorageMode.User);
     dpapi.Decrypt(null);
 }