
- PHP 教程
- PHP - 首頁
- PHP - 簡介
- PHP - 安裝
- PHP - 歷史
- PHP - 特性
- PHP - 語法
- PHP - Hello World
- PHP - 註釋
- PHP - 變數
- PHP - Echo/Print
- PHP - var_dump
- PHP - $ 和 $$ 變數
- PHP - 常量
- PHP - 魔術常量
- PHP - 資料型別
- PHP - 型別轉換
- PHP - 型別混合
- PHP - 字串
- PHP - 布林值
- PHP - 整數
- PHP - 檔案與 I/O
- PHP - 數學函式
- PHP - Heredoc 和 Nowdoc
- PHP - 複合型別
- PHP - 檔案包含
- PHP - 日期與時間
- PHP - 標量型別宣告
- PHP - 返回型別宣告
- PHP 運算子
- PHP - 運算子
- PHP - 算術運算子
- PHP - 比較運算子
- PHP - 邏輯運算子
- PHP - 賦值運算子
- PHP - 字串運算子
- PHP - 陣列運算子
- PHP - 條件運算子
- PHP - 展開運算子
- PHP - 空合併運算子
- PHP - 比較運算子
- PHP 控制語句
- PHP - 決策制定
- PHP - If…Else 語句
- PHP - Switch 語句
- PHP - 迴圈型別
- PHP - For 迴圈
- PHP - Foreach 迴圈
- PHP - While 迴圈
- PHP - Do…While 迴圈
- PHP - Break 語句
- PHP - Continue 語句
- PHP 函式
- PHP - 函式
- PHP - 函式引數
- PHP - 按值傳遞
- PHP - 按引用傳遞
- PHP - 預設引數
- PHP - 具名引數
- PHP - 可變引數
- PHP - 返回值
- PHP - 傳遞函式
- PHP - 遞迴函式
- PHP - 型別提示
- PHP - 變數作用域
- PHP - 嚴格型別
- PHP - 匿名函式
- PHP - 箭頭函式
- PHP - 可變函式
- PHP - 區域性變數
- PHP - 全域性變數
- PHP 超全域性變數
- PHP - 超全域性變數
- PHP - $GLOBALS
- PHP - $_SERVER
- PHP - $_REQUEST
- PHP - $_POST
- PHP - $_GET
- PHP - $_FILES
- PHP - $_ENV
- PHP - $_COOKIE
- PHP - $_SESSION
- PHP 檔案處理
- PHP - 檔案處理
- PHP - 開啟檔案
- PHP - 讀取檔案
- PHP - 寫入檔案
- PHP - 檔案是否存在
- PHP - 下載檔案
- PHP - 複製檔案
- PHP - 追加檔案
- PHP - 刪除檔案
- PHP - 處理 CSV 檔案
- PHP - 檔案許可權
- PHP - 建立目錄
- PHP - 列出檔案
- 面向物件 PHP
- PHP - 面向物件程式設計
- PHP - 類和物件
- PHP - 建構函式和解構函式
- PHP - 訪問修飾符
- PHP - 繼承
- PHP - 類常量
- PHP - 抽象類
- PHP - 介面
- PHP - 特性
- PHP - 靜態方法
- PHP - 靜態屬性
- PHP - 名稱空間
- PHP - 物件迭代
- PHP - 封裝
- PHP - Final 關鍵字
- PHP - 過載
- PHP - 克隆物件
- PHP - 匿名類
- PHP Web 開發
- PHP - Web 概念
- PHP - 表單處理
- PHP - 表單驗證
- PHP - 表單電子郵件/URL
- PHP - 完整表單
- PHP - 檔案包含
- PHP - GET 和 POST
- PHP - 檔案上傳
- PHP - Cookie
- PHP - Session
- PHP - Session 選項
- PHP - 傳送電子郵件
- PHP - 淨化輸入
- PHP - Post-Redirect-Get (PRG)
- PHP - 快閃記憶體訊息
- PHP 高階
- PHP - MySQL
- PHP.INI 檔案配置
- PHP - 陣列解構
- PHP - 編碼標準
- PHP - 正則表示式
- PHP - 錯誤處理
- PHP - Try…Catch
- PHP - 錯誤除錯
- PHP - 針對 C 開發人員
- PHP - 針對 PERL 開發人員
- PHP - 框架
- PHP - Core PHP 與框架
- PHP - 設計模式
- PHP - 過濾器
- PHP - JSON
- PHP - 異常
- PHP - 特殊型別
- PHP - 雜湊
- PHP - 加密
- PHP - is_null() 函式
- PHP - 系統呼叫
- PHP - HTTP 認證
- PHP - 交換變數
- PHP - Closure::call()
- PHP - 過濾後的 unserialize()
- PHP - IntlChar
- PHP - CSPRNG
- PHP - 期望
- PHP - Use 語句
- PHP - 整數除法
- PHP - 已棄用的功能
- PHP - 已刪除的擴充套件和 SAPI
- PHP - PEAR
- PHP - CSRF
- PHP - FastCGI 程序
- PHP - PDO 擴充套件
- PHP - 內建函式
- PHP 有用資源
- PHP - 速查表
- PHP - 問答
- PHP - 快速指南
- PHP - 線上編譯器
- PHP - 有用資源
- PHP - 討論
PHP - OpenSSL 函式
什麼是 OpenSSL?
OpenSSL 是一個免費的開源模組,旨在處理計算機網路上發生的通訊。OpenSSL 是傳輸層安全 (TLS) 和安全套接字層 (SSL) 協議的工具。
什麼是 SSL 證書?
安全套接字層,即 SSL,由網站使用。SSL 證書透過使用加密來保護兩臺計算機之間的資料。這兩臺計算機可以是客戶端和伺服器之間的資料共享。當您共享密碼、信用卡詳細資訊、家庭住址、社會安全號碼等資料時,必須對其進行保護,SSL 證書負責處理此操作。SSL 證書確保對參與安全連線的兩臺計算機的身份進行身份驗證。
在 PHP 中安裝 OpenSSL
OpenSSL 模組預設新增到 PHP 中。您可以透過刪除 php.ini 中副檔名開頭新增的 (;) ;extension=php_openssl.dll 來啟用它。之後重新啟動 Apache,並確認更改是否生效,將以下程式碼另存為 .php 並執行瀏覽器中的 .php。
<?php phpinfo(); ?>您應該在瀏覽器中看到已啟用的 openssl,如下所示:

OpenSSL 配置
openssl.cnf 是配置檔案,其中包含 openssl 工作所需的所有預設配置。要執行 openssl,首先 php 將嘗試找到配置檔案。要獲得相同的效果,您必須將 php 資料夾新增到環境變數中。
如果您是 Windows 使用者,以下是在 php 資料夾中設定環境變數的步驟
1. 右鍵單擊“我的電腦”,然後轉到“屬性”。
2. 轉到“高階系統設定”。
3. 單擊“環境變數”按鈕。
4. 編輯路徑變數,然後單擊“編輯”按鈕。
5. 現在在末尾新增 Php 資料夾路徑。我使用的是 xampp,所以我的 php 資料夾是 C:\xampp\php;
6. 完成後,單擊“確定”按鈕。
7. 現在開啟命令提示符並輸入命令:openssl version -a。
C:\Windows\system32>openssl version -a OpenSSL 1.0.2l 25 May 2017 built on: reproducible build, date unspecified platform: mingw64 options: bn(64,64) rc4(16x,int) des(idx,cisc,2,long) idea(int) blowfish(idx) compiler: x86_64-w64-mingw32-gcc -I. -I.. -I../include -D_WINDLL -DOPENSSL_PIC -DOPENSSL_THREADS -D_MT -DDSO_WIN32 -static-libgcc -DL_ENDIAN -O3 -Wall -DWIN32_ LEAN_AND_MEAN -DUNICODE -D_UNICODE -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DO PENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSH A512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM OPENSSLDIR: "/etc/ssl"
現在 php 將能夠找到 openssl.cnf 配置檔案。
OpenSSL 函式
下表列出了所有與 PHP OpenSSL 相關的函式。此處,“版本”列表示支援該函式的 PHP 的最早版本。序號 | 函式與描述 | 版本 |
---|---|---|
1 | openssl_pkey_new()
返回一個包含新的私鑰和公鑰對的資源識別符號 |
5.0.0 |
2 | openssl_pkey_get_private()
返回私鑰 |
5.0.0 |
3 | openssl_pkey_get_public()
返回公鑰 |
5.0.0 |
4 | openssl_pkey_export_to_file()
將金鑰匯出到檔案 |
5.0.0 |
5 | openssl_private_encrypt()
使用私鑰加密資料 |
5.0.0 |
6 | openssl_public_encrypt()
使用公鑰加密資料 |
5.0.0 |
7 | openssl_public_decrypt()
使用公鑰解密資料 |
5.0.0 |
8 | openssl_private_decrypt()
使用私鑰解密資料 |
5.0.0 |