Module java.base

Class OAEPParameterSpec

  • All Implemented Interfaces:
    AlgorithmParameterSpec

    public class OAEPParameterSpec
    extends Object
    implements AlgorithmParameterSpec
    This class specifies the set of parameters used with OAEP Padding, as defined in the PKCS #1 standard. Its ASN.1 definition in PKCS#1 standard is described below:
     RSAES-OAEP-params ::= SEQUENCE {
       hashAlgorithm      [0] OAEP-PSSDigestAlgorithms     DEFAULT sha1,
       maskGenAlgorithm   [1] PKCS1MGFAlgorithms  DEFAULT mgf1SHA1,
       pSourceAlgorithm   [2] PKCS1PSourceAlgorithms  DEFAULT pSpecifiedEmpty
     }
     
    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 --
     }
     PKCS1PSourceAlgorithms    ALGORITHM-IDENTIFIER ::= {
       { OID id-pSpecified PARAMETERS OCTET STRING },
       ...  -- Allows for future expansion --
     }
     

    Note: the OAEPParameterSpec.DEFAULT uses the following: message digest -- "SHA-1" mask generation function (mgf) -- "MGF1" parameters for mgf -- MGF1ParameterSpec.SHA1 source of encoding input -- PSource.PSpecified.DEFAULT

    Since:
    1.5
    See Also:
    MGF1ParameterSpec, PSource
    • Field Detail

      • DEFAULT

        public static final OAEPParameterSpec DEFAULT
        The OAEP parameter set with all default values.
    • Constructor Detail

      • OAEPParameterSpec

        public OAEPParameterSpec​(String mdName,
                                 String mgfName,
                                 AlgorithmParameterSpec mgfSpec,
                                 PSource pSrc)
        Constructs a parameter set for OAEP padding as defined in the PKCS #1 standard using the specified message digest algorithm mdName, mask generation function algorithm mgfName, parameters for the mask generation function mgfSpec, and source of the encoding input P pSrc.
        Parameters:
        mdName - the algorithm name for the message digest.
        mgfName - the algorithm name for the mask generation function.
        mgfSpec - the parameters for the mask generation function. If null is specified, null will be returned by getMGFParameters().
        pSrc - the source of the encoding input P.
        Throws:
        NullPointerException - if mdName, mgfName, or pSrc is null.
    • Method Detail

      • getDigestAlgorithm

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

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

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

        public PSource getPSource()
        Returns the source of encoding input P.
        Returns:
        the source of encoding input P.