有没有办法制作自己的签名证书,以便对安装包等文件进行签名?
是否存在证书供应商必须是Windows的可信源的问题,否则您将收到警告消息?
发布于 2012-03-13 22:05:38
如果您对PKI和X.509有基本的了解,就可以使用openssl来完成这项工作。
Openssl预先配置了CA.pl or CA.sh script,可用于设置CA并以最少的配置生成证书。
主要命令包括:
# generate CA (need to do it only once)
CA.sh -newca
# create certificate request
openssl req -new -keyout user.key -out user.req -config yourconf.cnf
# sign request by CA
openssl ca -policy policy_anything -config yourconf.cnf -out user.pem -infiles user.req
# convert it into PKCS#12 (pfx) container, that can be used from various soft
openssl pkcs12 -export -in user.pem -inkey user.key -out user.p12 -name user -caname your_ca_name -chain -CAfile ./demoCA/cacert.pemyourconf.cnf是基于openssl附带的默认openssl.cnf的主配置文件。要使您的证书适合于代码签名,您应该在允许的密钥用法字段中指定它,如下所示(它会将您的证书限制为仅代码签名):
[ usr_cert ]
basicConstraints = CA:FALSE
keyUsage = digitalSignature
extendedKeyUsage = codeSigning
[ v3_req ]
keyUsage = digitalSignature
extendedKeyUsage = codeSigning要在windows中使用此证书,您应该将CA证书作为CA颁发机构安装到windows证书库中。您必须在要验证文件上的签名的每个工作场所执行此操作。
https://stackoverflow.com/questions/9428335
复制相似问题