Top Interfaces Classes
[default module]

Package org.bouncycastle.pqc.asn1


Interface Summary

Modifier and TypeInterface and Description
public interface
PQCObjectIdentifiers

PQC:

{ iso(1) identifier-organization(3) dod(6) internet(1) private(4) 1 8301 3 1 3 5 3 ...

Class Summary

Modifier and TypeClass and Description
public class
CMCEPrivateKey

ASN.1 Encoding for a Classic McEliece private key for fully populated:

McEliecePrivateKey ::= SEQUENCE {
   Version    INTEGER {v0(0)} -- version (round 3)
   delta      OCTET STRING,   -- nonce
   C          OCTET STRING,   -- column selections
   g          OCTET STRING,   -- monic irreducible polynomial
   alpha      OCTET STRING,   -- field orderings
   s          OCTET STRING,   -- random n-bit string
   PublicKey  [0] IMPLICIT McEliecePublicKey OPTIONAL
                               -- see next section
   }
public class
CMCEPublicKey

Classic McEliece Public Key Format.

public class
FalconPrivateKey

ASN.1 Encoding for a FALCON private key for fully populated:

FALCONPrivateKey ::= SEQUENCE {
    version     INTEGER {v2(1)}    -- syntax version 2 (round 3)
    f           OCTET STRING,      -- short integer polynomial f
    g           OCTET STRING,      -- short integer polynomial g
    f           OCTET STRING,      -- short integer polynomial F
    publicKey   [0] IMPLICIT FALCONPublicKey  OPTIONAL
                                   -- see next section
    }
public class
FalconPublicKey

Classic McEliece Public Key Format.

public class
public class
GMSSPublicKey

This class implements an ASN.1 encoded GMSS public key.

public class
KyberPrivateKey

Crystal Kyber Private Key Format.

public class
KyberPublicKey

Crystal Kyber Public Key Format.

public class
McElieceCCA2PrivateKey

Return the keyData to encode in the PrivateKeyInfo structure.

public class
public class
public class
public class
ParSet

 ParSet              ::= SEQUENCE {
     T               INTEGER
     h               SEQUENCE OF INTEGER
     w               SEQUENCE OF INTEGER
     K               SEQUENCE OF INTEGER
 }
public class
RainbowPrivateKey

Return the key data to encode in the PrivateKeyInfo structure.

public class
RainbowPublicKey

This class implements an ASN.1 encoded Rainbow public key.

public class
SABERPrivateKey

Expires 13 May 2022 SABERPrivateKey ::= SEQUENCE { version INTEGER {v0(0)} -- version (round 3) z OCTET STRING, -- 32-byte random value z s OCTET STRING, -- short integer polynomial s PublicKey [0] IMPLICIT SABERPublicKey OPTIONAL, -- see next section hpk OCTET STRING -- H(pk) }

public class
SABERPublicKey

Expires 13 May 2022 SABERPublicKey := SEQUENCE { seed_A OCTET STRING, -- 32-byte seed b OCTET STRING -- short integer polynomial b }

public class
public class
SPHINCSPLUSPrivateKey

See https://datatracker.ietf.org/doc/draft-uni-qsckeys-sphincsplus/00/ for details ASN.1 Encoding for a SphincsPlus private key for fully populated:

  SPHINCSPLUSPrivateKey ::= SEQUENCE {
    version          INTEGER {v2(1)}     --syntax version 2 (round 3)
    skseed          OCTET STRING,        --n-byte private key seed
    skprf           OCTET STRING,        --n-byte private key seed
    PublicKey       SPHINCSPLUSPublicKey --public key
  }
public class
SPHINCSPLUSPublicKey

See https://datatracker.ietf.org/doc/draft-uni-qsckeys-sphincsplus/00/ for details.

public class
XMSSKeyParams

XMSSKeyParams

    XMSSKeyParams ::= SEQUENCE {
    version INTEGER -- 0
    height INTEGER
    treeDigest AlgorithmIdentifier
}
public class
XMSSMTKeyParams

XMMSMTKeyParams

    XMMSMTKeyParams ::= SEQUENCE {
        version INTEGER -- 0
        height INTEGER
        layers INTEGER
        treeDigest AlgorithmIdentifier
}
public class
XMSSMTPrivateKey

XMMSMTPrivateKey

    XMMSMTPrivateKey ::= SEQUENCE {
        version INTEGER -- 0, or 1 if maxIndex is present
        keyData SEQUENCE {
           index         INTEGER
           secretKeySeed OCTET STRING
           secretKeyPRF  OCTET STRING
           publicSeed    OCTET STRING
           root          OCTET STRING
           maxIndex      [0] INTEGER OPTIONAL
        }
        bdsState CHOICE {
           platformSerialization [0] OCTET STRING
        } OPTIONAL
   }
public class
XMSSMTPublicKey

XMSSMTPublicKey

    XMSSMTPublicKey ::= SEQUENCE {
        version       INTEGER -- 0
        publicSeed    OCTET STRING
        root          OCTET STRING
   }
public class
XMSSPrivateKey

XMMSPrivateKey

    XMMSPrivateKey ::= SEQUENCE {
        version INTEGER -- 0, or 1 if maxIndex is present
        keyData SEQUENCE {
           index         INTEGER
           secretKeySeed OCTET STRING
           secretKeyPRF  OCTET STRING
           publicSeed    OCTET STRING
           root          OCTET STRING
           maxIndex      [0] INTEGER OPTIONAL
        }
        bdsState CHOICE {
           platformSerialization [0] OCTET STRING
        } OPTIONAL
   }
public class
XMSSPublicKey

XMSSPublicKey

    XMSSPublicKey ::= SEQUENCE {
        version       INTEGER -- 0
        publicSeed    OCTET STRING
        root          OCTET STRING
   }