[PHP-users 33491] Re: 証明書つきのhttpsのソケット通信

Michiyoshi Buniu buniu @ dream-link.jp
2008年 4月 25日 (金) 23:52:24 JST


豊丹生です。

早々の回答ありがとうございます。

メーリングリスト用に編集したときに、
消してはいけない部分も消していました。

$purl = parse_url('https://先方サーバーIPアドレス:14100/対象ファイル');
$fp = fsockopen($purl['host'], (isset($purl['port']) ? $purl['port'] : 80), 
$errno, $errstr, 30, $context);

こういった状況なので、通常443ポートが入るところに、14100が入ります。
先方サーバーが14100ポートでSSL通信するようになっているようです。

ちなみに、ca.pemとclient.pemの中身は以下のような感じです。

■ca.pem(前半がルートCA証明書、後半が中間CA証明書です。)
-----BEGIN CERTIFICATE-----
MIICljCCAf+gAwIBAgIQTGCmZojBwfpntDcEyyerKDANBgkqhkiG9w0BAQUFADBX
(中略)
tD0A1iHm0YToLouxrlXWb1N+MqFcrzOZPN/EB/BtMsLxnBZDCPUImHxE
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIICuTCCAiKgAwIBAgIQFgsqgPJ2OSUZUw5FCiTyYTANBgkqhkiG9w0BAQUFADBX
(中略)
3J6aPXd5k4w/6ehiGBlkWMRog2UWxttalWqJFUQ=
-----END CERTIFICATE-----

■client.pem
-----BEGIN RSA PRIVATE KEY-----
MIICXwIBAAKBgQDgqarHa3qUcAp7QLVpraUPnHQsQ55uG+8xzSH/QdmLIRz7eHex
(中略)
OJzSQcrv40DfeAKqMjAhZOY2JHN8DluxbH3GvZqErMctyPg=
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIIC0zCCAjygAwIBAgIQSnBIx3AdOoLOrO/SMUeefTANBgkqhkiG9w0BAQUFADBS
(中略)
H1TraLXIdg==
-----END CERTIFICATE-----

厳密にはSSLではなくてTLSらしいのでその辺が関係しているのでしょうか?
(TLSがあまりよく分かってないのですが。)

何か参考になる情報等ありましたらお教え頂ければ幸いに存じます。

以上、よろしくお願いします。

----- Original Message -----

>> $fp = fsockopen($purl['host'], (isset($purl['port']) ? $purl['port'] : 
>> 80),
>
> httpsならポート番号は443なのでは??
>
> -- 
> ゆむ




PHP-users メーリングリストの案内