[英]Is this code signing certificate valid for signing applets?
我們購買了用於簽署applet的代碼簽名證書,但在簽署applet時出現以下錯誤。
C:\CM\WEB-INF>jarsigner -keystore code_signing.keystore C:\CM\SweetApplet.jar code_signing_real
Enter Passphrase for keystore:
jarsigner: Certificate chain not found for: code_signing_real. code_signing_real must reference a valid KeyStore key entry containing a private key and corresponding public key certificate chain.
我們的證書不正確嗎? 這是以下問題的證書。 錯誤消息似乎表明證書必須包含私鑰,但我們不明白這是怎么回事,因為私鑰永遠不會暴露給除我們以外的任何人。
C:\CM\WEB-INF>keytool -list -keystore code_signing.keystore -alias code_signing_real -v
Enter keystore password:
Alias name: code_signing_real
Creation date: Mar 13, 2014
Entry type: trustedCertEntry
Owner: CN=CE, OU=CE, O=CE, L=PAL
O ALTO, ST=California, C=US
Issuer: CN=Thawte Code Signing CA - G2, O="Thawte, Inc.", C=US
Serial number: 728b78e4ded46af26494c59690e428f0
Valid from: Wed Mar 12 17:00:00 PDT 2014 until: Fri Mar 11 15:59:59 PST 2016
Certificate fingerprints:
MD5: E0:DB:9E:DC:37:1E:C2:A9:EA:C0:A8:21:22:61:9F:DD
SHA1: F9:C3:75:37:CA:86:4D:E2:11:BE:52:79:CE:FA:B3:6B:32:F0:CF:D2
Signature algorithm name: SHA1withRSA
Version: 3
Extensions:
#1: ObjectId: 2.5.29.19 Criticality=true
BasicConstraints:[
CA:false
PathLen: undefined
]
#2: ObjectId: 1.3.6.1.5.5.7.1.1 Criticality=false
AuthorityInfoAccess [
[accessMethod: 1.3.6.1.5.5.7.48.1
accessLocation: URIName: http://ocsp.thawte.com]
]
#3: ObjectId: 2.5.29.4 Criticality=false
#4: ObjectId: 2.5.29.31 Criticality=false
CRLDistributionPoints [
[DistributionPoint:
[URIName: http://cs-g2-crl.thawte.com/ThawteCSG2.crl]
]]
#5: ObjectId: 2.5.29.37 Criticality=false
ExtendedKeyUsages [
codeSigning
1.3.6.1.4.1.311.2.1.22
]
#6: ObjectId: 2.16.840.1.113730.1.1 Criticality=false
NetscapeCertType [
Object Signing
]
它沒有說證書必須包含私鑰。 證書不包含私鑰。 再讀一遍。 它說密鑰條目必須包含私鑰和證書。
因此,無論您構建此KeyStore,它都是無效的。 您可能只是將簽名證書導入到新的KeyStore中,或者使用新別名。 您必須將其導入到私鑰的原始KeyStore中,並使用與私鑰相同的別名。
您還必須將證書鏈作為可信CA證書導入另一個別名。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.