![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
Decrypt P7M using PFX to get MIMEDemonstrates how to decrypt a .p7m (PKCS7) binary file using a certificate and private key from a PFX file. The result of the decryption (in this case) is MIME text that may be loaded into a Chilkat MIME object. Note: Any type of file or data may be encrypted to produce a .p7m (PKCS7) encrypted file. This example was prompted by a customer needing to decrypt a MIME message. The final step of loading the decrypted text into a MIME object would be skipped if decrypting something other than MIME..
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <% set crypt = Server.CreateObject("Chilkat_9_5_0.Crypt2") ' Any string argument automatically begins the 30-day trial. success = crypt.UnlockComponent("30-day trial") If (success <> 1) Then Response.Write "<pre>" & Server.HTMLEncode(crypt.LastErrorText) & "</pre>" End If ' Read the P7M file into memory. p7mData = crypt.ReadFile("encrypted.p7m") ' Setup the crypt object: ' Indicate that public-key decryption is to be used. crypt.CryptAlgorithm = "pki" ' Add a PFX file to allow the crypt object to find ' the certificate and private key needed for decryption pfxFilePath = "myPfx.pfx" pfxPassword = "secret" success = crypt.AddPfxSourceFile(pfxFilePath,pfxPassword) If (success <> 1) Then Response.Write "<pre>" & Server.HTMLEncode(crypt.LastErrorText) & "</pre>" End If ' Assuming the decrypted data will be text, decrypt to ' a string. mimeText = crypt.DecryptString(p7mData) If (mimeText = vbNullString ) Then Response.Write "<pre>" & Server.HTMLEncode(crypt.LastErrorText) & "</pre>" End If ' Note: Chilkat Crypt and Chilkat MIME are separate products. ' To use both objects, one would license the "Chilkat Bundle", ' which provides licenses to all existing Chilkat products. ' This is less expensive than licensing each of the two products separately. set mime = Server.CreateObject("Chilkat_9_5_0.Mime") success = mime.UnlockComponent("Anyting for 30-day trial") If (success <> 1) Then Response.Write "<pre>" & Server.HTMLEncode(mime.LastErrorText) & "</pre>" End If ' Load the MIME text into the MIME object. success = mime.LoadMime(mimeText) If (success <> 1) Then Response.Write "<pre>" & Server.HTMLEncode(mime.LastErrorText) & "</pre>" End If ' Save the MIME to a file: success = mime.SaveMime("outMime.txt") If (success <> 1) Then Response.Write "<pre>" & Server.HTMLEncode(mime.LastErrorText) & "</pre>" End If ' Success! Output the MIME text: Response.Write "<pre>" & Server.HTMLEncode( mime.GetMime()) & "</pre>" %> </body> </html> |
|||||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.