IAIK CMS/SMIME Toolkit Demo API Documentation
Version 6.1

demo.cms.digestedData
Class DigestedDataDemo

java.lang.Object
  extended by demo.cms.digestedData.DigestedDataDemo

public class DigestedDataDemo
extends java.lang.Object

Demonstrates the usage of class DigestedDataStream and DigestedData for digesting data using the CMS type DigestedData.


Constructor Summary
DigestedDataDemo()
          Default constructor.
 
Method Summary
 byte[] createDigestedData(byte[] message, int mode)
          Creates a CMS DigestedData object.
 byte[] createDigestedDataStream(byte[] message, int mode)
          Creates a CMS DigestedData object.
 byte[] getDigestedData(byte[] encoding, byte[] message)
          Parses a CMS DigestedData object and verifies the hash value.
 byte[] getDigestedDataStream(byte[] digestedData, byte[] message)
          Parses a CMS DigestedData object and verifies the hash.
static void main(java.lang.String[] argv)
          Main method.
 void start()
          Starts the tests.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DigestedDataDemo

public DigestedDataDemo()
                 throws java.io.IOException
Default constructor.

Throws:
java.io.IOException
Method Detail

createDigestedDataStream

public byte[] createDigestedDataStream(byte[] message,
                                       int mode)
                                throws iaik.cms.CMSException,
                                       java.io.IOException
Creates a CMS DigestedData object.

Parameters:
message - the message to be digested, as byte representation
mode - IMPLICIT (include message) or EXPLICIT (do not include message)
Returns:
the DER encoding of the DigestedData object just created
Throws:
iaik.cms.CMSException - if the DigestedData object cannot be created
java.io.IOException - if an I/O error occurs

getDigestedDataStream

public byte[] getDigestedDataStream(byte[] digestedData,
                                    byte[] message)
                             throws iaik.cms.CMSException,
                                    java.io.IOException
Parses a CMS DigestedData object and verifies the hash.

Parameters:
digestedData - DigestedData object as DER encoded byte array
message - the the message which was transmitted out-of-band
Returns:
the inherent message as byte array
Throws:
iaik.cms.CMSException - if some parsing error occurs or the hash verification fails
java.io.IOException - if an I/O error occurs

createDigestedData

public byte[] createDigestedData(byte[] message,
                                 int mode)
                          throws iaik.cms.CMSException,
                                 java.io.IOException
Creates a CMS DigestedData object.

Parameters:
message - the message to be digested, as byte representation
mode - IMPLICIT (include message) or EXPLICIT (do not include message)
Returns:
the DER encoded DigestedData
Throws:
iaik.cms.CMSException - if the DigestedData object cannot be created
java.io.IOException - if an I/O error occurs

getDigestedData

public byte[] getDigestedData(byte[] encoding,
                              byte[] message)
                       throws iaik.cms.CMSException,
                              java.io.IOException
Parses a CMS DigestedData object and verifies the hash value.

Parameters:
encoding - the DER encoded DigestedData object
message - the the message which was transmitted out-of-band (explicit digested)
Returns:
the message
Throws:
iaik.cms.CMSException - if some parsing error occurs or the hash verification fails
java.io.IOException - if an I/O error occurs

start

public void start()
Starts the tests.


main

public static void main(java.lang.String[] argv)
                 throws java.lang.Exception
Main method.

Throws:
java.lang.Exception

IAIK CMS/SMIME Toolkit Demo API Documentation
Version 6.1

v6.1
(c) 2002 IAIK, (c) 2003 - 2025 SIC