如何从pdf签名文件中提取使用IText或BouncyCastle编码的PKCS7包,以便可以在另一个框架中存储或验证?事实上,我怎样才能从一个pdf签名文件中得到一个PKCS7编码的包呢?
发布于 2011-05-17 04:23:16
我的一个朋友帮我找到了答案。
public static byte[] ExtractPKCS7From(string path)
{
AcroFields acroFields = new PdfReader(path).AcroFields;
List<string> names = acroFields.GetSignatureNames();
foreach(var name in names)
{
PdfDictionary dict = acroFields.GetSignatureDictionary(name);
PdfString contents =
(PdfString)PdfReader.GetPdfObject(dict.Get(PdfName.CONTENTS));
return contents.GetOriginalBytes();
}
return null;
}非常直接,不是吗?
发布于 2015-12-22 05:52:26
代码,对pkcs7对象做任何你想做的事情!:)
PdfReader r = new PdfReader(fOs);
AcroFields af = r.getAcroFields();
ArrayList<String> listNames = af.getSignatureNames();
for(String x : listNames){
PdfPKCS7 pkcs7 = af.verifySignature(signature);
}祝好运!
https://stackoverflow.com/questions/5997326
复制相似问题