37 lines
856 B
C#
37 lines
856 B
C#
using System;
|
|
using Org.BouncyCastle.Math;
|
|
using Org.BouncyCastle.Math.EC;
|
|
|
|
namespace Org.BouncyCastle.Asn1.X9;
|
|
|
|
public class X9FieldElement : Asn1Encodable
|
|
{
|
|
private ECFieldElement f;
|
|
|
|
public ECFieldElement Value => f;
|
|
|
|
public X9FieldElement(ECFieldElement f)
|
|
{
|
|
this.f = f;
|
|
}
|
|
|
|
[Obsolete("Will be removed")]
|
|
public X9FieldElement(BigInteger p, Asn1OctetString s)
|
|
: this(new FpFieldElement(p, new BigInteger(1, s.GetOctets())))
|
|
{
|
|
}
|
|
|
|
[Obsolete("Will be removed")]
|
|
public X9FieldElement(int m, int k1, int k2, int k3, Asn1OctetString s)
|
|
: this(new F2mFieldElement(m, k1, k2, k3, new BigInteger(1, s.GetOctets())))
|
|
{
|
|
}
|
|
|
|
public override Asn1Object ToAsn1Object()
|
|
{
|
|
int byteLength = X9IntegerConverter.GetByteLength(f);
|
|
byte[] str = X9IntegerConverter.IntegerToBytes(f.ToBigInteger(), byteLength);
|
|
return new DerOctetString(str);
|
|
}
|
|
}
|