FileDocCategorySizeDatePackage
PSSParameterSpec.javaAPI DocJava SE 6 API5624Tue Jun 10 00:25:48 BST 2008java.security.spec

PSSParameterSpec

public class PSSParameterSpec extends Object implements AlgorithmParameterSpec
This class specifies a parameter spec for RSA-PSS signature scheme, as defined in the PKCS#1 v2.1 standard.

Its ASN.1 definition in PKCS#1 standard is described below:

RSASSA-PSS-params ::= SEQUENCE {
hashAlgorithm [0] OAEP-PSSDigestAlgorithms DEFAULT sha1,
maskGenAlgorithm [1] PKCS1MGFAlgorithms DEFAULT mgf1SHA1,
saltLength [2] INTEGER DEFAULT 20,
trailerField [3] INTEGER DEFAULT 1
}
where
OAEP-PSSDigestAlgorithms ALGORITHM-IDENTIFIER ::= {
{ OID id-sha1 PARAMETERS NULL }|
{ OID id-sha256 PARAMETERS NULL }|
{ OID id-sha384 PARAMETERS NULL }|
{ OID id-sha512 PARAMETERS NULL },
... -- Allows for future expansion --
}

PKCS1MGFAlgorithms ALGORITHM-IDENTIFIER ::= {
{ OID id-mgf1 PARAMETERS OAEP-PSSDigestAlgorithms },
... -- Allows for future expansion --
}

Note: the PSSParameterSpec.DEFAULT uses the following: message digest -- "SHA-1" mask generation function (mgf) -- "MGF1" parameters for mgf -- MGF1ParameterSpec.SHA1 SaltLength -- 20 TrailerField -- 1

see
MGF1ParameterSpec
see
AlgorithmParameterSpec
see
java.security.Signature
author
Valerie Peng
version
1.9 06/07/20
since
1.4

Fields Summary
private String
mdName
private String
mgfName
private AlgorithmParameterSpec
mgfSpec
private int
saltLen
private int
trailerField
public static final PSSParameterSpec
DEFAULT
The PSS parameter set with all default values.
Constructors Summary
private PSSParameterSpec()
Constructs a new PSSParameterSpec as defined in the PKCS #1 standard using the default values.


                        
      
    
public PSSParameterSpec(String mdName, String mgfName, AlgorithmParameterSpec mgfSpec, int saltLen, int trailerField)
Creates a new PSSParameterSpec as defined in the PKCS #1 standard using the specified message digest, mask generation function, parameters for mask generation function, salt length, and trailer field values.

param
mdName the algorithm name of the hash function.
param
mgfName the algorithm name of the mask generation function.
param
mgfSpec the parameters for the mask generation function. If null is specified, null will be returned by getMGFParameters().
param
saltLen the length of salt.
param
trailerField the value of the trailer field.
exception
NullPointerException if mdName, or mgfName is null.
exception
IllegalArgumentException if saltLen or trailerField is less than 0.
since
1.5

	if (mdName == null) {
	    throw new NullPointerException("digest algorithm is null");
	}
	if (mgfName == null) {
	    throw new NullPointerException("mask generation function " +
					   "algorithm is null");
	}
	if (saltLen < 0) {
	    throw new IllegalArgumentException("negative saltLen value: " + 
					       saltLen);
	}
	if (trailerField < 0) {
	    throw new IllegalArgumentException("negative trailerField: " +
					       trailerField);
	}
        this.mdName = mdName;
        this.mgfName = mgfName;
        this.mgfSpec = mgfSpec;
	this.saltLen = saltLen;
	this.trailerField = trailerField;
    
public PSSParameterSpec(int saltLen)
Creates a new PSSParameterSpec using the specified salt length and other default values as defined in PKCS#1.

param
saltLen the length of salt in bits to be used in PKCS#1 PSS encoding.
exception
IllegalArgumentException if saltLen is less than 0.

	if (saltLen < 0) {
	    throw new IllegalArgumentException("negative saltLen value: " + 
					       saltLen);
	}
	this.saltLen = saltLen;
    
Methods Summary
public java.lang.StringgetDigestAlgorithm()
Returns the message digest algorithm name.

return
the message digest algorithm name.
since
1.5

        return mdName;
    
public java.lang.StringgetMGFAlgorithm()
Returns the mask generation function algorithm name.

return
the mask generation function algorithm name.
since
1.5

        return mgfName;
    
public java.security.spec.AlgorithmParameterSpecgetMGFParameters()
Returns the parameters for the mask generation function.

return
the parameters for the mask generation function.
since
1.5

        return mgfSpec;
    
public intgetSaltLength()
Returns the salt length in bits.

return
the salt length.

	return saltLen;
    
public intgetTrailerField()
Returns the value for the trailer field, i.e. bc in PKCS#1 v2.1.

return
the value for the trailer field, i.e. bc in PKCS#1 v2.1.
since
1.5

	return trailerField;