Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
Create S/MIME with Detached SignatureVisual FoxPro example to create a simple S/MIME message with a detached digital signature. LOCAL loMime LOCAL lnSuccess LOCAL loCcs LOCAL loCertStore LOCAL loCert LOCAL lnTransferHeaderFields loMime = CreateObject('Chilkat.Mime') * Any string argument automatically begins the 30-day trial. lnSuccess = loMime.UnlockComponent("30-day trial") IF (lnSuccess <> 1) THEN =MESSAGEBOX("MIME component unlock failed") QUIT ENDIF * Find our digital certificate from the Current User certificate store. loCcs = CreateObject('Chilkat.CreateCS') loCertStore = loCcs.OpenCurrentUserStore() loCert = loCertStore.FindCertBySubjectCN("Chilkat Software, Inc.") RELEASE loCertStore IF (loCert = NULL ) THEN =MESSAGEBOX(loCert.LastErrorText) QUIT ENDIF * Our MIME object is currently empty. Add some header fields * and a body: loMime.AddHeaderField("subject","this is a test") loMime.AddHeaderField("test123","this is a test 123") loMime.ContentType = "text/plain" loMime.Charset = "iso-8859-1" loMime.SetBodyFromPlainText("This is the body") ? "Original MIME message:" ? loMime.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 * ---------------------------------- * Add a detached signature. Transfer the header fields * from our existing MIME to what will become the new outer * envelope. lnTransferHeaderFields = 1 lnSuccess = loMime.AddDetachedSignature2(loCert,lnTransferHeaderFields) IF (lnSuccess <> 1) THEN =MESSAGEBOX(loMime.LastErrorText) QUIT ENDIF ? "----------------------------------" ? "S/MIME with detached signature:" ? loMime.GetMime() RELEASE loCert =MESSAGEBOX("Success!") * The signed MIME looks like this: * -------------------------------- * content-type: multipart/signed; * boundary="----=_NextPart_e7c_2b68_282042d9.6ba23d56"; * protocol="application/x-pkcs7-signature"; * micalg=SHA1 * subject: this is a test * test123: this is a test 123 * * This is a multi-part message in MIME format. * * ------=_NextPart_e7c_2b68_282042d9.6ba23d56 * content-type: text/plain; * charset="iso-8859-1" * * This is the body * ------=_NextPart_e7c_2b68_282042d9.6ba23d56 * content-transfer-encoding: base64 * content-type: application/x-pkcs7-signature; * name="smime.p7s" * content-disposition: attachment; * filename="smime.p7s" * * MIIGAAYJKoZIhvcNAQcCoIIF8TCCBe0CAQExCzAJBgUrDgMCGgUAMAsGCSqGSIb3DQEHAaCC * A9kwggPVMIIDPqADAgECAhB4ouTcAmLszrGi170k1deSMA0GCSqGSIb3DQEBBQUAMFUxCzAJ * BgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMR8wHQYD * VQQDExZUaGF3dGUgQ29kZSBTaWduaW5nIENBMB4XDTA3MDExNTAwMDAwMFoXDTA4MDExNTIz * NTk1OVowgZ0xCzAJBgNVBAYTAlVTMREwDwYDVQQIEwhJbGxpbm9pczEQMA4GA1UEBxMHV2hl * YXRvbjEfMB0GA1UEChMWQ2hpbGthdCBTb2Z0d2FyZSwgSW5jLjEnMCUGA1UECxMeU2VjdXJl * IEFwcGxpY2F0aW9uIERldmVsb3BtZW50MR8wHQYDVQQDExZDaGlsa2F0IFNvZnR3YXJlLCBJ * bmMuMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwR2t6b/Kn4VzNCOlj1YGkHxD * YPVnfZNIeO7hmutreK6kr94xm9RlQn+vkN1uRMhvSbOdds+B25o+AyAeuBmLsuxoNRCC9AUb * a37pY8eL04AaTEAm350tfnHGT44joSdFPoW5D91TDare6q5UaaccdEtXU4/LGqh+nHB9Idft * 0S/rIpP2PK9TAwQ5V8dlMuBQQA+BUCg5MY9oqZgtnkX7O6OJSk8MT0lUhVg7EAge9iUx7Eu4 * oWK88fkOo81pqHogTpGfy4nibWg72XkPk135leMw/Jme37q7OR/zm6HceFlyyO0WL1fYx09P * pYbj1lYNvVo8n38ohT8T/7h3N4GUlQIDAQABo4HYMIHVMAwGA1UdEwEB/wQCMAAwPgYDVR0f * BDcwNTAzoDGgL4YtaHR0cDovL2NybC50aGF3dGUuY29tL1RoYXd0ZUNvZGVTaWduaW5nQ0Eu * Y3JsMB8GA1UdJQQYMBYGCCsGAQUFBwMDBgorBgEEAYI3AgEWMB0GA1UdBAQWMBQwDjAMBgor * BgEEAYI3AgEWAwIHgDAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3Nw * LnRoYXd0ZS5jb20wEQYJYIZIAYb4QgEBBAQDAgQQMA0GCSqGSIb3DQEBBQUAA4GBAAUMcxUb * eo5HTDKMaxMFFy3iA9i/ke4VLFw97yEG3raLTHZUlRwVxwLGLmW81dY/64nEDEgKi3Ifuohf * A0a3N3Ld7zwL1f/hdG2pQigLcvMymP9jj6DEQxOs03iADFguMpqkb79hbbURzsKX7pvWuNjQ * VGiowTuo1JXuSbsqaW7vMYIB7zCCAesCAQEwaTBVMQswCQYDVQQGEwJaQTElMCMGA1UEChMc * VGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEfMB0GA1UEAxMWVGhhd3RlIENvZGUgU2ln * bmluZyBDQQIQeKLk3AJi7M6xote9JNXXkjAJBgUrDgMCGgUAoF0wGAYJKoZIhvcNAQkDMQsG * CSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMDcwNDA0MTkzMDUyWjAjBgkqhkiG9w0BCQQx * FgQUevptGkutc0lb6gI3NPHovx4Di34wDQYJKoZIhvcNAQEBBQAEggEAk4jqKMsn7D+MjGtY * M9bnLdekBSxMVWPpKxk6hWg0NVOoiBOd/OOyH8FO/r7trmzr2Z9eJf1zpdjzpSPCwnGJzIy9 * RunBBTJ+BxCbDXfjwJJTYVy1Uhsedv+o7Gfj9LlAVysNLjda5VcU7x/OOBVst034X+map3ds * 85yBrfcJ/LyQs/lyZYmSPgOpFIBSy3oULPzYt45EUVsuk5qSZ1MA4HeIDW37b8OfQOW8pLEL * cBRducU19lpDOp5hBRZDR3zu+/9ddWKxKvcH04WitYRBi5TtqhQxpep+vRhJX8EPY6cgenJ+ * lbDURg552YftF4EpDGALADR41j6sUMzb0QOz4A== * * ------=_NextPart_e7c_2b68_282042d9.6ba23d56-- * * |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2007 Chilkat Software, Inc. All Rights Reserved.
Mail Component · .NET Email Component · ASP Mail Component · XML Parser