質問

最近ではbanklinkの支払いオプションのための私のphp店読ん仕様の実施に思うのでokeyが、1ポイントです。すべての公開鍵証明書の交換はX509形式です。現在は何なんか違うものなのパスワード保護されている。pemファイルとは何ですか?また、通常のパスワード保護されている。pemファイルを利用できなくなりました。phpのような機能 openssl_verify() 署名 openssl_sign() 機能です。

がんのアドバイスくださいここかの銀行が提供することがこのお支払い方法は非常に少ない情報やコメントnewbます。

では、日常のいまを生成します。pemし、送信します。後に彼らはサインをしましょうあんしきしており、ビジネスはもちろん私の願います。

てください教えてくだ情報が足りないので申し上げましたようないわからない多くの場合に証明書またはopenssl.

役に立ちましたか?

解決

PEMファイルは暗号化され、base64エンコード「生の」証明書/秘密鍵の値は、PEMとの仕事もすべき生の証明書を使用して作業機能するように、含まれています。 OpenSSLがあるフォーマットから別のフォーマットに変換することができる必要があります。

他のヒント

あなたはcurl概念を使用する必要があります。

curl_setopt($ch, CURLOPT_SSLCERT,'CA.pem');

正直なところ、PHPでOpenSSLの機能はひどいです。あなたの最善の策は、 phpseclib のような素晴らしいパッケージのために行くことです。

昔やっていたものです。その違いはいかにしてくれたのpemファイルを使用したことからそのサーバーです。

下記を書きまguiessingます。:)

  1. 生myreq.pemを使用opensslツールです。
  2. 送myreq.pemをして、署名証明書です。連続運転可能なことを実証した。
  3. 利用です。pem PHP下のようになります。

 

$context = stream_context_create();
stream_context_set_option($context, 'ssl', 'verify_peer', false); //or can be true
stream_context_set_option($context, 'ssl', 'cafile', "ca.pem");
stream_context_set_option($context, 'ssl', 'local_cert', "ca.pem");
stream_context_set_option($context, 'ssl', 'passphrase', 'your pem file password');
//instead tls can be ssl, sslv3, sslv2 depending requirements, 10 is timeout
$sock = stream_socket_client("tls://host:port", $errno, $errstr, 10, STREAM_CLIENT_CONNECT, $context); 
fwrite($sock, "Hi server\r\n");
$strResponse;
while(!feof($sock)) { $strResponse = $strResponse . fgets($sock, 1024); }
fclose($s);
echo $strResponse;
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top