private void signPublicKeyEncryption(Stream pdfStreamOutput)
{
if (DocumentSecurity.EncryptionPreferences.EncryptionType != EncryptionType.PublicKeyEncryption) return;
var pfxData = PfxReader.ReadCertificate(DocumentSecurity.EncryptionPreferences.PublicKeyEncryption.PfxPath, DocumentSecurity.EncryptionPreferences.PublicKeyEncryption.PfxPassword);
DocumentSecurity.DigitalSignature.CertificateFile.AppendSignature = true;
new SignatureWriter
{
SignatureData = new Signature
{
CertificateFile = DocumentSecurity.DigitalSignature.CertificateFile,
SigningInfo = DocumentSecurity.DigitalSignature.SigningInfo,
TsaClient = DocumentSecurity.DigitalSignature.TsaClient,
VisibleSignature = DocumentSecurity.DigitalSignature.VisibleSignature
}
}.SignPdf(pdfStreamOutput, pfxData);
}