x9fieldelement.java

来自「bouncycastle 是一个JAVA安全提供者」· Java 代码 · 共 66 行

JAVA
66
字号
package org.bouncycastle.asn1.x9;import java.math.BigInteger;import org.bouncycastle.asn1.ASN1Encodable;import org.bouncycastle.asn1.ASN1OctetString;import org.bouncycastle.asn1.DERObject;import org.bouncycastle.asn1.DEROctetString;import org.bouncycastle.math.ec.ECFieldElement;/** * class for processing an FieldElement as a DER object. */public class X9FieldElement    extends ASN1Encodable{    private ECFieldElement  f;    public X9FieldElement(        ECFieldElement  f)    {        this.f = f;    }    public X9FieldElement(        boolean          fP,        BigInteger       q,        ASN1OctetString  s)    {        if (fP)        {            this.f = new ECFieldElement.Fp(q, new BigInteger(1, s.getOctets()));        }        else        {            throw new RuntimeException("not implemented");        }    }    public ECFieldElement getValue()    {        return f;    }    /**     * Produce an object suitable for an ASN1OutputStream.     * <pre>     *  FieldElement ::= OCTET STRING     * </pre>     * <p>     * <ol>     * <li> if <i>q</i> is an odd prime then the field element is     * processed as an Integer and converted to an octet string     * according to x 9.62 4.3.1.</li>     * <li> if <i>q</i> is 2<sup>m</sup> then the bit string     * contained in the field element is converted into an octet     * string with the same ordering padded at the front if necessary.     * </li>     * </ol>     */    public DERObject toASN1Object()    {        return new DEROctetString(f.toBigInteger().toByteArray());    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?