Exemple #1
0
        public void SymmetricKeyAlgorithmGetAsBytesTest()
        {
            // Arrange
            byte[] initialCounter1 = new byte[] { 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff };
            byte[] initialCounter2 = new byte[] { 0xf1, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff };

            SettingsAES_CTR settingsAES_CTR1 = new SettingsAES_CTR(initialCounter1);
            SettingsAES_CTR settingsAES_CTR2 = new SettingsAES_CTR(initialCounter2);

            SymmetricKeyAlgorithm skaAES_CTR1 = new SymmetricKeyAlgorithm(SymmetricEncryptionAlgorithm.AES_CTR, 128, settingsAES_CTR1);
            SymmetricKeyAlgorithm skaAES_CTR2 = new SymmetricKeyAlgorithm(SymmetricEncryptionAlgorithm.AES_CTR, 128, settingsAES_CTR1);
            SymmetricKeyAlgorithm skaAES_CTR3 = new SymmetricKeyAlgorithm(SymmetricEncryptionAlgorithm.AES_CTR, 256, settingsAES_CTR1);

            SymmetricKeyAlgorithm skaAES_CTR4 = new SymmetricKeyAlgorithm(SymmetricEncryptionAlgorithm.AES_CTR, 128, settingsAES_CTR2);

            // Act
            byte[] skaAES_CTR1bytes = skaAES_CTR1.GetSettingsAsBytes();
            byte[] skaAES_CTR2bytes = skaAES_CTR2.GetSettingsAsBytes();
            byte[] skaAES_CTR3bytes = skaAES_CTR3.GetSettingsAsBytes();
            byte[] skaAES_CTR4bytes = skaAES_CTR4.GetSettingsAsBytes();

            // Assert
            Assert.IsNotNull(skaAES_CTR1bytes);
            Assert.IsNotNull(skaAES_CTR2bytes);
            Assert.IsNotNull(skaAES_CTR3bytes);
            Assert.IsNotNull(skaAES_CTR4bytes);

            CollectionAssert.AreEqual(skaAES_CTR1bytes, skaAES_CTR2bytes);
            CollectionAssert.AreNotEqual(skaAES_CTR1bytes, skaAES_CTR3bytes);
            CollectionAssert.AreNotEqual(skaAES_CTR1bytes, skaAES_CTR4bytes);
        }
 public static bool AreSymmetricKeyAlgorithmsEqual(SymmetricKeyAlgorithm symmetricKeyAlgorithm1, SymmetricKeyAlgorithm symmetricKeyAlgorithm2)
 {
     return(StructuralComparisons.StructuralEqualityComparer.Equals(symmetricKeyAlgorithm1.GetSettingsAsBytes(), symmetricKeyAlgorithm2.GetSettingsAsBytes()));
 }