PHP API 等傳輸 明文加密解密方法

2022-02-13 07:10:21 字數 1390 閱讀 9943

最常見的應用在使用者登入以及一些api資料交換的場景。

筆者收錄了一些比較經典的php加密解密函式**,分享給大家。加密解密原理一般都是通過一定的加密解密演算法,將金鑰加入到演算法中,最終得到加密解密結果。

1、非常給力的authcode加密函式,discuz!經典**(帶詳解):

function authcode($string, $operation = 'decode', $key = '', $expiry = 0)    

// 用固定的演算法,打亂密匙簿,增加隨機性,好像很複雜,實際上對並不會增加密文的強度

for($j = $i = 0; $i < 256; $i++)

// 核心加解密部分

for($a = $j = $i = 0; $i < $string_length; $i++)

if($operation == 'decode') else

} else

}

函式authcode($string, $operation, $key, $expiry)中的$string:字串,明文或密文;$operation:decode表示解密,其它表示加密;$key:密匙;$expiry:密文有效期。

用法:

$str = 'abcdef'; 

$key = 'www.zhix.net';

echo authcode($str,'encode',$key,0); //加密

$str = '56f4yer1di2wtzwmqsfpps9hwyojnfp2mpc8sohrrxo7bok';

echo authcode($str,'decode',$key,0); //解密

2、加解密函式encrypt():

function encrypt($string,$operation,$key='') 

for($j=$i=0;$i<256;$i++)

for($a=$j=$i=0;$i<$string_length;$i++)

if($operation=='d')else

}else

}

函式encrypt($string,$operation,$key)中$string:需要加密解密的字串;$operation:判斷是加密還是解密,e表示加密,d表示解密;$key:密匙。

用法:

$str = 'abc'; 

$key = 'www.zhix.net';

$token = encrypt($str, 'e', $key);

echo '加密:'.encrypt($str, 'e', $key);

echo '解密:'.encrypt($str, 'd', $key);

URL傳輸引數加密解密

最近做乙個論壇入口時要實現帳號和密碼不在ie位址列出現而做的 index.aspx.cs 加密處理 byte iv64 byte bykey64 public string encrypt string strtext catch exception ex private void btnlogin...

關於加密 解密 認證 證書 等概念

網路資料傳輸第一步的難點就是加密解密,openssl.為這一需求誕生。openssl初接觸的人恐怕最難的在於先理解各種概念 公鑰 私鑰 簽名 驗證簽名 加密 解密 非對稱加密 因為公鑰加密的資料只有它相對應的私鑰可以解開,所以你可以把公鑰給人和人,讓他加密他想要傳送給你的資料,這個資料只有到了有私鑰...

對Url傳輸引數進行加密和解密

最近做乙個論壇入口時要實現帳號和密碼不在ie位址列出現而做的 index.aspx.cs 加密處理 byte iv64 byte bykey64 public string encrypt string strtext catch exception ex private void btnlogin...