org.bouncycastle.crypto.signers.mldsa
Class MLDSAEngine
java.lang.Object
org.bouncycastle.crypto.signers.mldsa.MLDSAEngine
- public class MLDSAEngine
- extends java.lang.Object
|
Method Summary |
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)
|
int |
getDilithiumK()
|
int |
getDilithiumL()
|
int |
getDilithiumPolyEtaPackedBytes()
|
static MLDSAEngine |
getInstance(MLDSAParameters mldsaParameters,
java.security.SecureRandom random)
|
SHAKEDigest |
getShake256Digest()
|
protected org.bouncycastle.crypto.signers.mldsa.Symmetric |
GetSymmetric()
|
void |
initSign(byte[] tr,
boolean isPreHash,
byte[] ctx)
|
void |
initVerify(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)
|
boolean |
verifyInternal(byte[] sig,
int siglen,
SHAKEDigest shake256Digest,
byte[] rho,
byte[] encT1)
|
boolean |
verifyInternalMu(byte[] providedMu)
|
boolean |
verifyInternalMuSignature(byte[] mu,
byte[] sig,
int siglen,
SHAKEDigest shake256Digest,
byte[] rho,
byte[] encT1)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
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
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()