The following C# code example encrypts a PDF document named Loan.pdf with a certificate named Encryption.cer. The encrypted PDF document is saved as a PDF file named EncryptLoanCert.pdf. (See Encrypting PDF Documents with Certificates.)/** Ensure that you create a .NET client assembly that uses* base64 encoding. This is required to populate a BLOB* object with data or retrieve data from a BLOB object.** For information, see "Invoking LiveCycle ES using Base64 Encoding"* in Programming with LiveCycle ES*/using System;using System.Collections;using System.ComponentModel;using System.Data;using System.IO ;namespace PKIEncryptPDF{class Class1{[STAThread]static void Main(string[] args){try{//Create an EncryptionServiceService client objectEncryptionServiceService encryptionClient = new EncryptionServiceService();encryptionClient.Credentials = new System.Net.NetworkCredential("administrator", "password");//Create a BLOB object to store the PDF documentBLOB inDoc = new BLOB();//Specify the PDF document to encryptstring path = "C:\\Adobe\\Loan.pdf";FileStream fs = new FileStream(path, FileMode.Open);//Get the length of the file streamint len = (int)fs.Length;byte[] ByteArray=new byte[len];//Populate the byte array with the contents of the FileStream objectfs.Read(ByteArray, 0, len);inDoc.binaryData = ByteArray;//Create a Recipient object to store certificate informationRecipient recipient = new Recipient();//Create a BLOB object to store certificate informationBLOB cert = new BLOB();//Specify the location of the certificatestring certPath = "C:\\Adobe\\Encryption.cer";FileStream fsCert = new FileStream(certPath, FileMode.Open);//Get the length of the file streamint lenCert = (int)fsCert.Length;byte[] cerByteArray=new byte[lenCert];//Populate the byte array with the contents of the FileStream objectfsCert.Read(cerByteArray, 0, lenCert);cert.binaryData = cerByteArray;//Assign the certificate to the Recipient objectrecipient.x509Cert=cert;//Create a CertificateEncryptionIdentity objectCertificateEncryptionIdentity encryptionId = new CertificateEncryptionIdentity();encryptionId.recipient = recipient;//Create an Object array that is passed to the encryptPDFUsingCertificates methodObject[] cerInfo = new Object[1];cerInfo[0] = encryptionId;//Create a CertificateEncryptionOptionSpec//object that stores encryption run-time valuesCertificateEncryptionOptionSpec pkiSpec = new CertificateEncryptionOptionSpec();//Specify the PDF document resource to encryptpkiSpec.option=CertificateEncryptionOption.ALL;//Specify the Acrobat versionpkiSpec.compat=CertificateEncryptionCompatibility.ACRO_7;//Encrypt the PDF document with a certificateBLOB outDoc = encryptionClient.encryptPDFUsingCertificates(inDoc,cerInfo,pkiSpec);//Populate a byte array with a BLOB databyte[] outByteArray=outDoc.binaryData;//Create a new file that represents the encrypted PDF documentstring FILE_NAME = "C:\\Adobe\\EncryptLoanCert.pdf" ;FileStream fs2 = new FileStream(FILE_NAME, FileMode.OpenOrCreate);//Create a BinaryWriter objectBinaryWriter w = new BinaryWriter(fs2);w.Write(outByteArray);w.Close();fs2.Close();}catch (Exception ee){Console.WriteLine(ee.Message);}}}}
| Programming with LiveCycle ES (LiveDocs) |
| Adobe LiveCycle ES Update 1 |
Send me an e-mail when comments are added to this page | Comment Report
Current page: http://livedocs.adobe.com/livecycle/8.2/programLC/programmer/help/000057.html