本文介绍了使用signtool和C#签名并验证p7文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时删除!!

我可以使用signtool中的/p7选项对文件进行签名和时间戳记(在我的情况下,我正在对zip文件签名).我可以使用"CryptVerifyMessageSignature"来验证签名,但是提取的文件在前面有6个额外的字节.两种signtool都在添加 这些字节作为标头或提取操作将其添加.

 signtool符号/p7< temp dir> /p7co 0/f my.pfx/p< password> /a myfile.zip 

在调用CryptVerifyMessageSignature之后,我的解码消息以04 84 01 4a fd c1开头.最后4个字节等于整个文件的大小减去此6个字节的标头.我不知道04 84是什么.如果我写完这6个字节后的所有内容 我又有myfile.zip. signtool是否可以选择不写那些多余的字节,还是应该将解码后的消息读入其中?

谢谢

-戴夫


解决方案


I'm able to sign and timestamp a file using the /p7 option in signtool (In my case I'm signing a zip file). I can verify the signature using CryptVerifyMessageSignature, but the extracted file has 6 extra bytes at the front. Either signtool is adding those bytes as a header or the extraction is adding it. 

signtool sign /p7 <temp dir> /p7co 0 /f my.pfx /p <password> /a myfile.zip

After calling CryptVerifyMessageSignature, my decoded message starts with 04 84 01 4a fd c1. The last 4 bytes are equal to the size of the whole file minus this 6 byte header. I don't know what the 04 84 is. If I write out everything after these 6 bytes I have myfile.zip again. Is there an option for signtool to not write those extra bytes or is there a structure I'm supposed to read the decoded message into?

Thanks,

-Dave


解决方案


这篇关于使用signtool和C#签名并验证p7文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

1403页,肝出来的..

09-06 16:04