Java™ Platform
Standard Ed. 6

java.security.spec
Class PSSParameterSpec

java.lang.Object
  extended by java.security.spec.PSSParameterSpec
All Implemented Interfaces:
AlgorithmParameterSpec

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

Since:
1.4
See Also:
MGF1ParameterSpec, AlgorithmParameterSpec, Signature

Field Summary
static PSSParameterSpec DEFAULT
          The PSS parameter set with all default values.
 
Constructor Summary
PSSParameterSpec(int saltLen)
          Creates a new PSSParameterSpec using the specified salt length and other default values as defined in PKCS#1.
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.
 
Method Summary
 String getDigestAlgorithm()
          Returns the message digest algorithm name.
 String getMGFAlgorithm()
          Returns the mask generation function algorithm name.
 AlgorithmParameterSpec getMGFParameters()
          Returns the parameters for the mask generation function.
 int getSaltLength()
          Returns the salt length in bits.
 int getTrailerField()
          Returns the value for the trailer field, i.e.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT

public static final PSSParameterSpec DEFAULT
The PSS parameter set with all default values.

Since:
1.5
Constructor Detail

PSSParameterSpec

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.

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

PSSParameterSpec

public PSSParameterSpec(int saltLen)
Creates a new PSSParameterSpec using the specified salt length and other default values as defined in PKCS#1.

Parameters:
saltLen - the length of salt in bits to be used in PKCS#1 PSS encoding.
Throws:
IllegalArgumentException - if saltLen is less than 0.
Method Detail

getDigestAlgorithm

public String getDigestAlgorithm()
Returns the message digest algorithm name.

Returns:
the message digest algorithm name.
Since:
1.5

getMGFAlgorithm

public String getMGFAlgorithm()
Returns the mask generation function algorithm name.

Returns:
the mask generation function algorithm name.
Since:
1.5

getMGFParameters

public AlgorithmParameterSpec getMGFParameters()
Returns the parameters for the mask generation function.

Returns:
the parameters for the mask generation function.
Since:
1.5

getSaltLength

public int getSaltLength()
Returns the salt length in bits.

Returns:
the salt length.

getTrailerField

public int getTrailerField()
Returns the value for the trailer field, i.e. bc in PKCS#1 v2.1.

Returns:
the value for the trailer field, i.e. bc in PKCS#1 v2.1.
Since:
1.5

Java™ Platform
Standard Ed. 6

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.