java.security.spec

接口
异常
java.lang.Object
  继承者 java.security.spec.PSSParameterSpec
所有已实现的接口:
AlgorithmParameterSpec

public class PSSParameterSpec
     
extends Object
implements AlgorithmParameterSpec

此类指定 RSA-PSS 签名方案的参数规范,如 PKCS#1 v2.1 标准中所定义的。

它在 PKCS#1 标准中的 ASN.1 定义描述如下:

 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
 }
 
其中
 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 --
 }
 

注:PSSParameterSpec.DEFAULT 使用:消息摘要 --“SHA-1”掩码生成函数 (mgf) --mgf 的“MGF1”参数 -- MGF1ParameterSpec.SHA1 SaltLength -- 20 TrailerField -- 1

从以下版本开始:
1.4
另请参见:
MGF1ParameterSpec, AlgorithmParameterSpec, Signature

字段摘要
static PSSParameterSpec DEFAULT
          带所有默认值的 PSS 参数集合。
 
构造方法摘要
PSSParameterSpec(int saltLen)
          使用指定的 salt 长度和 PKCS#1 定义的其他默认值创建一个新的 PSSParameterSpec
PSSParameterSpec(String mdName, String mgfName, AlgorithmParameterSpec mgfSpec, int saltLen, int trailerField)
          根据 PKCS #1 中的定义,使用指定的消息摘要、掩码生成函数、掩码生成函数的参数、salt 长度和尾部字段值,创建一个新的 PSSParameterSpec
 
方法摘要
 String getDigestAlgorithm()
          返回消息摘要算法名称。
 String getMGFAlgorithm()
          返回掩码生成函数算法名称。
 AlgorithmParameterSpec getMGFParameters()
          返回掩码生成函数的参数。
 int getSaltLength()
          返回 salt 长度(以比特为单位)。
 int getTrailerField()
          返回尾部字段的值,即:PKCS#1 v2.1 中的 bc。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

DEFAULT

public static final PSSParameterSpec DEFAULT
带所有默认值的 PSS 参数集合。

从以下版本开始:
1.5
构造方法详细信息

PSSParameterSpec

public PSSParameterSpec(String mdName,
                        String mgfName,
                        AlgorithmParameterSpec mgfSpec,
                        int saltLen,
                        int trailerField)
根据 PKCS #1 中的定义,使用指定的消息摘要、掩码生成函数、掩码生成函数的参数、salt 长度和尾部字段值,创建一个新的 PSSParameterSpec

参数:
mdName - 哈希函数的算法名称。
mgfName - 掩码生成函数的算法名称。
mgfSpec - 掩码生成函数的参数。如果指定 null,则 getMGFParameters() 将返回 null。
saltLen - salt 的长度。
trailerField - 尾部字段的值。
抛出:
NullPointerException - 如果 mdNamemgfName 为 null。
IllegalArgumentException - 如果 saltLentrailerField 小于 0。
从以下版本开始:
1.5

PSSParameterSpec

public PSSParameterSpec(int saltLen)
使用指定的 salt 长度和 PKCS#1 定义的其他默认值创建一个新的 PSSParameterSpec

参数:
saltLen - 用于 PKCS#1 PSS 编码的 salt 长度(以比特为单位)。
抛出:
IllegalArgumentException - 如果 saltLen 小于 0。
方法详细信息

getDigestAlgorithm

public String getDigestAlgorithm()
返回消息摘要算法名称。

返回:
消息摘要算法名称。
从以下版本开始:
1.5

getMGFAlgorithm

public String getMGFAlgorithm()
返回掩码生成函数算法名称。

返回:
掩码生成函数算法名称。
从以下版本开始:
1.5

getMGFParameters

public AlgorithmParameterSpec getMGFParameters()
返回掩码生成函数的参数。

返回:
掩码生成函数的参数。
从以下版本开始:
1.5

getSaltLength

public int getSaltLength()
返回 salt 长度(以比特为单位)。

返回:
salt 长度。

getTrailerField

public int getTrailerField()
返回尾部字段的值,即:PKCS#1 v2.1 中的 bc。

返回:
尾部字段的值,即:PKCS#1 v2.1 中的 bc。
从以下版本开始:
1.5