라이브러리
[PHP] stream_socket_enable_crypto - 이미 연결된 소켓에서 암호화를 켜거나 끕니다.
stream_socket_enable_crypto() 함수
`stream_socket_enable_crypto()` 함수는 SSL/TLS 암호화를 활성화하거나 비활성화하는 데 사용되는 PHP 함수입니다. 이 함수는 소켓을 열 때 암호화된 연결을 설정하거나 비암호화된 연결을 설정하는 데 사용됩니다.
함수의 매개변수
`stream_socket_enable_crypto()` 함수에는 세 개의 매개변수가 있습니다.
- `$socket`: 암호화를 활성화하거나 비활성화할 소켓입니다.
- `$enable`: 암호화를 활성화(true)하거나 비활성화(false)할지 여부입니다.
- `$capture_flags`: 암호화에 사용할 플래그입니다.
함수의 반환값
함수는 성공 시 `true`를 반환하고 실패 시 `false`를 반환합니다.
예제
# 예제 1: 암호화된 연결 설정
#hostingforum.kr
php
$host = 'example.com';
$port = 443;
$socket = stream_socket_client("tls://$host:$port", $errno, $errstr, 30);
if ($socket) {
stream_set_blocking($socket, 0);
stream_socket_enable_crypto($socket, true, STREAM_CRYPTO_METHOD_TLS_CLIENT);
$data = fread($socket, 1024);
echo $data;
fclose($socket);
} else {
echo "에러: $errstr ($errno)";
}
# 예제 2: 비암호화된 연결 설정
#hostingforum.kr
php
$host = 'example.com';
$port = 80;
$socket = stream_socket_client("tcp://$host:$port", $errno, $errstr, 30);
if ($socket) {
stream_set_blocking($socket, 0);
stream_socket_enable_crypto($socket, false, STREAM_CRYPTO_METHOD_NONE);
$data = fread($socket, 1024);
echo $data;
fclose($socket);
} else {
echo "에러: $errstr ($errno)";
}
참고
- `STREAM_CRYPTO_METHOD_TLS_CLIENT` 플래그는 TLS 클라이언트를 사용하는 암호화 방법을 지정합니다.
- `STREAM_CRYPTO_METHOD_NONE` 플래그는 암호화를 사용하지 않는 방법을 지정합니다.
- `stream_set_blocking()` 함수는 소켓의 블록킹 모드를 설정하는 데 사용됩니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.