| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object
  |
  +--java.security.AlgorithmParametersSpi
        |
        +--iaik.pkcs.pkcs1.PKCS1AlgorithmParameters
              |
              +--iaik.pkcs.pkcs1.RSAPssParameters
Algorithm parameters for the PKCS#1 RSASSA-PSS signature scheme.
PKCS#1v2.1 defines the following parameters for the PSS signature scheme:
 RSASSA-PSS-params :: = SEQUENCE {
      hashAlgorithm            [0] HashAlgorithm     DEFAULT sha1,
      maskGenerationAlgorithm  [1] MaskGenAlgorithm  DEFAULT mgf1SHA1,
      saltLength               [2] INTEGER           DEFAULT 20,
      trailerField             [3] TrailerField      DEFAULT trailerFieldBC
 }
 HashAlgorithm ::= AlgorithmIdentifer { {OAEP-PSSDigestAlgorithms} }
 MaskGenAlgorithm ::= AlgorithmIdentifier { {PKCS1MGFAlgorithms} }
 TrailerField ::= INTEGER { trailerFieldBC(1) }
 
 By default PSS uses SHA-1 as hash function, MGF1 (with SHA-1 as hash function
 parameter) as mask generation algorithm, 20 as salt length, and 1 as trailer field
 indicating a trailer value of 0xBC.
 
 RSAPssParamters can be generated provider independently by calling one of the 
 AlgorithmParameters.getInstance methods. Subsequently the new 
 AlgorithmParamters object must be initialized with a proper RSA-PSS parameter 
 specification or a DER encoded byte array, e.g.:
 
 RSAPssParameterSpec pssParamSpec = ...;
 AlgorithmParameters params = AlgorithmParameters.getInstance("RSASSA-PSS", "IAIK");
 params.init(pssParamSpec);
 
 repectively:
 
 byte[] encodedPssParams = ...;
 AlgorithmParameters params = AlgorithmParameters.getInstance("RSASSA-PSS", "IAIK");
 params.init(encodedPssParams);
 
 
 For obtaining PSS parameters in transparent representation from an opaque
 RSAPssParamters object, the getParameterSpec method can be used;
 for obtaining the parameters as DER encoded ASN.1 object, use 
 getEncoded:
 
RSAPssParameterSpec pssParamSpec = (RSAPssParameterSpec)params.getParameterSpec(RSAPssParameterSpec.class);repectively
byte[] encodedPssParams = params.getEncoded();
RSAPssParameterSpec, 
AlgorithmParameters| Constructor Summary | |
| RSAPssParameters()The default constructor. | |
| Method Summary | |
|  void | decode(ASN1Object asn1Params)Initializes this RSAPssParameters object from the given ASN1Object. | 
| protected  byte[] | engineGetEncoded()Returns the parameters as DER byte array. | 
| protected  byte[] | engineGetEncoded(String format)Returns the parameters as a DER byte array. | 
| protected  AlgorithmParameterSpec | engineGetParameterSpec(Class paramSpec)Returns the RSA-PSS parameters as transparent parameter specification of the given class type. | 
| protected  void | engineInit(AlgorithmParameterSpec paramSpec)Initializes this RSAPssParameters from the given RSAPssParameterSpec. | 
| protected  void | engineInit(byte[] params)Initializes this RSAPssParameters object from the given DER encoded byte array. | 
| protected  void | engineInit(byte[] params,
           String format)Inits the parameters from an DER encoded byte array. | 
| protected  String | engineToString()Returns a String representation of this object. | 
|  ASN1Object | toASN1Object()Gets an ASN.1 representation of this RSA PSS parameters. | 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
public RSAPssParameters()
RSAPssParameters object.
 Applications shall use one of the AlgorithmParameters.getInstance
 factory methods for obtaining RSAPssParameters.| Method Detail | 
protected byte[] engineGetEncoded()
                           throws IOException
engineGetEncoded in class AlgorithmParametersSpiIOException - if an encoding error occurs
protected byte[] engineGetEncoded(String format)
                           throws IOException
 Format is ignored. Only DER encoding is supported. This method
 only calls engineGetEncoded(), regardless of what
 is specified in the format string.
engineGetEncoded in class AlgorithmParametersSpiformat - the encoding format; ignoredIOException - if an encoding error occurspublic ASN1Object toASN1Object()
protected AlgorithmParameterSpec engineGetParameterSpec(Class paramSpec)
                                                 throws InvalidParameterSpecException
engineGetParameterSpec in class AlgorithmParametersSpiparamSpec - the desired parameter specification class (RSAPssParameterSpec)InvalidParameterSpecException - if the paramters cannot be converted to 
            the desired parameter specification
protected void engineInit(AlgorithmParameterSpec paramSpec)
                   throws InvalidParameterSpecException
engineInit in class AlgorithmParametersSpiparamSpec - the parameter specification, which has to be a RSAPssParameterSpecInvalidParameterSpecException - if the given parameter specification 
                                          is not a or is an invalid RSAPssParameterSpec
protected void engineInit(byte[] params)
                   throws IOException
engineInit in class AlgorithmParametersSpiparams - the DER encoded byte arrayIOException - if an error occurs when decoding the given byte array
public void decode(ASN1Object asn1Params)
            throws CodingException
params - the PSS parameters in ASN.1 representationCodingException - if an error occurs when parsing the parameters
protected void engineInit(byte[] params,
                          String format)
                   throws IOException
engineInit(params) for initializing this RSAPssParameters 
 object from the given DER encoded byte array, regardless of what is specified 
 in the format string.
 engineInit in class AlgorithmParametersSpiparams - the DER encoded byte arrayformat - the encoding format; ignoredIOException - if an error occurs when decoding the given byte arrayprotected String engineToString()
engineToString in class AlgorithmParametersSpi| 
 | This Javadoc may contain text parts from Internet Standard specifications (RFC 2459, 3280, 3039, 2560, 1521, 821, 822, 2253, 1319, 1321, ,2630, 2631, 2268, 3058, 2984, 2104, 2144, 2040, 2311, 2279, see copyright note) and RSA Data Security Public-Key Cryptography Standards (PKCS#1,3,5,7,8,9,10,12, see copyright note). | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
 IAIK-JCE 3.1 with IAIK-JCE CC Core 3.1, (c) 1997-2004 IAIK
  IAIK-JCE 3.1 with IAIK-JCE CC Core 3.1, (c) 1997-2004 IAIK