Class PSSParameterSpec

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

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

Its ASN.1 definition in the 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 --
}
Since:
1.4
External Specifications
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final PSSParameterSpec
    Deprecated.
    This field uses the default values defined in the PKCS #1 standard.
    static final int
    The TrailerFieldBC constant as defined in the PKCS #1 standard.
  • Constructor Summary

    Constructors
    Constructor
    Description
    PSSParameterSpec(int saltLen)
    Deprecated.
    This constructor uses the default values defined in the PKCS #1 standard except for the salt length.
    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

    Modifier and Type
    Method
    Description
    Returns the message digest algorithm name.
    Returns the mask generation function algorithm name.
    Returns the parameters for the mask generation function.
    int
    Returns the salt length in bytes.
    int
    Returns the value for the trailer field.

    Methods declared in class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
    Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.
    boolean
    Compares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    May cause performance issues, deadlocks and hangs.
    final Class<? extends Object>
    Answers the unique instance of java.lang.Class which represents the class of the receiver.
    int
    Answers an integer hash code for the receiver.
    final void
    Causes one thread which is waiting on the receiver to be made ready to run.
    final void
    Causes all threads which are waiting on the receiver to be made ready to run.
    Answers a string containing a concise, human-readable description of the receiver.
    final void
    Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated by notify or notifyAll).
    final void
    wait(long time)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
    final void
    wait(long time, int frac)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
  • Field Details

  • Constructor Details

    • 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. See the PSSParameterSpec section of the Java Security Standard Algorithm Names Specification for information about standard names for the hash function.
      mgfName - the algorithm name of the mask generation function. See the PSSParameterSpec section of the Java Security Standard Algorithm Names Specification for information about standard names for 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 in bytes
      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
      External Specifications
    • PSSParameterSpec

      @Deprecated(since="19") public PSSParameterSpec(int saltLen)
      Deprecated.
      This constructor uses the default values defined in the PKCS #1 standard except for the salt length. Some of these defaults are no longer recommended due to advances in cryptanalysis -- see the PKCS#1 v2.2 standard for more details. Thus, it is recommended to explicitly specify all desired parameter values with the PSSParameterSpec(String, String, AlgorithmParameterSpec, int, int) constructor.
      Creates a new PSSParameterSpec using the specified salt length and other default values as defined in the PKCS #1 standard.
      Parameters:
      saltLen - the length of salt in bytes
      Throws:
      IllegalArgumentException - if saltLen is less than 0
      External Specifications
  • Method Details

    • 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 bytes.
      Returns:
      the salt length
    • getTrailerField

      public int getTrailerField()
      Returns the value for the trailer field.
      Returns:
      the value for the trailer field
      Since:
      1.5