問題タブ [jks]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
code-signing - JKS、CER、SignCode の問題
現在、Microsoft の SignCode ツールと (GlobalSign の) 証明書を使用して EXE ファイルに署名する際に、興味深い問題が発生しています...
そのため、現在の証明書が間もなく期限切れになるため、新しい証明書を購入しました。元の形式は JKS です。この証明書を .JKS から .CER にエクスポートしたので、ルートの信頼できる証明書セクションでローカル マシンにインストールできます。インストールしましたが、certmgr.msc を開くと表示されますが、[コントロール パネル] -> [インターネット オプション] -> [コンテンツ] -> [証明書] -> [ルートの信頼できる証明書] などを開くと表示されません。ここにもあるといいなと思いました。
signcode.exe ツールを実行すると、「正しい秘密鍵で csp プロバイダーを開くことができません」というエラー メッセージが表示されます。
ノート!古い証明書でテストすると機能するため、signcode.exe コマンドは正しいです。
お知らせ下さい。
前もって感謝します!サージ
java - AES 暗号化を使用して Java Key Store (.jks) ファイルを作成する方法
Oracle のドキュメントを読んでみると、デフォルトで JKS ファイルは を使用して暗号化されていることがわかりますPBEWithMD5AndTripleDES
。DESだけでも不安になる中、MD5は大きな赤信号。秘密鍵を使用PBEWithSHA256And256BitAES-CBC-BC
または暗号化したいと考えています。PBEWithSHA256And128bitAES-CBC-BC
KeyStore インターフェイス全体を実装する新しい暗号化サービス プロバイダーを作成する必要がありますか、または KeyStore の作成をパラメーター化することは可能ですか (プレーン Java または BouncyCastle を使用)?
編集: 背景の少し。
MD5 が KDF (または PBE) として使用されているように、3DES が壊れていないことはわかっています。問題は、これが今の状況だということだ。私たちが知っている限りでは、MD5 は明日 MD4 が壊れるレベルまで壊れる可能性があります。私のアプリケーションの寿命は少なくとも 10 年ですが、それよりもずっと長い可能性があります。どういうわけか、安全ではないかもしれないという理由だけで、その 10 年後に実際の暗号化コードを深く掘り下げている人を目にすることはありません。パスワード漏えいの大きな「事故」の最後のいくつかを見て、その可能性がどの程度であるかを確認する必要があります。これは、未加工のデータベースを見た人にとって明らかなことでした。
そうは言っても、NSA暗号スイートBは、あらゆる種類の対称暗号化にAESのみを許可します. NIST は、HMAC および KDF で使用する SHA-1 および SHA-2 アルゴリズムのみをリストしていますが、SHA-1 の使用は推奨されていません。Suite B では、 SHA-2 ハッシュ関数のみが許可されます。これらのアルゴリズムは公開されているのに、なぜそれらを使用しないのですか?
java - Java HttpClient に相当する Curl cacert
以下のコマンドのようにcurlを使って接続できるかなぁ、
curl --cacert some.pem https://someurl.com/resource
これを httpclient コードに変換するにはどうすればよいですか? pem ファイルを変換して新しいキーストアを作成する必要があることは理解していますが、これらすべての openssl、keytool コマンド、キーストア、トラストストアが混乱し、どれをどの順序で使用すればよいかわかりません。
java - Tomcat / JKS / Keytool-秘密鍵を再生成しますか?
keytoolまたは同等のものを使用して.JKSキーストアで秘密鍵を再生成することは可能ですか?
証明書とJKSキーストアが提供されましたが、証明書をインポートすると、CSRの生成に使用された秘密キーが削除されたようです。
新しい秘密鍵を使用して新しい鍵ストアを作成する方法はわかりますが、これはCSRまたは証明書と一致しません。
java - Java キー ストアのエイリアスに基づく単一の証明書の使用
複数のキーと証明書が追加されたキーストアがあります。キー ストアのエイリアスに基づく証明書を使用し、それを SSL に使用したいです。次のシステム プロパティを設定しようとしましたが、何も役に立ちませんでした。
キーエイリアスを照合する代わりに、キーストアからの最初の証明書を常に使用します
java - storepass を使用せずに Java Key Store から keypass を使用せずに秘密鍵をエクスポートする
keypass のない秘密鍵を含む、storepass のない JKS キーストアがあります。
- このストアとこのキーを使用して、たとえば(空のキーパスを許可しない) を使用して対話的に署名することはできません。
jarsigner
- すべての自動化は、ストアパスまたはキーパス、またはその両方を要求することによって失敗します。
しかし、秘密鍵はキーストアにあります。
を使用してキーを抽出する試みはkeytool
すべて失敗し、キーまたはキーストアをパスワードで保護する試みもすべてパスレスのために失敗しました。キーストアを操作する GUI やその他のツールについても同じことが言えます。これは、ストアパスレスストアのキーパスレスキーがサポートされていないか、サポートされていないためだと思います。
しかし、java.security.KeyStore
名前空間または他の場所に、Java コードを使用して秘密鍵をエクスポートできるコードがあると思います。私はこれについての経験がまったくないので、誰かが確かに知っていますか?もしそうなら、私を正しい方向に向けることができますか?
certificate - PFXからJKSへのキーツール変換:エイリアス<*>は存在しません
keytoolを使用してx.PFXファイルをx.JKSファイルに変換しようとしていますが、次のエラーが発生します。
このエラーの前に発生したアクションは次のとおりです。
x.PFXファイルの内容を一覧表示します(エイリアス名を読み取るためだけに):
ソースエイリアス名として「2」を使用してx.PFXファイルをx.JKSファイルに変換する
何が間違っているのかわかりませんか?PFXファイルには、エイリアスが1つだけのエントリが1つだけ含まれています(2)。また、これらのsrcalias値を使用してみました:2、 "2"、"2"。ソースエイリアス名を知らなくても、keytoolを使用してPFXをJKSに変換する他の方法はありますか?
java - curl -Eが成功している間、JavaSSLConnectは403を取得します
この質問は、PEMファイルを使用してJavaでSSLソケットを作成する方法に似ていますか?しかし、私はその質問から提案された解決策を機能させることができないようです。以前は.NetWebサービスに接続できましたが、証明書を介してSLLが実装されたため、アクセスできなくなりました。サーバーチームから、Webサービスに再度接続できるようにする証明書が提供されました。そして、私はこれがcurlを使用して機能していることを確認しました:
したがって、上記はwsdlを正しく返します。このメッセージを回避するために、curl呼び出しが正しく機能するように.cacert.pemファイルを作成する必要がありました(curl:(77)証明書検証場所の設定エラー):
現在、以下のJavaを使用しようとすると、まだ403が発生します。私が間違っていることを誰かが見つけられるかどうか疑問に思っていました。
以下は、トラストストアとキーストアを作成するために使用した手順です。cer_file.pemを個別のcert.pemとkey.pemに分割します。次に、次のリンクhttp://www.agentbob.info/agentbob/79-AB.htmlの指示を使用して、client_side_keystore.jksを作成しました。次に、 http: //code.google.com/p/java-keyutil/にあるユーティリティを使用してcurl certsファイルをjksにインポートすることにより、トラストストアを作成しました。
残念ながら、Javaテストクラスを介してwsdlを読み取ろうとすると、403が返されます。これはcurl呼び出しを介して機能します。私は何か馬鹿げたことをしているのではないか、あるいは何かを誤解しているのではないかと思います。しかし、誰かが私を正しい方向に向けることができるかどうか疑問に思っていましたか?
java - WS-Security: axis2/rampart を使用した証明書チェーンの検証
Java/Axis2 で記述された SOAP サーバーとクライアント間の通信を暗号化して署名しようとしています。暗号化は機能しますが、Java キー ストアからルート証明書を削除しても何も変わりません。ルート証明書がないと、サーバーとクライアントの証明書を検証できません。エラー メッセージが表示されないため、rampart は証明書チェーンを気にしていないようです。しかし、ルート証明書がないと、エラー メッセージが表示されます。
Java キー ストアを特別な方法で構成する必要がありますか? ストアにルート証明書が既に存在することに気付きます。openssl からチェーンから標準証明書をインポートすると、すべて問題なく、次のような質問はありません。新しい証明書を信頼しますか?
または、証明書チェーンをテストするためにランパートを構成する必要がありますか?
java - キーストアからの証明書のロード
以下の Java コードで NullPointerException を引き起こしている Base-64 でエンコードされた X.509 (.CER) 証明書があります。それを引き起こす行はPublicKey pubKey = pubCert.getPublicKey();
myfile.keystore に「xyz」証明書があることを確認する方法はありますか?