PSSParameterSpec

public class PSSParameterSpec
extends Object implements AlgorithmParameterSpec

java.lang.Object
   ↳ java.security.spec.PSSParameterSpec


This class specifies a parameter spec for RSASSA-PSS signature scheme, as defined in the PKCS#1 v2.2 standard.

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

 RSASSA-PSS-params ::= SEQUENCE {
   hashAlgorithm      [0] HashAlgorithm      DEFAULT sha1,
   maskGenAlgorithm   [1] MaskGenAlgorithm   DEFAULT mgf1SHA1,
   saltLength         [2] INTEGER            DEFAULT 20,
   trailerField       [3] TrailerField       DEFAULT trailerFieldBC(1)
 }
 
where
 HashAlgorithm ::= AlgorithmIdentifier {
   {OAEP-PSSDigestAlgorithms}
 }
 MaskGenAlgorithm ::= AlgorithmIdentifier { {PKCS1MGFAlgorithms} }
 TrailerField ::= INTEGER { trailerFieldBC(1) }

 OAEP-PSSDigestAlgorithms    ALGORITHM-IDENTIFIER ::= {
   { OID id-sha1       PARAMETERS NULL }|
   { OID id-sha224     PARAMETERS NULL }|
   { OID id-sha256     PARAMETERS NULL }|
   { OID id-sha384     PARAMETERS NULL }|
   { OID id-sha512     PARAMETERS NULL }|
   { OID id-sha512-224 PARAMETERS NULL }|
   { OID id-sha512-256 PARAMETERS NULL },
   ...  -- Allows for future expansion --
 }
 PKCS1MGFAlgorithms    ALGORITHM-IDENTIFIER ::= {
   { OID id-mgf1 PARAMETERS HashAlgorithm },
   ...  -- 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

Summary

Constants

int TRAILER_FIELD_BC

The TrailerFieldBC constant as defined in PKCS#1

Fields

public static final PSSParameterSpec DEFAULT

The PSS parameter set with all default values

Public constructors

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.

Public methods

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 bytes.

int getTrailerField()

Returns the value for the trailer field.

String toString()

Returns a string representation of the object.

Inherited methods

Constants

TRAILER_FIELD_BC

Added in API level 35
public static final int TRAILER_FIELD_BC

The TrailerFieldBC constant as defined in PKCS#1

Constant Value: 1 (0x00000001)

Fields

DEFAULT

Added in API level 1
public static final PSSParameterSpec DEFAULT

The PSS parameter set with all default values

Public constructors

PSSParameterSpec

Added in API level 1
public PSSParameterSpec (int saltLen)

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

Parameters
saltLen int: the length of salt in bytes to be used in PKCS#1 PSS encoding

Throws
IllegalArgumentException if saltLen is less than 0

PSSParameterSpec

Added in API level 1
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 String: the algorithm name of the hash function

mgfName String: the algorithm name of the mask generation function

mgfSpec AlgorithmParameterSpec: the parameters for the mask generation function. If null is specified, null will be returned by getMGFParameters().

saltLen int: the length of salt

trailerField int: the value of the trailer field

Throws
NullPointerException if mdName, or mgfName is null
IllegalArgumentException if saltLen or trailerField is less than 0

Public methods

getDigestAlgorithm

Added in API level 1
public String getDigestAlgorithm ()

Returns the message digest algorithm name.

Returns
String the message digest algorithm name

getMGFAlgorithm

Added in API level 1
public String getMGFAlgorithm ()

Returns the mask generation function algorithm name.

Returns
String the mask generation function algorithm name

getMGFParameters

Added in API level 1
public AlgorithmParameterSpec getMGFParameters ()

Returns the parameters for the mask generation function.

Returns
AlgorithmParameterSpec the parameters for the mask generation function

getSaltLength

Added in API level 1
public int getSaltLength ()

Returns the salt length in bytes.

Returns
int the salt length

getTrailerField

Added in API level 1
public int getTrailerField ()

Returns the value for the trailer field.

Returns
int the value for the trailer field

toString

Added in API level 1
public String toString ()

Returns a string representation of the object.

Returns
String a string representation of the object.