OpenSSL是一個(gè)免費(fèi)的開源模塊,旨在處理通過計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行的通信。OpenSSL是用于傳輸層安全性(TLS)和安全套接字層(SSL)協(xié)議的工具。
網(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)證以確保安全連接。
默認(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.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配置文件。
下表列出了與PHP OpenSSL相關(guān)的所有函數(shù)。此處的“版本”表示支持函數(shù)功能的PHP的最早版本。
序號(hào) | 函數(shù) | 描述 | 版本 |
---|---|---|---|
1 | openssl_pkey_new() | 返回具有新的私鑰和公鑰對(duì)的資源標(biāo)識(shí)符 | 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() | 將密鑰導(dǎo)出到文件 | 5.0.0 |
5 | openssl_private_encrypt() | 用私鑰加密數(shù)據(jù) | 5.0.0 |
6 | openssl_public_encrypt() | 用公鑰加密數(shù)據(jù) | 5.0.0 |
7 | openssl_public_decrypt() | 用公鑰解密數(shù)據(jù) | 5.0.0 |
8 | openssl_private_decrypt() | 用私鑰解密數(shù)據(jù) | 5.0.0 |