Python Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Python Examples

Quick Start
Unicode
Byte Array
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML-to-XML
HTTP
IMAP
MHT
MIME
POP3
RSA
S/MIME
Signatures
Socket / SSL
SFTP
SMTP
Spider
SSH Key
SSH
SSH Tunnel
Tar
HTTP Upload
XML
XMP
Zip

More Examples...
String
Email Object
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA

Unreleased...
Bzip2
LZW
Icon

 

 

 

 

 

 

 

Create S/MIME with Opaque Digital Signature

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

Download Chilkat Python Library

import sys
import chilkat

mime = chilkat.CkMime()

#  Any string argument automatically begins the 30-day trial.
success = mime.UnlockComponent("30-day trial")
if (success != True):
    print "MIME component unlock failed"
    sys.exit()

#  Find our digital certificate from the Current User certificate store.
ccs = chilkat.CkCreateCS()

certStore = ccs.OpenCurrentUserStore()

cert = certStore.FindCertBySubjectCN("Chilkat Software, Inc.")

if (cert == None ):
    print cert.lastErrorText()
    sys.exit()

#  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")

print "Original MIME message:"
print 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):
    print mime.lastErrorText()
    sys.exit()

print "----------------------------------"
print "Signed Message:"
print mime.getMime()

print "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.