java.security.spec

Class 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-sha224 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 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

Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-java/security/spec/pssparameterspec.html

The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.

References

  1. View the html document Language of the document:fr Manuel PHP : https://docs.oracle.com

These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.

Contents Haut