全部きれいに「×」でdigitalSignatureビットが無くnonRepudiationビットしか立っていないような署名署名者証明書の場合には Signature.initVerify(Certificate) で初期化した場合に必ずエラーになることがわかりました。 実装側での問題回避策 まぁ、当たり前ですが回避策として初期化には証明書を使わずに証明書から公開鍵を取り出して使うという方法があります。 sig = Signature.getInstance("SHA1withRSA") sig.initVerify(cert.getPublicKey()) sig.update(署名対象byte配列) print "署名検証結果:", sig.verify(署名値byte配列) 証明書プロファイル RFC 3280では一般的な署名やメールの署名などでは digitalSignature

