PHP 菜鳥教程

PHP 高級(jí)教程

PHP & MySQL

PHP 參考手冊(cè)

PHP OpenSSL 函數(shù)

什么是OpenSSL?

OpenSSL是一個(gè)免費(fèi)的開源模塊,旨在處理通過計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行的通信。OpenSSL是用于傳輸層安全性(TLS)和安全套接字層(SSL)協(xié)議的工具。

什么是SSL證書?

網(wǎng)站使用安全套接字層(即SSL)。SSL證書負(fù)責(zé)通過加密保護(hù)兩臺(tái)計(jì)算機(jī)之間的數(shù)據(jù)。涉及的兩臺(tái)計(jì)算機(jī)可以是客戶端和服務(wù)器之間的數(shù)據(jù)共享。當(dāng)您共享密碼,信用卡詳細(xì)信息,家庭住址,社會(huì)安全號(hào)碼等數(shù)據(jù)時(shí),必須對(duì)其進(jìn)行保護(hù),并且SSL證書會(huì)對(duì)其進(jìn)行保護(hù)。SSL證書可確保對(duì)所涉及兩臺(tái)計(jì)算機(jī)的身份進(jìn)行身份驗(yàn)證以確保安全連接。

PHP中的OpenSSL安裝

默認(rèn)情況下,OpenSSL模塊已添加到PHP。您可以通過刪除在php.ini中; extension = php_openssl.dll開頭的分號(hào)(;)來啟用它們。之后,重新啟動(dòng)apache并確認(rèn)更改是否生效,然后將以下代碼另存為.php并在瀏覽器中執(zhí)行.php。

<?php
   phpinfo();
?>
測(cè)試看看?/?

您應(yīng)該在瀏覽器中看到啟用了openssl,如下所示:

的openssl

OpenSSL配置

openssl.cnf是配置文件,具有openssl正常工作所需的所有默認(rèn)配置。要執(zhí)行openssl,第一件事是php會(huì)嘗試找到該配置文件。要獲取相同的文件,您必須將php文件夾添加到環(huán)境變量。

如果您是Windows用戶,請(qǐng)按照以下步驟為php文件夾設(shè)置環(huán)境變量:

1.右鍵單擊我的電腦,然后轉(zhuǎn)到屬性。

2.轉(zhuǎn)到高級(jí)系統(tǒng)設(shè)置。

3.單擊“環(huán)境變量”按鈕。

4.編輯路徑變量,然后單擊“編輯”按鈕。

5.現(xiàn)在在末尾添加Php文件夾路徑。我正在使用xampp,我的php文件夾為c:\xampp\php;。

6.完成后,單擊確定按鈕。

7.現(xiàn)在打開命令提示符并輸入命令: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"

現(xiàn)在,php將能夠找到openssl.cnf配置文件。

OpenSSL 函數(shù)

下表列出了與PHP OpenSSL相關(guān)的所有函數(shù)。此處的“版本”表示支持函數(shù)功能的PHP的最早版本。

序號(hào)函數(shù)描述
版本
1openssl_pkey_new()返回具有新的私鑰和公鑰對(duì)的資源標(biāo)識(shí)符5.0.0
2openssl_pkey_get_private()返回私鑰5.0.0
3openssl_pkey_get_public()返回公鑰5.0.0
4openssl_pkey_export_to_file()將密鑰導(dǎo)出到文件5.0.0
5openssl_private_encrypt()用私鑰加密數(shù)據(jù)5.0.0
6openssl_public_encrypt()

用公鑰加密數(shù)據(jù)

5.0.0
7openssl_public_decrypt()用公鑰解密數(shù)據(jù)5.0.0
8openssl_private_decrypt()用私鑰解密數(shù)據(jù)5.0.0
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清