2017-01-10 14 views
1

私は署名入りのjarファイルを持っています。 Java 7/8では、私のアプリケーションに問題はありません。 Java 6では、jarの符号なしエントリについて文句を言います。私は、Java 7 jarsigner -verify myjar.jarJar署名Java 6対Java 8

出力を使用してjarファイルを検証し、Java8は - > "jarファイルが検証"

出力するJava 6 - "jarファイル署名され(署名が解析可能な欠落しているかいない)">が

私がしようとしましたjdk 6、7、8 32/64ビット版でjarファイルをビルドして署名します。変化なし。

ここで何が起こるか考えている人はいますか?

+0

ECDSA署名鍵と証明書を使用していますか? Java6は、すぐにECCを実行しませんでした。 (もちろん、それは長い間サポートされておらず、安全ではないことも承知しています) –

+0

いいえ。公開鍵はRSA 2048であり、証明書の署名アルゴリズムはSHA256です。私が知る限り、Java 6はSHA 256を処理する能力があるはずです。さらに調査を行い、Java 6で動作する以前のバージョンのアプリケーションを検出しました。このバージョンはSHA1アルゴリズムで署名されています。これは問題になりますか? – Joschi

答えて

2

問題が見つかりました。問題はTSAです。署名にタイムスタンプを追加しました。 Java 6は、このTSAからのタイムスタンプを処理できないようです。解決策は、Java 6クライアントがタイムスタンプを処理または削除できるTSAを使用することです。

関連する問題