public void SetupAsymmetricKeyProviderTest() { var configuration = Mock.Of <IConfiguration>(c => c.Get <int>("SaltLengthInBytes") == 100 && c.Get <int>("KeyDerivationIterationCount") == 10); var secureRandom = new SecureRandomGenerator(); var asymmetricKeyPairGenerator = new AsymmetricKeyPairGenerator(secureRandom); var primeMapper = new Rfc3526PrimeMapper(); var fieldMapper = new FieldToCurveNameMapper(); rsaKeyProvider = new RsaKeyProvider(asymmetricKeyPairGenerator); dsaKeyProvider = new DsaKeyProvider(asymmetricKeyPairGenerator); ecKeyProvider = new EcKeyProvider(asymmetricKeyPairGenerator, fieldMapper); elGamalKeyProvider = new ElGamalKeyProvider(asymmetricKeyPairGenerator, primeMapper); cipherTypeMapper = new OidToCipherTypeMapper(); keyInfoWrapper = new Mock <KeyInfoWrapper>(); SetupValidKeyInfo(); SetupValidKeyProvider(); pkcsEncryptionProvider = new KeyEncryptionProvider(configuration, secureRandom, keyProvider, new Pkcs12KeyEncryptionGenerator(), new AesKeyEncryptionGenerator()); rsaKeyPair = rsaKeyProvider.CreateKeyPair(2048); dsaKeyPair = dsaKeyProvider.CreateKeyPair(2048); ecKeyPair = ecKeyProvider.CreateKeyPair("secp384r1"); elGamalKeyPair = elGamalKeyProvider.CreateKeyPair(2048, true); }
public void SetupDsaKeyProviderTest() { var secureRandomGenerator = new SecureRandomGenerator(); var keyGenerator = new AsymmetricKeyPairGenerator(secureRandomGenerator); keyProvider = new DsaKeyProvider(keyGenerator); keyPair = keyProvider.CreateKeyPair(2048); }
protected void SetupWithDsaKey() { keyPair = dsaKeyProvider.CreateKeyPair(2048); var privateDsaKey = keyPair.PrivateKey; privateKey = pkcs8PemFormatter.GetAsPem(privateDsaKey); file.Setup(f => f.ReadAllBytes("private.pem")) .Returns(encoding.GetBytes(privateKey)); }
public void Setup() { var dsaKeyProvider = new DsaKeyProvider(keyPairGenerator); IAsymmetricKeyPair keyPair = dsaKeyProvider.CreateKeyPair(2048); key = keyPair.PublicKey; string keyContent = provider.GetDsaPublicKeyContent(key); result = base64.FromBase64String(keyContent); using (var stream = new MemoryStream(result)) { rawHeader = ReadNextContent(stream); rawP = ReadNextContent(stream); rawQ = ReadNextContent(stream); rawG = ReadNextContent(stream); rawY = ReadNextContent(stream); } }