Reduce the public surface of the promoted LMS engine in org.bouncycastle.crypto.signers.lms to the shape of the ML-DSA and SLH-DSA promotions: a single LMSEngine facade carrying the tree, signing, verification, HSS key generation and child-key derivation operations the key parameter classes and generators call, LMSContext moved into the package so its one-time key and signed public key fields can be package-private types, and LMSSignature kept public only as the opaque form of the chaining signatures an HSS private key carries, with LMS and HSS folded into the facade and LM_OTS, the LM-OTS key and signature classes, HSSSignature, LMSSignedPubKey, SeedDerive, Composer, DigestUtil, LmsUtils and LMSException made package-private, the key classes taking back their range test, index increments and consumed-key replacement so those methods return to package-private, LMSSigner and HSSSigner driving the LMSContextBased API instead of the engine and an L=1 HSS key signing through the HSS key with the u32str(0) prefix stripped, the engine-internal tests moved into a crypto.signers.lms test package and the rest rewritten onto the public API.
D
David Hook committed
a7267aa2c2df47794fa5c8277b388c7065cc4ba0
Parent: dd34565