Go
Go
Extract PKCS7 from MIME and Decrypt
See more MIME Examples
Extracts the base64-encoded PKCS7 body of a MIME message to a file, and then decrypts using Chilkat Crypt2.Chilkat Go Downloads
success := false
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
mime := chilkat.NewMime()
success = mime.LoadMimeFile("c:/aaworkarea/EmailInBytes.txt")
if success != true {
fmt.Println(mime.LastErrorText())
mime.DisposeMime()
return
}
success = mime.SaveBody("c:/aaworkarea/smime.p7m")
if success != true {
fmt.Println(mime.LastErrorText())
mime.DisposeMime()
return
}
crypt := chilkat.NewCrypt2()
success = crypt.AddPfxSourceFile("c:/aaworkarea/my.pfx","pfxPassword")
if success == false {
fmt.Println(crypt.LastErrorText())
mime.DisposeMime()
crypt.DisposeCrypt2()
return
}
// Indicate the public-key (PKCS7) encryption/decryption should be used:
crypt.SetCryptAlgorithm("pki")
inPath := "c:/aaworkarea/smime.p7m"
outPath := "c:/aaworkarea/decrypted.dat"
success = crypt.CkDecryptFile(inPath,outPath)
if success == false {
fmt.Println(crypt.LastErrorText())
mime.DisposeMime()
crypt.DisposeCrypt2()
return
}
fmt.Println("Success.")
mime.DisposeMime()
crypt.DisposeCrypt2()