public DSTU4145PublicKey(ECPoint pubKey) { // We always use big-endian in parameter encoding this.pubKey = new DEROctetString(DSTU4145PointEncoder.encodePoint(pubKey)); }
public DSTU4145PublicKey(ECPoint pubKey) { // We always use big-endian in parameter encoding this.pubKey = new DEROctetString(DSTU4145PointEncoder.encodePoint(pubKey)); }
public DSTU4145ECBinary(ECDomainParameters params) { ECCurve curve = params.getCurve(); if (!ECAlgorithms.isF2mCurve(curve)) { throw new IllegalArgumentException("only binary domain is possible"); } // We always use big-endian in parameter encoding PolynomialExtensionField field = (PolynomialExtensionField)curve.getField(); int[] exponents = field.getMinimalPolynomial().getExponentsPresent(); if (exponents.length == 3) { f = new DSTU4145BinaryField(exponents[2], exponents[1]); } else if (exponents.length == 5) { f = new DSTU4145BinaryField(exponents[4], exponents[1], exponents[2], exponents[3]); } else { throw new IllegalArgumentException("curve must have a trinomial or pentanomial basis"); } a = new ASN1Integer(curve.getA().toBigInteger()); b = new DEROctetString(curve.getB().getEncoded()); n = new ASN1Integer(params.getN()); bp = new DEROctetString(DSTU4145PointEncoder.encodePoint(params.getG())); }
public DSTU4145ECBinary(ECDomainParameters params) { ECCurve curve = params.getCurve(); if (!ECAlgorithms.isF2mCurve(curve)) { throw new IllegalArgumentException("only binary domain is possible"); } // We always use big-endian in parameter encoding PolynomialExtensionField field = (PolynomialExtensionField)curve.getField(); int[] exponents = field.getMinimalPolynomial().getExponentsPresent(); if (exponents.length == 3) { f = new DSTU4145BinaryField(exponents[2], exponents[1]); } else if (exponents.length == 5) { f = new DSTU4145BinaryField(exponents[4], exponents[1], exponents[2], exponents[3]); } a = new ASN1Integer(curve.getA().toBigInteger()); b = new DEROctetString(curve.getB().getEncoded()); n = new ASN1Integer(params.getN()); bp = new DEROctetString(DSTU4145PointEncoder.encodePoint(params.getG())); }
byte[] encKey = DSTU4145PointEncoder.encodePoint(ecPublicKey.getQ());