B4X
B4X
PKCS7 Encrypt MIME
See more MIME Examples
Encrypt MIME using a digital certificate to create PKCS7 encrypted S/MIME.Chilkat B4X Downloads
Dim success As Boolean = False
' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim mime As ChilkatMime
mime.Initialize
' Build a simple MIME message to be encrypted:
success = mime.AddHeaderField("Content-Type", "text/plain")
success = mime.AddHeaderField("abc", "123")
mime.SetBody("This is a test")
' A digital certificate is required to create PKCS7 encrypted MIME.
' It can come from a variety of sources: .cer file, .pfx file, PEM files,
' an in-memory representation, or directly from a Windows
' registry-based certificate store.
' This example will load a certificate object from a .cer file.
' Note: Only the public-key is required to encrypt. (Decryption
' requires a private key.)
Dim cert As ChilkatCert
cert.Initialize("cert")
success = cert.LoadFromFile("myCert.cer")
If success = False Then
Log(cert.LastErrorText)
Return
End If
' Encrypt the MIME:
success = mime.Encrypt(cert)
If success = False Then
Log(mime.LastErrorText)
Return
End If
' Display the MIME:
Log(mime.GetMime)
' The resulting S/MIME looks something like this:
' abc: 123
' Content-Disposition: attachment; filename="smime.p7m";
' Content-Transfer-Encoding: base64
' Content-Type: application/x-pkcs7-mime;
' name="smime.p7m";
'
' MIICAQYJKoZIhvcNAQcDoIIB8jCCAe4CAQAxggGFMIIBgQIBADBpMFUxCzAJBgNVBAYTAlpBMSUw
' IwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMR8wHQYDVQQDExZUaGF3dGUgQ29k
' ZSBTaWduaW5nIENBAhB4ouTcAmLszrGi170k1deSMA0GCSqGSIb3DQEBAQUABIIBABz59iwVufLZ
' QIPs0whUYMtBjIQxg5IOCxpoKJeJmLVzu9Q5Q1poxG9uYOveybS9c4wbl5A0DFfKTW5O4HhHcOHW
' TgcH4iqdwhiFWm/q9d5rjceJWBFQsGOcgoXSU/U2Xp+N47/+Pqyc5XJbxKnOc4YhPzO320JZsNB6
' p1NGk5SNnWqgbUDmEnfH8ZPHSV7dNi2aiFALYTyLjyp0lqJCsdZ524OPTZFfusrl/9ibPAW7jKuI
' FgDCcBtRJvolVF8iIHxaTw4rhk0qb1KWzxvB5j9HSLdyIKIPhZbxeS10bx18YkSsBlKfdKRalQag
' 3oWSRdsK9/N75YHG8Pm+x9BOHUAwYAYJKoZIhvcNAQcBMBkGCCqGSIb3DQMCMA0CAToECAb+toBW
' txZigDhGZKSpUpuTiWvvSMemX/c79sSnMpuefVwGKFTDgXVLE2SoD5a9Yh5vcG7Mhl2IkilVwOMc
' fi23+g==