public void AuthenticatedSymmetricAlgorithmCreateTest() { // AuthenticatedAesCng should be the default implementation using (AuthenticatedSymmetricAlgorithm alg = AuthenticatedSymmetricAlgorithm.Create()) { Assert.IsInstanceOfType(alg, typeof(AuthenticatedAesCng)); } using (AuthenticatedSymmetricAlgorithm alg = AuthenticatedSymmetricAlgorithm.Create("AuthenticatedAesCng")) { Assert.IsInstanceOfType(alg, typeof(AuthenticatedAesCng)); } Assert.IsNull(AuthenticatedAes.Create("AuthenticatedAesDoesntExist")); Assert.IsNull(AuthenticatedAes.Create("AesCng")); }
public void AuthenticatedSymmetricAlgorithmValidTagSizeTest() { using (AuthenticatedSymmetricAlgorithm alg = AuthenticatedSymmetricAlgorithm.Create()) { foreach (KeySizes tagSizeRange in alg.LegalTagSizes) { Assert.IsTrue(alg.ValidTagSize(tagSizeRange.MinSize)); Assert.IsTrue(alg.ValidTagSize(tagSizeRange.MaxSize)); if (tagSizeRange.MinSize != tagSizeRange.MaxSize) { for (int tagSize = tagSizeRange.MinSize; tagSize < tagSizeRange.MaxSize; tagSize += tagSizeRange.SkipSize) { Assert.IsTrue(alg.ValidTagSize(tagSize)); } } } Assert.IsFalse(alg.ValidTagSize(0)); Assert.IsFalse(alg.ValidTagSize(Int32.MaxValue)); } }