Files
SuperVPN/output/Libraries/BouncyCastle.Crypto/Org/BouncyCastle/Crypto/Parameters/Gost3410PublicKeyParameters.cs
2025-10-09 09:57:24 +09:00

33 lines
834 B
C#

using System;
using Org.BouncyCastle.Asn1;
using Org.BouncyCastle.Math;
namespace Org.BouncyCastle.Crypto.Parameters;
public class Gost3410PublicKeyParameters : Gost3410KeyParameters
{
private readonly BigInteger y;
public BigInteger Y => y;
public Gost3410PublicKeyParameters(BigInteger y, Gost3410Parameters parameters)
: base(isPrivate: false, parameters)
{
if (y.SignValue < 1 || y.CompareTo(base.Parameters.P) >= 0)
{
throw new ArgumentException("Invalid y for GOST3410 public key", "y");
}
this.y = y;
}
public Gost3410PublicKeyParameters(BigInteger y, DerObjectIdentifier publicKeyParamSet)
: base(isPrivate: false, publicKeyParamSet)
{
if (y.SignValue < 1 || y.CompareTo(base.Parameters.P) >= 0)
{
throw new ArgumentException("Invalid y for GOST3410 public key", "y");
}
this.y = y;
}
}