質問: codesigningコマンド:openssl cms -verify -binary -content vmlinuz -inform der -in vmlinuz.sig -cafile ca.crt出力:検証の失敗140187569694352:エラー:2e099064:cmsルーチン:cms_signerinfo_verify_cert:証明書の検証エラー:cms_smime.c:287:検証エラー:サポートされていない証明書の目的何かご意見をお聞かせください。どうもありがとう。
回答: システムのマンページから明らかなように またはオンライン ca.cnfで指定されたca証明書がca.crtであり、ルート証明書であると仮定すると、必要な基本機能は次のようになります。openssl cms -verify -binary -content vmlinuz -inform der -in vmlinuz.sig -cafile ca.crt デフォルトでは、存在する場合に「emailprotection」が含まれている場合はextendedkeyusageが必要です。id-pkix34(唯一の)codesigningではありません。それを上書きするには、-purpose anyを追加します。証明書階層がより複雑な場合(つまり、チェーンを使用している場合)、-certfileを使用して署名ファイルに含めた証明書、証明書に応じてさまざまなケースがあります。デフォルトまたは指定されたtrustoreファイルおよび/またはディレクトリ、および使用されている場合は-certfileで、1.0.2以降で-partial_chainを指定するかどうか、より具体的な質問がなければ、それを書く時間がありませんたくさん。