private Jwk TryWrapKey_Success(SymmetricJwk keyToWrap, EncryptionAlgorithm enc, KeyManagementAlgorithm alg) { var keyEncryptionKey = RsaJwk.GeneratePrivateKey(alg.RequiredKeySizeInBits); var wrapper = new RsaKeyWrapper(keyEncryptionKey, enc, alg); var cek = WrapKey(wrapper, keyToWrap, out var header); Assert.Equal(0, header.Count); return(cek); }
public void WrapKey_Failure() { var keyEncryptionKey = RsaJwk.GenerateKey(2048, true); var wrapper = new RsaKeyWrapper(keyEncryptionKey, EncryptionAlgorithm.Aes256CbcHmacSha512, KeyManagementAlgorithm.RsaOaep); var destination = new byte[0]; var header = new JwtObject(); Assert.Throws <CryptographicException>(() => wrapper.WrapKey(null, header, destination)); wrapper.Dispose(); Assert.Throws <ObjectDisposedException>(() => wrapper.WrapKey(null, header, destination)); Assert.Equal(0, header.Count); }