2011-11-08 30 views
5

私は自己署名のjarに次のエラーを取得:Jarsigner: "このjarには、証明書チェーンが検証されていないエントリが含まれています。

jar verified. 

Warning: 
This jar contains entries whose certificate chain is not validated. 

Re-run with the -verbose and -certs options for more details. 

私はこのようなjarファイルに署名します。javaウェブ開始するための一つの、そして1:私のjarファイルは2つのエントリポイントを持っている

"C:\Program Files\Java\jdk1.7.0\bin\jarsigner" -keystore myKeyStore myJar.jar myAlias 

アプレットのために。

  • 私がJava Web Startの方法でjarを実行すると、発生率はありません。
  • しかし、私はアプレットとしてjarを実行します。 jarに埋め込まれたビットマップリソースにアクセスしようとすると、ある時点でセキュリティの警告が強く表示されます。

-verboseオプションと-certsオプションを使用すると、多くの行が表示されます。そして私はこれについて何も理解していません。これは出力です:output.txt(6307行の一部は以下に再現されています)。

s  157850 Tue Nov 08 12:57:44 CET 2011 META-INF/MANIFEST.MF 

     X.509, O=keyja.com 
     [certificate is valid from 17/08/11 17:32 to 24/07/11 17:32] 
     [CertPath not validated: null] 

     112909 Tue Nov 08 12:57:44 CET 2011 META-INF/KEYJA_CO.SF 
     1108 Tue Nov 08 12:57:44 CET 2011 META-INF/KEYJA_CO.RSA 
sm  180 Tue Nov 08 12:16:40 CET 2011 com/keyja/client/a/a/a/k.class 

     X.509, O=keyja.com 
     [certificate is valid from 17/08/11 17:32 to 24/07/11 17:32] 
     [CertPath not validated: null] 

sm  252 Tue Nov 08 12:16:40 CET 2011 com/keyja/client/a/a/a/r.class 
... 
(around 6000 lines of other output along the same lines) 

    s = signature was verified 
    m = entry is listed in manifest 
    k = at least one certificate was found in keystore 
    i = at least one certificate was found in identity scope 

jar verified. 

Warning: 
This jar contains entries whose certificate chain is not validated. 

jarファイルの署名方法は?

+0

それは意味があります。私は出力へのリンクを含んだ。 – Joel

+0

*「Java Web Startでjarファイルを実行すると、発生することはありません。」* JWSの起動時にはどのレベルのセキュリティ権限が必要ですか? –

+0

JWS inがサンドボックスモードで実行されました。 – Joel

答えて

1

ありがとうアンドリュートンプソン。私はjarファイルに署名をしておらず、バグを見つけました。私がサンドボックスから出る必要はないので、署名は意味を持ちませんので、あなたはこれについて正しいと言いません。

記録のために、バグはjnlp.jarライブラリの使用でした。動作させるために、標準タグの代わりにjnlp/appletコードを使用してアプレットを起動しました。

+0

あなたはそれをどのように修正しましたか?もう少し詳しくお願いします –

+0

標準のHTMLアプレットタグではなく、jnlp/appletコードを使用してアプレットを起動しました。 http://docs.oracle.com/javase/tutorial/deployment/deploymentInDepth/embeddingJNLPFileInWebPage.html – Joel

1

私はあなたの質問にちょうど1行答えるでしょう。あなたがもっと見ると、あなたはそれを見るでしょう。私はあなたが今日知って、期待しているようここでは、

[証明書は17/08/11午後05時32から24/07/11午後05時32まで有効です]


です7月24日ではないため、アプリに再署名する必要があります。

+0

証明書が有効でなくなったら、彼は有効期限を延長するために証明書を再作成します。 –

+0

いいえ、それは24/07/2111で、有効です。 – Joel

+0

私はちょうど不思議です... 17/08/2111 17:32から24/7/2111 17:32まで有効ですか? – user592704

0

私はまったく同じ問題を抱えています。

新しいJava 7およびJava 6バージョンの検証に変更があります。 バグID:6861062 java classes_security証明書チェーンの検証でMD2を無効にします。ハラファイルに署名するときにコマンドを実行するときに、私はいくつかの警告メッセージを持っていたし、

は: X.509、OU =クラス: jarsignerのMyTools.jar -verify -verbose -certs

私がメッセージを持っていました0 = "VeriSign、Inc."、C = US [証明書は29.01.96 01:00から02.08.28 01:59まで有効] [CertPathは検証されていません:アルゴリズムの制約のチェックに失敗しました:MD2withRSA]

私の解決策は次のとおりです: - 署名とJREプラグインに別のバージョンのJDKを使用します。 - このアルゴリズムを使用しないように、証明書のセキュリティを更新してください。

私はそれがあなたを助けてくれることを願っています。

よろしくお願いいたします。

関連する問題