OAEPParameterSpec (Java SE 11 & JDK 11 ) (original) (raw)
- javax.crypto.spec.OAEPParameterSpec
All Implemented Interfaces:
[AlgorithmParameterSpec](../../../java/security/spec/AlgorithmParameterSpec.html "interface in java.security.spec")
public class OAEPParameterSpec
extends Object
implements AlgorithmParameterSpec
This class specifies the set of parameters used with OAEP Padding, as defined in thePKCS#1 v2.2 standard. Its ASN.1 definition in PKCS#1 standard is described below:
RSAES-OAEP-params ::= SEQUENCE {
hashAlgorithm [0] HashAlgorithm DEFAULT sha1,
maskGenAlgorithm [1] MaskGenAlgorithm DEFAULT mgf1SHA1,
pSourceAlgorithm [2] PSourceAlgorithm DEFAULT pSpecifiedEmpty
}
where
HashAlgorithm ::= AlgorithmIdentifier {
{OAEP-PSSDigestAlgorithms}
}
MaskGenAlgorithm ::= AlgorithmIdentifier { {PKCS1MGFAlgorithms} }
PSourceAlgorithm ::= AlgorithmIdentifier {
{PKCS1PSourceAlgorithms}
}
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 --
}
PKCS1PSourceAlgorithms ALGORITHM-IDENTIFIER ::= {
{ OID id-pSpecified PARAMETERS EncodingParameters },
... -- Allows for future expansion --
}
EncodingParameters ::= OCTET STRING(SIZE(0..MAX))
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 Summary
Fields
Modifier and Type Field Description static OAEPParameterSpec DEFAULT The OAEP parameter set with all default values. Constructor Summary
Constructors
Constructor Description 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. Method Summary
All Methods Instance Methods Concrete Methods
Modifier and Type Method Description 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. PSource getPSource() Returns the source of encoding input P. * ### Methods declared in class java.lang.[Object](../../../java/lang/Object.html "class in java.lang") `[clone](../../../java/lang/Object.html#clone%28%29), [equals](../../../java/lang/Object.html#equals%28java.lang.Object%29), [finalize](../../../java/lang/Object.html#finalize%28%29), [getClass](../../../java/lang/Object.html#getClass%28%29), [hashCode](../../../java/lang/Object.html#hashCode%28%29), [notify](../../../java/lang/Object.html#notify%28%29), [notifyAll](../../../java/lang/Object.html#notifyAll%28%29), [toString](../../../java/lang/Object.html#toString%28%29), [wait](../../../java/lang/Object.html#wait%28%29), [wait](../../../java/lang/Object.html#wait%28long%29), [wait](../../../java/lang/Object.html#wait%28long,int%29)`
Field Detail
* #### DEFAULT public static final [OAEPParameterSpec](OAEPParameterSpec.html "class in javax.crypto.spec") DEFAULT The OAEP parameter set with all default values.
Constructor Detail
* #### OAEPParameterSpec public OAEPParameterSpec([String](../../../java/lang/String.html "class in java.lang") mdName, [String](../../../java/lang/String.html "class in java.lang") mgfName, [AlgorithmParameterSpec](../../../java/security/spec/AlgorithmParameterSpec.html "interface in java.security.spec") mgfSpec, [PSource](PSource.html "class in javax.crypto.spec") 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](../../../java/lang/NullPointerException.html "class in java.lang")` \- if `mdName`,`mgfName`, or `pSrc` is null.
Method Detail
* #### getDigestAlgorithm public [String](../../../java/lang/String.html "class in java.lang") getDigestAlgorithm() Returns the message digest algorithm name. Returns: the message digest algorithm name. * #### getMGFAlgorithm public [String](../../../java/lang/String.html "class in java.lang") getMGFAlgorithm() Returns the mask generation function algorithm name. Returns: the mask generation function algorithm name. * #### getMGFParameters public [AlgorithmParameterSpec](../../../java/security/spec/AlgorithmParameterSpec.html "interface in java.security.spec") getMGFParameters() Returns the parameters for the mask generation function. Returns: the parameters for the mask generation function. * #### getPSource public [PSource](PSource.html "class in javax.crypto.spec") getPSource() Returns the source of encoding input P. Returns: the source of encoding input P.
Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2025, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.