2011-12-15 10 views
-1

PHP cURLを使用してhttpsホストに接続したいが、ホストまたはそのCAパスから返された証明書を使用したくない。PHP cURLを使用してhttpsホストにローカルSSL証明書を指定しますか?

私は証明書をローカルに持っているので、ホストが返す証明書の代わりにローカルファイルを使用し、CAには依存しません。

私は多くのことを研究し、試してみましたが、通常のデフォルトパス以外は何も動作していません。ホストから証明書を取得し、CAパスに従います。

既存のホスト証明書を変更することはできません。

+0

デフォルトの証明書をスキップしようとしている理由が分かっていれば役に立ちます。これはあなたのcURL通話のスピードの問題ですか? –

+0

私はCAを信頼または参照する必要はありません。実際には、デフォルトの方法を使用し、成功したらcURLがサーバーから取得した証明書とローカルコピーを比較するという回避策を開発しました。私はむしろ、cURLがすでにそれをサポートしているなら、むしろより直接的な手段を望んでいます。 – danorton

+0

私はあなたの推論を本当に理解していません。つまり、CAによって署名され発行された証明書を使用している場合、証明書の所有者が自分の氏名であることを確認したCAを既に信頼しています。 – middus

答えて

0

私はあなたを理解しているかわかりません。あなたの質問が間違っているか、SSLに関する基本的な誤解があります。

ホストの証明書(公開鍵)を使用する必要があります。そうしないと、ホストは送信しているものを理解できません。

+0

元のクエリから: "...私は証明書をローカルに持っています..."。 これを紛失し、無回答を提供したために下落しました。 (これは元のクエリのコメントに含まれています) – danorton

+0

@danorton質問を投げかけている人は、読んでいる人にとって必ずしも明確ではないので、あなたには明らかです。私にとっては、ローカル証明書が「ホストから返された証明書」と同等であることは明らかではありません。特に、あなたがその証明書を使用したくないと述べたからです。これが、あなたがおそらく間違っているとの結論に至った理由です。私にとってこれは有効な答えです。 – middus

関連する問題