MLKemKeyGenerationParameters
using Org.BouncyCastle.Asn1;
using Org.BouncyCastle.Security;
using System;
namespace Org.BouncyCastle.Crypto.Parameters
{
public sealed class MLKemKeyGenerationParameters : KeyGenerationParameters
{
private readonly MLKemParameters m_parameters;
public MLKemParameters Parameters => m_parameters;
public MLKemKeyGenerationParameters(SecureRandom random, MLKemParameters parameters)
: base(random, 0)
{
if (parameters == null)
throw new ArgumentNullException("parameters");
m_parameters = parameters;
}
public MLKemKeyGenerationParameters(SecureRandom random, DerObjectIdentifier parametersOid)
: base(random, 0)
{
if (parametersOid == null)
throw new ArgumentNullException("parametersOid");
if (!MLKemParameters.ByOid.TryGetValue(parametersOid, out m_parameters))
throw new ArgumentException("unrecognised ML-KEM parameters OID", "parametersOid");
}
}
}