Java Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Java Examples

Quick Start
Java Unicode
Java Certs
Java Email
Java Encryption
Java FTP
HTML-to-XML
Java HTTP
Java IMAP
Java MHT
Java MIME
Java RSA
Java S/MIME
Java Signatures
Java Socket
Java Spider
Java Tar
Java Upload
Java XML
Java XMP
Java Zip

More Examples...
Email Object
POP3
SMTP
RSS
Atom
String
Byte Array
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA

Unreleased...
Bzip2
LZW
Bz2
Icon

 

 

 

 

 

 

 

Create S/MIME with Opaque Digital Signature

Java example to create a simple S/MIME message with an attached (opaque) digital signature.

Download Chilkat Java Library

import com.chilkatsoft.*;

public class ChilkatExample {

  static {
    try {
        System.loadLibrary("chilkat");
    } catch (UnsatisfiedLinkError e) {
      System.err.println("Native code library failed to load.\n" + e);
      System.exit(1);
    }
  }

  public static void main(String argv[])
  {
    CkMime mime = new CkMime();

    //  Any string argument automatically begins the 30-day trial.
    boolean success;
    success = mime.UnlockComponent("30-day trial");
    if (success != true) {
        System.out.println("MIME component unlock failed");
        return;
    }

    //  Find our digital certificate from the Current User certificate store.
    CkCreateCS ccs = new CkCreateCS();
    CkCertStore certStore;
    certStore = ccs.OpenCurrentUserStore();
    CkCert cert;
    cert = certStore.FindCertBySubjectCN("Chilkat Software, Inc.");

    if (cert == null ) {
        System.out.println(cert.lastErrorText());
        return;
    }

    //  Our MIME object is currently empty.  Add some header fields
    //  and a body:
    mime.AddHeaderField("subject","this is a test");
    mime.AddHeaderField("test123","this is a test 123");
    mime.put_ContentType("text/plain");
    mime.put_Charset("iso-8859-1");
    mime.SetBodyFromPlainText("This is the body");

    System.out.println("Original MIME message:");
    System.out.println(mime.getMime());

    //  The original MIME looks like this:
    //  ----------------------------------
    //  subject: this is a test
    //  test123: this is a test 123
    //  content-type: text/plain;
    //  	 charset="iso-8859-1"
    // 
    //  This is the body
    //  ----------------------------------

    //  Convert the MIME to a signed message.  The original MIME
    //  is embedded in
    success = mime.ConvertToSigned(cert);
    if (success != true) {
        System.out.println(mime.lastErrorText());
        return;
    }

    System.out.println("----------------------------------");
    System.out.println("Signed Message:");
    System.out.println(mime.getMime());

    System.out.println("Success!");

    //  The resulting S/MIME looks like this:
    //  --------------------------------
    //  subject: this is a test
    //  test123: this is a test 123
    //  content-disposition: attachment;
    //  	 filename="smime.p7m"
    //  content-transfer-encoding: base64
    //  content-type: application/x-pkcs7-mime;
    //  	name="smime.p7m";smime-type=signed-data
    // 
    //  MIIGgAYJKoZIhvcNAQcCoIIGcTCCBm0CAQExCzAJBgUrDgMCGgUAMIGKBgkqhkiG9w0BBwGg
    //  fQR7c3ViamVjdDogdGhpcyBpcyBhIHRlc3QNCnRlc3QxMjM6IHRoaXMgaXMgYSB0ZXN0IDEy
    //  Mw0KY29udGVudC10eXBlOiB0ZXh0L3BsYWluOw0KCSBjaGFyc2V0PSJpc28tODg1OS0xIg0K
    //  DQpUaGlzIGlzIHRoZSBib2R5oIID2TCCA9UwggM+oAMCAQICEHii5NwCYuzOsaLXvSTV15Iw
    //  DQYJKoZIhvcNAQEFBQAwVTELMAkGA1UEBhMCWkExJTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0
    //  aW5nIChQdHkpIEx0ZC4xHzAdBgNVBAMTFlRoYXd0ZSBDb2RlIFNpZ25pbmcgQ0EwHhcNMDcw
    //  MTE1MDAwMDAwWhcNMDgwMTE1MjM1OTU5WjCBnTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCEls
    //  bGlub2lzMRAwDgYDVQQHEwdXaGVhdG9uMR8wHQYDVQQKExZDaGlsa2F0IFNvZnR3YXJlLCBJ
    //  bmMuMScwJQYDVQQLEx5TZWN1cmUgQXBwbGljYXRpb24gRGV2ZWxvcG1lbnQxHzAdBgNVBAMT
    //  FkNoaWxrYXQgU29mdHdhcmUsIEluYy4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
    //  AQDBHa3pv8qfhXM0I6WPVgaQfENg9Wd9k0h47uGa62t4rqSv3jGb1GVCf6+Q3W5EyG9Js512
    //  z4Hbmj4DIB64GYuy7Gg1EIL0BRtrfuljx4vTgBpMQCbfnS1+ccZPjiOhJ0U+hbkP3VMNqt7q
    //  rlRppxx0S1dTj8saqH6ccH0h1+3RL+sik/Y8r1MDBDlXx2Uy4FBAD4FQKDkxj2ipmC2eRfs7
    //  o4lKTwxPSVSFWDsQCB72JTHsS7ihYrzx+Q6jzWmoeiBOkZ/LieJtaDvZeQ+TXfmV4zD8mZ7f
    //  urs5H/Obodx4WXLI7RYvV9jHT0+lhuPWVg29WjyffyiFPxP/uHc3gZSVAgMBAAGjgdgwgdUw
    //  DAYDVR0TAQH/BAIwADA+BgNVHR8ENzA1MDOgMaAvhi1odHRwOi8vY3JsLnRoYXd0ZS5jb20v
    //  VGhhd3RlQ29kZVNpZ25pbmdDQS5jcmwwHwYDVR0lBBgwFgYIKwYBBQUHAwMGCisGAQQBgjcC
    //  ARYwHQYDVR0EBBYwFDAOMAwGCisGAQQBgjcCARYDAgeAMDIGCCsGAQUFBwEBBCYwJDAiBggr
    //  BgEFBQcwAYYWaHR0cDovL29jc3AudGhhd3RlLmNvbTARBglghkgBhvhCAQEEBAMCBBAwDQYJ
    //  KoZIhvcNAQEFBQADgYEABQxzFRt6jkdMMoxrEwUXLeID2L+R7hUsXD3vIQbetotMdlSVHBXH
    //  AsYuZbzV1j/ricQMSAqLch+6iF8DRrc3ct3vPAvV/+F0balCKAty8zKY/2OPoMRDE6zTeIAM
    //  WC4ymqRvv2FttRHOwpfum9a42NBUaKjBO6jUle5Juyppbu8xggHvMIIB6wIBATBpMFUxCzAJ
    //  BgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMR8wHQYD
    //  VQQDExZUaGF3dGUgQ29kZSBTaWduaW5nIENBAhB4ouTcAmLszrGi170k1deSMAkGBSsOAwIa
    //  BQCgXTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0wNzA0MDQx
    //  OTU1NDVaMCMGCSqGSIb3DQEJBDEWBBSXCN4QT4iPlNbNV3X7AzYezFL9oDANBgkqhkiG9w0B
    //  AQEFAASCAQBqnhXsUVYMz2y92Qg0ciB1wVxP6DC8cgTPPIWfSFAcIR6Irk4BqzS5LarDZlfB
    //  k85poqggff/m5kuyJfUNehTC0VnhAasCX0VjU+Bsr1k0c7gejges1EiuNJJo7q4Usp3+c5k9
    //  ZSEIM95hp2rDKyzZdyvSAbFGI029RII0SNyU6g6rX3/FZhJqc+DbhLHax3RMERFqLvdmmREz
    //  zIcRbt5y3VR3+bjD0tnvP5ynlg3rT4ubKWS/OormEPc20FwTHb8nCep3ZyGrUKusD7AWV3qv
    //  0+IKpAWNsZ7CgDjcR+j9oz7Q8Y/17FgHflEypf3xR5TWBY/tCwx02GT7a9vpXbHT
    // 
    // 

  }
}

 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2008 Chilkat Software, Inc. All Rights Reserved.