Class MLDSAEngine

java.lang.Object
org.bouncycastle.crypto.signers.mldsa.MLDSAEngine

public class MLDSAEngine extends Object
  • Field Details

  • Method Details

    • 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, 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()