All Downloads are FREE. Search and download functionalities are using the official Maven repository.

gnu.crypto.sig.package.html Maven / Gradle / Ivy

The newest version!





Provides a basic API for algorithms to use Public/Private keypairs in Digital
Signature schemes.


Package overview

Three schemes are implemented in this library: the Digital Signature Scheme (DSS), RSA-PSS, and RSA-PKCS1 version 1.5.

The following diagram shows the important classes participating in this package:

The next diagram shows the sequences involved in using keypairs to sign and verify a message stream.

The following example shows the code involved in the above sequence diagram

ISignature dss = SignatureFactory.getInstance("DSS");
Map attrib = new HashMap();
attrib.put(ISignature.SIGNER_KEY, privateDsaKey);
dss.setupSign(attrib);

dss.update(message, 0, message.length);
Object sig = dss.sign();

ISignatureCodec codec = new DSSSignatureRawCodec();
byte[] encoded = codec.encodeSignature(sig);

Object sig2 = codec.decodeSignature(encoded);

attrib.clear();
attrib.put(ISignature.VERIFIER_KEY, publicDsaKey);
dss.setupVerify(attrib);

dss.update(message, 0, message.length);
boolean valid = dss.verify(sig);




© 2015 - 2025 Weber Informatics LLC | Privacy Policy