DSA
Digital Signature Algorithm (DSA) as defined in FIPS 186-5.
DSA provides digital signature generation and verification using finite-field arithmetic. Domain Parameters define the group and must be generated via parametersGenerator or decoded via parametersDecoder before key pairs can be created.
val params = provider.get(DSA).parametersGenerator(2048.bits).generateParameters()
val keys = params.keyPairGenerator().generateKey()
val signature = keys.privateKey.signatureGenerator(SHA256, DSA.SignatureFormat.DER).generateSignature(data)
keys.publicKey.signatureVerifier(SHA256, DSA.SignatureFormat.DER).verifySignature(data, signature)For the elliptic curve variant, see ECDSA.
Types
DSA domain parameters that provide key pair generation via keyPairGenerator.
A DSA private key that provides signature generation via signatureGenerator.
A DSA public key that provides signature verification via signatureVerifier.
Encoding format for DSA signatures.
Properties
The typed identifier that uniquely distinguishes this algorithm and is used to look it up from a CryptographyProvider.
Functions
Returns a Decoder that decodes DSA domain parameters from the specified Parameters.Format.
Returns a ParametersGenerator that generates DSA domain parameters with the specified primeSize and optional subprimeSize.
Returns a Decoder that decodes DSA private keys from the specified PrivateKey.Format.
Returns a Decoder that decodes DSA public keys from the specified PublicKey.Format.