Sample code for 30+ languages & platforms
Visual FoxPro

Duplicate openssl smime -encrypt -binary -aes-256-cbc -in some_file.dat -out some_file.dat.enc -outform DER cert.crt

See more OpenSSL Examples

Demonstrates how to encrypt to binary DER using 256-bit AES (CBC mode) as the underlying symmetric encryption algorithm, to produce PKCS7 enveloped data (binary DER).

Duplicates the following openssl command:

openssl smime -encrypt -binary -aes-256-cbc -in some_file.dat -out some_file.dat.enc -outform DER cert.crt

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loCert
LOCAL loBd
LOCAL loCrypt

lnSuccess = 0

* This example requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.

loCert = CreateObject('Chilkat.Cert')
lnSuccess = loCert.LoadFromFile("qa_data/openssl/EE.cer")
IF (lnSuccess = 0) THEN
    ? loCert.LastErrorText
    RELEASE loCert
    CANCEL
ENDIF

loBd = CreateObject('Chilkat.BinData')
lnSuccess = loBd.LoadFile("qa_data/openssl/hello.txt")
* Assuming success..

loCrypt = CreateObject('Chilkat.Crypt2')
lnSuccess = loCrypt.SetEncryptCert(loCert)
IF (lnSuccess = 0) THEN
    ? loCrypt.LastErrorText
    RELEASE loCert
    RELEASE loBd
    RELEASE loCrypt
    CANCEL
ENDIF

loCrypt.CryptAlgorithm = "PKI"

* Indicate the underlying symmetric encryption to be used:
loCrypt.Pkcs7CryptAlg = "aes"
loCrypt.KeyLength = 256
loCrypt.CipherMode = "cbc"

lnSuccess = loCrypt.CkEncryptFile("qa_data/openssl/hello.txt","qa_output/hello.txt.enc")
IF (lnSuccess = 0) THEN
    ? loCrypt.LastErrorText
    RELEASE loCert
    RELEASE loBd
    RELEASE loCrypt
    CANCEL
ENDIF

? "Success."

RELEASE loCert
RELEASE loBd
RELEASE loCrypt