Java™ Platform
Standard Ed. 8
compact1, compact2, compact3
java.security.spec

Class PSSParameterSpec

  • All Implemented Interfaces:
    AlgorithmParameterSpec


    public class PSSParameterSpec
    extends Object
    implements AlgorithmParameterSpec
    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

    Since:
    1.4
    See Also:
    MGF1ParameterSpec, AlgorithmParameterSpec, Signature
    • Field Detail

      • TRAILER_FIELD_BC

        public static final int TRAILER_FIELD_BC
        The TrailerFieldBC constant as defined in PKCS#1
        API Note:
        This field is defined in Java SE 8 Maintenance Release 3.
        Since:
        8
        See Also:
        Constant Field Values
      • 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 bytes 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 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
      • toString

        public String toString()
        Description copied from class: Object
        Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

        The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

         getClass().getName() + '@' + Integer.toHexString(hashCode())
         
        Overrides:
        toString in class Object
        Returns:
        a string representation of the object.
Java™ Platform
Standard Ed. 8

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部