ভূমিকা
ssl:// এবং tls:// ট্রান্সপোর্টের জন্য কনটেক্সট অপশনসের লিস্ট।
| peer_name | ইউজ করা পিয়ার নাম। যদি এই মান সেট না করা হয়, তাহলে স্ট্রিম খোলার সময় ব্যবহৃত হোস্টনেমের ওপর ভিত্তি করে নাম অনুমান করা হয়। |
|---|---|
| verify_peer | SSL সার্টিফিকেট ভেরিফিকেশন আবশ্যক। ডিফল্ট TRUE। |
| verify_peer_name | পিয়ার নাম ভেরিফিকেশন আবশ্যক। ডিফল্ট TRUE। |
| allow_self_signed | সেলফ-সাইনড সার্টিফিকেট অনুমতি। verify_peer আপশ্যক। ডিফল্ট FALSE। |
| cafile | লোকাল ফাইলসিস্টেমে Certificate Authority ফাইল লোকেশন যেটি রিমোট পিয়ারের আইডেন্টিটি অথেন্টিকেট করতে ব্যবহার হবে। |
| capath | সঠিকভাবে হ্যাশ করা সার্টিফিকেট ডিরেক্টরি হতে হবে। |
| local_cert | লোকাল ফাইলসিস্টেমে লোকাল সার্টিফিকেট ফাইল পাথ। |
| local_pk | সার্টিফিকেট এবং প্রাইভেট কি আলাদা ফাইলে থাকলে লোকাল প্রাইভেট কি ফাইল পাথ। |
| passphrase | যে পাসফ্রেজ দিয়ে local_cert ফাইলটি এনকোড করা হয়েছিল। |
| CN_match | আমরা যে Common Name এক্সপেক্ট করছি। যদি Common Name ম্যাচ না করে, কানেকশন অটেমপ্ট ফেল করবে। |
| verify_depth | সার্টিফিকেট চেইন খুব গভীর হলে অবোর্ট করুন। |
| ciphers | উপলব্ধ সিফারগুলোর লিস্ট সেট করুন। স্ট্রিং ফরম্যাট ciphers(1)-এ বর্ণিত। |
| capture_peer_cert | TRUE সেট করলে peer_certificate কনটেক্সট অপশন তৈরি হবে যেটে পিয়ার সার্টিফিকেট থাকবে। |
| capture_peer_cert_chain | TRUE সেট করলে peer_certificate_chain কনটেক্সট অপশন তৈরি হবে যেটে সার্টিফিকেট চেইন থাকবে। |
| SNI_enabled | TRUE সেট করলে সার্ভার নেম ইন্ডিকেশন ইনেবল হবে। |
| SNI_server_name | সেট থাকলে, এই মানটি সার্ভার নেম হিসেবে ব্যবহার হবে SNI-এর জন্য। অন্যথায় হোস্টনেমের ওপর ভিত্তি করে অনুমান করা হবে। |
| disable_compression | সেট থাকলে TLS কমপ্রেশন ডিজেবল হবে। |
| peer_fingerprint | রিমোট সার্টিফিকেট ডাইজেস্ট নির্দিষ্ট হ্যাশের সাথে ম্যাচ না করলে অবোর্ট। |
| security_level | সিকিউরিটি লেভেল সেট করুন। নির্দিষ্ট না থাকলে ডিফল্ট সিকিউরিটি লেভেল ব্যবহার হবে। PHP 7.2.0 এবং OpenSSL 1.1.0 থেকে উপলব্ধ। |
উদাহরণ
এই উদাহরণ SSL কনটেক্সট সেটিংস দেখাচ্ছে।
$stream_context = stream_context_create([ 'ssl' => [ 'local_cert' => '/path/to/key.pem', 'peer_fingerprint' => openssl_x509_fingerprint(file_get_contents('/path/to/key.crt')), 'verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true, 'verify_depth' => 0 ]]);