Class MLDSAEngine


  • public class MLDSAEngine
    extends java.lang.Object
    • Method Detail

      • GetSymmetric

        protected org.bouncycastle.crypto.signers.mldsa.Symmetric GetSymmetric()
      • getDilithiumPolyEtaPackedBytes

        public int getDilithiumPolyEtaPackedBytes()
      • getDilithiumK

        public int getDilithiumK()
      • getDilithiumL

        public int getDilithiumL()
      • 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()