查詢

EventBufferEvent::sslGetCipherName()函式—用法及示例

「 獲取與當前 SSL 連線關聯的金鑰交換演算法的名稱 」


函式名:EventBufferEvent::sslGetCipherName()

適用版本:libevent 2.0.1-alpha 及更高版本

函式說明:該函式用於獲取與當前 SSL 連線關聯的金鑰交換演算法的名稱。

用法:

public string EventBufferEvent::sslGetCipherName ( void )

引數:該函式不接受任何引數。

返回值:返回一個字串,表示當前 SSL 連線關聯的金鑰交換演算法的名稱。

示例:

$base = new EventBase();
$socket = stream_socket_server('tcp://127.0.0.1:8000', $errno, $errstr);
$event = new EventBufferEvent($base, $socket, EventBufferEvent::OPT_CLOSE_ON_FREE | EventBufferEvent::OPT_SSL_CONNECTING, 'ssl://server.com');
$event->sslSetOptions(EventBufferEvent::SSL_OPTIONS_DEFAULT);
$event->sslHandshake();

$cipherName = $event->sslGetCipherName();
echo "Cipher Name: " . $cipherName; // 輸出:Cipher Name: ECDHE-RSA-AES256-GCM-SHA384

上述示例中,首先建立了一個 EventBase 物件和一個監聽 socket,然後利用 EventBufferEvent 類建立了一個 SSL 連線的事件物件。接著設定了 SSL 相關的選項並進行 SSL 握手,最後透過 sslGetCipherName() 函式獲取當前 SSL 連線使用的金鑰交換演算法的名稱,並列印輸出。

請注意,使用該函式前需要先確保已成功進行了 SSL 握手。

補充糾錯
熱門PHP函式
分享連結