Class MLDSAEngine
- java.lang.Object
-
- org.bouncycastle.crypto.signers.mldsa.MLDSAEngine
-
public class MLDSAEngine extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description static intCrhBytesstatic intDilithiumDstatic intDilithiumNstatic intDilithiumPolyT0PackedBytesstatic intDilithiumPolyT1PackedBytesstatic intDilithiumQstatic intDilithiumQinvstatic intRndBytesstatic intSeedBytesstatic intTrBytes
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]deriveT1(byte[] rho, byte[] key, byte[] tr, byte[] s1Enc, byte[] s2Enc, byte[] t0Enc)byte[][]generateKeyPair()byte[][]generateKeyPairInternal(byte[] seed)byte[]generateMu(SHAKEDigest shake256Digest)byte[]generateSignature(byte[] mu, SHAKEDigest shake256Digest, byte[] rho, byte[] key, byte[] t0Enc, byte[] s1Enc, byte[] s2Enc, byte[] rnd)intgetDilithiumK()intgetDilithiumL()intgetDilithiumPolyEtaPackedBytes()static MLDSAEnginegetInstance(MLDSAParameters mldsaParameters, java.security.SecureRandom random)SHAKEDigestgetShake256Digest()protected org.bouncycastle.crypto.signers.mldsa.SymmetricGetSymmetric()voidinitSign(byte[] tr, boolean isPreHash, byte[] ctx)voidinitVerify(byte[] rho, byte[] encT1, boolean isPreHash, byte[] ctx)byte[]signInternal(byte[] msg, int msglen, byte[] rho, byte[] key, byte[] t0Enc, byte[] s1Enc, byte[] s2Enc, byte[] rnd)booleanverifyInternal(byte[] sig, int siglen, SHAKEDigest shake256Digest, byte[] rho, byte[] encT1)booleanverifyInternalMu(byte[] providedMu)booleanverifyInternalMuSignature(byte[] mu, byte[] sig, int siglen, SHAKEDigest shake256Digest, byte[] rho, byte[] encT1)
-
-
-
Field Detail
-
DilithiumN
public static final int DilithiumN
- See Also:
- Constant Field Values
-
DilithiumQ
public static final int DilithiumQ
- See Also:
- Constant Field Values
-
DilithiumQinv
public static final int DilithiumQinv
- See Also:
- Constant Field Values
-
DilithiumD
public static final int DilithiumD
- See Also:
- Constant Field Values
-
SeedBytes
public static final int SeedBytes
- See Also:
- Constant Field Values
-
CrhBytes
public static final int CrhBytes
- See Also:
- Constant Field Values
-
RndBytes
public static final int RndBytes
- See Also:
- Constant Field Values
-
TrBytes
public static final int TrBytes
- See Also:
- Constant Field Values
-
DilithiumPolyT1PackedBytes
public static final int DilithiumPolyT1PackedBytes
- See Also:
- Constant Field Values
-
DilithiumPolyT0PackedBytes
public static final int DilithiumPolyT0PackedBytes
- See Also:
- Constant Field Values
-
-
Method Detail
-
GetSymmetric
protected org.bouncycastle.crypto.signers.mldsa.Symmetric GetSymmetric()
-
getDilithiumPolyEtaPackedBytes
public int getDilithiumPolyEtaPackedBytes()
-
getDilithiumK
public int getDilithiumK()
-
getDilithiumL
public int getDilithiumL()
-
getInstance
public static MLDSAEngine getInstance(MLDSAParameters mldsaParameters, java.security.SecureRandom random)
-
generateKeyPairInternal
public byte[][] generateKeyPairInternal(byte[] seed)
-
deriveT1
public byte[] deriveT1(byte[] rho, byte[] key, byte[] tr, byte[] s1Enc, byte[] s2Enc, byte[] t0Enc)
-
getShake256Digest
public SHAKEDigest getShake256Digest()
-
initSign
public void initSign(byte[] tr, boolean isPreHash, byte[] ctx)
-
initVerify
public void initVerify(byte[] rho, byte[] encT1, boolean isPreHash, byte[] ctx)
-
signInternal
public byte[] signInternal(byte[] msg, int msglen, byte[] rho, byte[] key, byte[] t0Enc, byte[] s1Enc, byte[] s2Enc, byte[] rnd)
-
generateMu
public byte[] generateMu(SHAKEDigest shake256Digest)
-
generateSignature
public byte[] generateSignature(byte[] mu, SHAKEDigest shake256Digest, byte[] rho, byte[] key, byte[] t0Enc, byte[] s1Enc, byte[] s2Enc, byte[] rnd)
-
verifyInternalMu
public boolean verifyInternalMu(byte[] providedMu)
-
verifyInternalMuSignature
public boolean verifyInternalMuSignature(byte[] mu, byte[] sig, int siglen, SHAKEDigest shake256Digest, byte[] rho, byte[] encT1)
-
verifyInternal
public boolean verifyInternal(byte[] sig, int siglen, SHAKEDigest shake256Digest, byte[] rho, byte[] encT1)
-
generateKeyPair
public byte[][] generateKeyPair()
-
-