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 AsymmetricKeyProvider(OidToCipherTypeMapper cipherTypeMapper, KeyInfoWrapper keyInfoWrapper, IKeyProvider <RsaKey> rsaKeyProvider, IKeyProvider <DsaKey> dsaKeyProvider, IEcKeyProvider ecKeyProvider, IElGamalKeyProvider elGamalKeyProvider) { this.cipherTypeMapper = cipherTypeMapper; this.rsaKeyProvider = rsaKeyProvider; this.dsaKeyProvider = dsaKeyProvider; this.ecKeyProvider = ecKeyProvider; this.elGamalKeyProvider = elGamalKeyProvider; this.keyInfoWrapper = keyInfoWrapper; }
public void SetupDecrypt() { var secureRandomGenerator = new SecureRandomGenerator(); var rsaProvider = new RsaKeyProvider(new AsymmetricKeyPairGenerator(secureRandomGenerator)); keyPair = rsaProvider.CreateKeyPair(1024); var oidToCipherTypeMapper = new OidToCipherTypeMapper(); encryptionProvider = new KeyEncryptionProvider(configuration, secureRandomGenerator, new AsymmetricKeyProvider(oidToCipherTypeMapper, new KeyInfoWrapper(), rsaProvider, null, null, null), new Pkcs12KeyEncryptionGenerator(), new AesKeyEncryptionGenerator()); }
public void SetupFormattingProviderTest() { var secureRandom = new SecureRandomGenerator(); rsaKeyProvider = new RsaKeyProvider(new AsymmetricKeyPairGenerator(secureRandom)); keyPair = rsaKeyProvider.CreateKeyPair(2048); var oidMapper = new OidToCipherTypeMapper(); var asymmetricKeyConverter = new AsymmetricKeyProvider(oidMapper, new KeyInfoWrapper(), rsaKeyProvider, null, null, null); pkcs8PemFormattingProvider = new Pkcs8PemFormattingProvider(asymmetricKeyConverter); var configuration = Mock.Of <IConfiguration>(m => m.Get <int>("SaltLengthInBytes") == 100 && m.Get <int>("KeyDerivationIterationCount") == 1); var encryptionProvider = new KeyEncryptionProvider(configuration, secureRandom, asymmetricKeyConverter, new Pkcs12KeyEncryptionGenerator(), new AesKeyEncryptionGenerator()); pkcsEncryptedKey = encryptionProvider.EncryptPrivateKey(keyPair.PrivateKey, "password", EncryptionType.Pkcs); aesEncryptedKey = encryptionProvider.EncryptPrivateKey(keyPair.PrivateKey, "password", EncryptionType.Aes); }
public void Setup() { cipherTypeMapper = new OidToCipherTypeMapper(); }