gpg加密使用
官網:安裝軟體 1
、libgpg-error2、
libassuan3、
gpgme
php擴充套件安裝
安裝方法:
phpize
./configure
make & make install
生成私鑰與公鑰:
gpg –gen-key
接下來跟隨一步一步選擇與執行,其中一步需要填寫密碼,可以選填,當填寫密碼後解密需要鍵入密碼才能解密。
檢視公鑰:
檢視私鑰:
為key_id
如上面檢視公鑰,
masterkeyid
為94a2dece
匯出公鑰:
gpg -o pubkey.txt -a --export masterkeyid
pubkey.txt
為匯出的目標檔案,會把公鑰儲存在
pubkey.txt
匯出私鑰:
gpg -o prikey.txt -a --export-secret-keys masterkeyid
pubkey.txt
為匯出的目標檔案,會把公鑰儲存在pri
key.txt
生成和使用撤銷證書
生成二進位制證書:
gpg --output revocation-gmail.cert --gen-revoke masterkeyid
匯出證書:
gpg -a -o revocation-gmail.txt --gen-revoke masterkeyid
php擴充套件的使用 基於
gnupg
開發加密操作類
<?php
namespace tools;
/** * created by phpstorm.
* user: shaunxu
* date: 2019/4/15
* time: 13:56
*/class gpgcatch (\exception $e)
}return true;
}/**
* 獲取加密key
* getkey
* @author shaunxu
* @date 2019/4/15
* @param string $type
* @return bool|string
*/private function getkey($type = "public")
/*** 設定公鑰
* setpublickey
* @author shaunxu
* @date 2019/4/17
* @param $key
*/function setpublickey($key)
/*** 設定私鑰
* setprivatekey
* @author shaunxu
* @date 2019/4/17
* @param $key
*/function setprivatekey($key)
/*** 設定公鑰檔案儲存位址
* setpublickeyfile
* @author shaunxu
* @date 2019/4/17
* @param $file
*/function setpublickeyfile($file)
/*** 設定私鑰檔案儲存位址
* setprivatekeyfile
* @author shaunxu
* @date 2019/4/17
* @param $file
*/function setprivatekeyfile($file)
/*** 讀取檔案
* readfile
* @author shaunxu
* @date 2019/4/15
* @param $file
* @return bool|string
*/private function readfile($file)
return false;
}/**
* 加密檔案
* encrypt
* @author shaunxu
* @date 2019/4/17
* @param $content //需要加密的內容
* @return array
*/function encrypt($content) catch (exception $e)
return $this->result(0 , $enc);
}/**
* 解密檔案
* decrypt
* @author shaunxu
* @date 2019/4/18
* @param $content
* @param string $pass
* @return array
*/function decrypt($content , $pass = "")catch (\exception $e)
return $this->result(0 , $plaintext);
}/**
* 獲取毫秒時間戳
* msectime
* @author shaunxu
* @date 2019/4/16
* @return float
*/function msectime()
/*** 結果輸出
* result
* @author shaunxu
* @date 2019/4/15
* @param int $code
* @param string $data
* @return array
*/function result($code = 0 , $data = "")
}
使用示例:
//加密
$gpg=newgpg();
$content=file_get_contents($file);//需要加密的內容
$gpg->setpublickey($pubkey);//設定公鑰key儲存檔案
$result=$gpg->encrypt($content);//普通加密
//解密
$pass=""; //生成key時輸入的密碼
$gpg->setprivatekey($prikey);
$result=$gpg->decrypt($content,$pass);//普通解密
Memcahe 在 PHP 中的使用
memcache 在 php 中有面向過程和物件導向兩種使用,這裡主要講述物件導向的使用,具體可以參考 php 手冊。memcache 的介面 物件導向的介面 1 memcache connect 開啟乙個 memcache 連線,例如 connect localhost 11211 開啟連線,第乙...
redis在php中,在PHP中使用redis
這裡是在mac os上安裝redis,並在php中開啟redis。在mac os上安裝redis 首先是安裝,它會預設安裝到 usr local bin下 複製 如下 cd tmp wget tar zxf redis 2.6.9.tar.gz cd redis 2.6.9 make sudo ma...
Redis 集群在PHP中的使用
注 需自行搭建redis集群環境 1.安裝 predis 包 composer require predis predis2.redis 基礎使用 預設值為 127.0.0.1 6379 client new predis client client set foo bar value client...