国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PHP AES cbc模式 pkcs7 128加密解密

Jaden / 2368人閱讀

摘要:今天在對接一個(gè)第三方接口的時(shí)候,對方需要模式下的加密。這里簡單寫一個(gè)獲取庫存,更新價(jià)格信息加密結(jié)果解密結(jié)果加密數(shù)據(jù)解密數(shù)據(jù)執(zhí)行方法加密結(jié)果解密結(jié)果

今天在對接一個(gè)第三方接口的時(shí)候,對方需要AES CBC模式下的加密。這里簡單寫一個(gè)demo
class Model_Junjingbao extends Model
{
   
    private static $_partnerKey  = "6d70a09e4d0f8095";
    //獲取庫存,更新價(jià)格信息
    public static function test($productId=2780)
    {
       
        $data = array(
            "productId"=>$productId,
            "startTime"=>"2018-04-09",
            "endTime"=>"2018-04-10"
        );
   
         $str = json_encode($data);
        $xcrypt =  self::aes_cbc_pkpadding($str);
        
        var_dump($xcrypt);//加密結(jié)果
        var_dump(self::aes_cbc_pkpadding_back($xcrypt));//解密結(jié)果
    }


    //AES加密數(shù)據(jù)
    private static function aes_cbc_pkpadding($str)
    {
       
        $block= mcrypt_get_block_size(MCRYPT_RIJNDAEL_128,MCRYPT_MODE_CBC);
        $pad=$block-(strlen($str)%$block);
        if($pad<=$block) {
            $char=chr($pad);
            $str.=str_repeat($char,$pad);
        }
        $xcrypt = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, self::$_partnerKey, $str, MCRYPT_MODE_CBC);
      
       
        return $xcrypt;
    }

    //AES解密數(shù)據(jù)
    private static function aes_cbc_pkpadding_back($xcrypt)
    {

        $string = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, self::$_partnerKey, $xcrypt, MCRYPT_MODE_CBC);
        $slast = ord(substr($string, -1));
        $slastc = chr($slast);
        if (preg_match("/$slastc{" . $slast . "}/", $string)) {
            $string = substr($string, 0, strlen($string) - $slast);
            return $string;
        } else {
            return false;
        }
    }

}
執(zhí)行test方法

加密結(jié)果

??×?“j·A" Oè[ótcú?2Y‰XXò|??ép?p[DaFw`?oàá1d&x4(??l?2¤£‰?±ü‘I?"? Y?sód°Y·^$’4h?è??÷G?)

解密結(jié)果

{"productId":2780,"startTime":"2018-04-09","endTime":"2018-04-10"}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/29400.html

相關(guān)文章

  • PHP 遷移 Mcrypt 至 OpenSSL 加密算法詳解

    摘要:下文中我們將分別使用和來實(shí)現(xiàn)加解密,二者同步加解密的要點(diǎn)為使用何種填充算法。下面我們給出填充算法的實(shí)現(xiàn)填充算法移去填充算法默認(rèn)使用自動(dòng)對待加密數(shù)據(jù)進(jìn)行填充以對齊加密算法數(shù)據(jù)塊長度。需固定使用,并通過調(diào)整的長度,來實(shí)現(xiàn)加密算法。 對稱加解密算法中,當(dāng)前最為安全的是 AES 加密算法(以前應(yīng)該是是 DES 加密算法),PHP 提供了兩個(gè)可以用于 AES 加密算法的函數(shù)簇:Mcrypt 和 ...

    AlanKeene 評(píng)論0 收藏0
  • 循序漸進(jìn)學(xué)加密

    摘要:在古典加密算法當(dāng)中,加密算法和密鑰都是不能公開的,一旦泄露就有被破解的風(fēng)險(xiǎn),我們可以用詞頻推算等方法獲知明文。年美國公司研制的算法是人類歷史上第一個(gè)公開加密算法但不公開密鑰的加密方法,后來成為美國軍方和政府機(jī)構(gòu)的標(biāo)準(zhǔn)加密算法。 還記得上初二的那年夏天,班里來了一個(gè)新同學(xué),他就住在我家對面的樓里,于是我們一起上學(xué)放學(xué),很快便成了最要好的朋友。我們決定發(fā)明一套神秘的溝通方式,任何人看到都不...

    Y3G 評(píng)論0 收藏0
  • 循序漸進(jìn)學(xué)加密

    摘要:在古典加密算法當(dāng)中,加密算法和密鑰都是不能公開的,一旦泄露就有被破解的風(fēng)險(xiǎn),我們可以用詞頻推算等方法獲知明文。年美國公司研制的算法是人類歷史上第一個(gè)公開加密算法但不公開密鑰的加密方法,后來成為美國軍方和政府機(jī)構(gòu)的標(biāo)準(zhǔn)加密算法。 還記得上初二的那年夏天,班里來了一個(gè)新同學(xué),他就住在我家對面的樓里,于是我們一起上學(xué)放學(xué),很快便成了最要好的朋友。我們決定發(fā)明一套神秘的溝通方式,任何人看到都不...

    fsmStudy 評(píng)論0 收藏0
  • 密碼學(xué)之DES/AES算法

    摘要:填充算法與基本上是可以通用的。年,高級(jí)加密標(biāo)準(zhǔn)已然成為對稱密鑰加密中最流行的算法之一。常用庫介紹是一個(gè)功能強(qiáng)大的加密算法擴(kuò)展庫。為提供了各種各樣的加密算法。目前已支持的算法包括是使用編寫的加密工具包。 本文示例代碼詳見:https://github.com/52fhy/cryp... DES DES全稱為Data Encryption Standard,即數(shù)據(jù)加密標(biāo)準(zhǔn),是一種使用密鑰加...

    Shonim 評(píng)論0 收藏0
  • 使用crypto-js進(jìn)行128AES/ECB/PKCS7Padding加密/解密

    摘要:支持多種加解密方案這里主要記錄一下使用進(jìn)行位的加解密前端加密是不安全的不安全的不安全的初始化一個(gè)文件直接全部回車就行啦安裝在同級(jí)目錄下新建一個(gè)文件寫入以下內(nèi)容導(dǎo)入包定義加解密的都放這里了加密還有啥意義設(shè)置數(shù)據(jù)塊長度生成密鑰字節(jié)數(shù) crypto-js支持多種加/解密方案, 這里主要記錄一下使用 crypto-js 進(jìn)行 AES 128位 的加/解密; 前端加密是不安全的, 不安全的, 不...

    jas0n 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<