摘要:加密類填充關(guān)鍵字計算填充的關(guān)鍵字,并保存他們進行異或運算進行異或運算散列函數(shù)測試類用鍵值構(gòu)造字符串類把散列放在一個多帶帶的變量里面并且在數(shù)組中注銷掉該變量用鍵值對構(gòu)造字符串運行結(jié)果
1.hmvc.php 加密類
_func = $method; //填充關(guān)鍵字 if(strlen($key) > 64) { $key = pack("H32",$method($key)); } if(strlen($key) < 64) { $key = str_pad($key, 64, chr(0)); } //計算填充的關(guān)鍵字,并保存他們 $this->_ipad = substr($key, 0, 64)^str_repeat(chr(0x36), 64);//進行異或運算; $this->_opad = substr($key, 0, 64)^str_repeat(chr(0x5c), 64);//進行異或運算; } /** * 散列函數(shù) */ function hash($data) { $func = $this->_func; $inner = pack("H32",$func($this->_ipad.$data)); $digest = $func($this->_opad.$inner); return $digest; } }
2.測試類 test.php
$val) { $data .=$key . $val; $ret [] = "$key=$val"; } $h = new Crypt_HMVC(SCRIPT_KEY,"md5"); $hash = $h->hash($data); $ret [] ="hash=$hash"; return join("&",$ret); } echo ""vars")) ."">err!";
3.script.php類
$val) { $data .= $key . $val; $ret [] = "$key=$val"; } $h = new Crypt_HMVC(SCRIPT_KEY,"md5"); if($hash != $h->hash($data)) { return false; } else { return true; } } $arr = $_GET; if(!create_parameters($arr)) { die("dweep someone tempered with our parameters"); } else { echo "good you are success"; } 運行test.php
結(jié)果
good you are success
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/23197.html
摘要:加密算法以字符十六進制數(shù)字形式返回散列值。加密算法是加密是的干擾碼,使編碼更安全可選的鹽值字符串。返回的數(shù)據(jù)可能是二進制的 數(shù)據(jù)加密可以簡單的理解為:明文(文件或者數(shù)據(jù))-->算法處理-->不可讀的密文,進而達到加密的效果。 php中的幾種加密方式 md5加密算法 crypt算法 sha1加密算法 URL編碼技術(shù)編碼 base64編碼 其中 md5、crypt、sha1 都是單向加...
摘要:時間年月日星期一說明本文部分內(nèi)容均來自慕課網(wǎng)。多用于網(wǎng)絡(luò)加密。散列函數(shù)函數(shù)或消息摘要函數(shù)主要作用散列函數(shù)用來驗證數(shù)據(jù)的完整性。 時間:2017年4月10日星期一說明:本文部分內(nèi)容均來自慕課網(wǎng)。@慕課網(wǎng):http://www.imooc.com教學(xué)示例源碼:https://github.com/zccodere/s...個人學(xué)習(xí)源碼:https://github.com/zccodere...
摘要:利用消息認證碼可以確保消息不是被別人偽造的,消息認證碼是帶密鑰的函數(shù),由于有了一個,所以會比有更好的安全性。所以需要采用的就是算法,該算法主要利用的是不對稱加密算法,利用私鑰進行簽名,公鑰驗證數(shù)據(jù)的完整性。 寫在前面 本文會到你了解jwt的實現(xiàn)原理,以及base64編碼的原理。同時本人也簡單的實現(xiàn)了一下jwt的生成,點這里。 jwt是什么 本質(zhì)上它是一段簽名的 JSON 格式的數(shù)據(jù)。由...
閱讀 3403·2021-09-22 15:17
閱讀 2754·2021-09-02 15:15
閱讀 1785·2019-08-30 15:54
閱讀 2013·2019-08-30 14:02
閱讀 2542·2019-08-29 16:58
閱讀 3000·2019-08-29 16:08
閱讀 1343·2019-08-26 12:24
閱讀 1668·2019-08-26 10:41