佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > PHP中OpenSSL加密問題整理

PHP中OpenSSL加密問題整理

熱門標簽:阿里云 服務(wù)器配置 銀行業(yè)務(wù) 團購網(wǎng)站 電子圍欄 Linux服務(wù)器 Mysql連接數(shù)設(shè)置 科大訊飛語音識別系統(tǒng)

最近公司項目中有需要用到OpenSSL的加密和java端進行接口驗證,再測試環(huán)境升級到PHP7的時候加密會出現(xiàn)錯誤,后來多方面檢查終于找到原因所在:

PHP7環(huán)境下把openssl_get_privatekey方法換成openssl_pkey_get_private

需要轉(zhuǎn)換一下秘鑰,window環(huán)境和Linux環(huán)境下的秘鑰格式有區(qū)別(暫時不確定是不是操作系統(tǒng)的關(guān)系)

PHP的秘鑰驗證需要加上頭尾。

這里貼上附屬方法

轉(zhuǎn)換秘鑰格式的方法:

function transJavaRsaKeyToPhpOpenSSL($content) {
    if ($content) {
      return trim(chunk_split($content, 64, "\n"));
    }
    return false;
  }

加頭尾的方法:

function appendFlags($content, $isPublic = true) {
    if ($isPublic) {
      return "-----BEGIN PUBLIC KEY-----\n" . $content . "\n-----END PUBLIC KEY-----\n";
    }
    else {
      return "-----BEGIN PRIVATE KEY-----\n" . $content . "\n-----END PRIVATE KEY-----\n";
    }
  }

以上就是本次遇到OPENSSL加密問題的小經(jīng)驗,大家還有問題的話在下方留言討論吧。

您可能感興趣的文章:
  • 升級 PHP7.1 后 openssl 解密 mcrypt AES 數(shù)據(jù)不兼容問題的處理方法
  • PHP7.1中使用openssl替換mcrypt的實例詳解
  • PHP 使用openssl 擴展實現(xiàn)公鑰加密的方法
  • php無需編譯安裝openssl擴展的實現(xiàn)方法
  • linux環(huán)境下安裝PHP的OpenSSL擴展的方法講解
  • php7安裝openssl擴展方法
  • PHP 7.1中利用OpenSSL代替Mcrypt加解密的方法詳解
  • PHP中使用OpenSSL生成證書及加密解密
  • 詳解PHP版本兼容之openssl調(diào)用參數(shù)

標簽:江蘇 蚌埠 廣元 衡水 棗莊 大理 衢州 萍鄉(xiāng)

巨人網(wǎng)絡(luò)通訊聲明:本文標題《PHP中OpenSSL加密問題整理》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    改则县| 天祝| 咸丰县| 盐边县| 施秉县| 大埔县| 灌南县| 新和县| 辰溪县| 丹东市| 阜新市| 秦安县| 友谊县| 临澧县| 邻水| 大荔县| 固阳县| 婺源县| 吉安县| 资兴市| 博白县| 清涧县| 广安市| 旺苍县| 边坝县| 天水市| 连山| 定西市| 合阳县| 永寿县| 高密市| 嘉祥县| 定兴县| 阿拉尔市| 遂宁市| 梁山县| 舟曲县| 赣榆县| 垫江县| 兴义市| 武强县|