【PHP8.x】CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256定数の使い方
CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256定数の使い方について、初心者にもわかりやすく解説します。
基本的な使い方
CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256定数は、PHPのcURL拡張機能において、SSH(Secure Shell)プロトコルを利用した通信を行う際に、接続先のホスト(サーバー)の公開鍵のSHA256ハッシュ値を指定するために用いられる定数です。
この定数の主な目的は、接続しようとしているSSHサーバーが、信頼できる正規のサーバーであることを確認し、通信の安全性を確保することにあります。インターネットを通じてSSH接続を行う際、悪意のある第三者が正規のサーバーになりすまし、ユーザーの情報を盗み取ろうとする「中間者攻撃(Man-in-the-Middle attack)」のリスクが存在します。
CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256を使用することで、プログラムは事前に把握している正規のサーバー公開鍵のSHA256ハッシュ値と、実際に接続したサーバーから提示された公開鍵のハッシュ値を比較します。両者が一致しない場合、接続は拒否され、不正なサーバーへの接続を防ぐことができます。
具体的には、curl_setopt()関数にこの定数を渡し、その値としてサーバーの公開鍵のSHA256ハッシュ値を文字列形式で設定します。例えば、SFTPプロトコルを用いたファイル転送などで安全性を高める際に利用されます。このハッシュ値は、サーバー管理者から提供されるか、または信頼できる方法で取得し、プログラムに組み込む必要があります。安全なシステムを構築する上で非常に重要なセキュリティ機能の一つです。
構文(syntax)
1<?php 2$ch = curl_init(); 3curl_setopt($ch, CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256, 'df870f7d4b68078c934305f87b8d810852e1851e2b69f64a50d276b30691e57c'); 4curl_close($ch); 5?>
引数(parameters)
引数なし
引数はありません
戻り値(return)
int
この定数は、SSH接続の公開鍵のSHA256フィンガープリントを指定する際に使用される整数値です。