ssh2_fingerprint

リモートサーバーのフィンガープリントを処理する

説明

string ssh2_fingerprint(resource $session, int $flags = SSH2_FINGERPRINT_MD5 | SSH2_FINGERPRINT_HEX)

アクティブなセッションからサーバーホスト鍵のハッシュを返します。

パラメータ

session

ssh2_connect のコールによって取得した SSH 接続リンク ID。

flags

flagsSSH2_FINGERPRINT_MD5SSH2_FINGERPRINT_HEX で論理和された SSH2_FINGERPRINT_SHA1SSH2_FINGERPRINT_RAW のいずれかです。

戻り値

ホストキーのハッシュを文字列で返します。

例1 既知の値に対するフィンガープリントのチェック

<?php
$known_host = '6F89C2F0A719B30CC38ABDF90755F2E4';

$connection = ssh2_connect('shell.example.com', 22);

$fingerprint = ssh2_fingerprint($connection,
               SSH2_FINGERPRINT_MD5 | SSH2_FINGERPRINT_HEX);

if ($fingerprint != $known_host) {
  die("HOSTKEY MISMATCH!\n" .
      "Possible Man-In-The-Middle Attack?");
}
?>