当前位置: 首页 > 编程笔记 >

php实现cookie加密的方法

端木野
2023-03-14
本文向大家介绍php实现cookie加密的方法,包括了php实现cookie加密的方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了php实现cookie加密的方法。分享给大家供大家参考。具体实现方法如下:

<?php

class Cookie

{

    /**

     * 解密已经加密了的cookie

     * 

     * @param string $encryptedText

     * @return string

     */

    private static function _decrypt($encryptedText)

    {

        $key = Config::get('secret_key');

        $cryptText = base64_decode($encryptedText);

        $ivSize = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);

        $iv = mcrypt_create_iv($ivSize, MCRYPT_RAND);

        $decryptText = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $cryptText, MCRYPT_MODE_ECB, $iv);

        return trim($decryptText);

    }

    /**

     * 加密cookie

     *

     * @param string $plainText

     * @return string

     */

    private static function _encrypt($plainText)

    {

        $key = Config::get('secret_key');

        $ivSize = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);

        $iv = mcrypt_create_iv($ivSize, MCRYPT_RAND);

        $encryptText = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $plainText, MCRYPT_MODE_ECB, $iv);

        return trim(base64_encode($encryptText));

    }

    /**

     * 删除cookie

     * 

     * @param array $args

     * @return boolean

     */

    public static function del($args)

    {

        $name = $args['name'];

        $domain = isset($args['domain']) ? $args['domain'] : null;

        return isset($_COOKIE[$name]) ? setcookie($name, '', time() - 86400, '/', $domain) : true;

    }

    /**

     * 得到指定cookie的值

     * 

     * @param string $name

     */

    public static function get($name)

    {

        return isset($_COOKIE[$name]) ? self::_decrypt($_COOKIE[$name]) : null;

    }

    /**

     * 设置cookie

     *

     * @param array $args

     * @return boolean

     */

    public static function set($args)

    {

        $name = $args['name'];

        $value= self::_encrypt($args['value']);

        $expire = isset($args['expire']) ? $args['expire'] : null;

        $path = isset($args['path']) ? $args['path'] : '/';

        $domain = isset($args['domain']) ? $args['domain'] : null;

        $secure = isset($args['secure']) ? $args['secure'] : 0;

        return setcookie($name, $value, $expire, $path, $domain, $secure);

    }

}

希望本文所述对大家的php程序设计有所帮助。

 类似资料:
  • 本文向大家介绍php实现基于openssl的加密解密方法,包括了php实现基于openssl的加密解密方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php实现基于openssl的加密解密方法。分享给大家供大家参考,具体如下: 通过openssl加密解密方法 1. openssl加密方法: 2. openssl解密方法: PS:关于加密解密感兴趣的朋友还可以参考本站在线工具: 密码安全

  • 本文向大家介绍php结合md5实现的加密解密方法,包括了php结合md5实现的加密解密方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php结合md5实现的加密解密方法。分享给大家供大家参考,具体如下: 最近在整理代码发现了一个不错的东西,结合md5的加解密算法。网上关于php结合md5的加密,解密算法比较少的,其实php手册里面就有,改一改就行了。在此贴一下,用这算法要加载一个php

  • 本文向大家介绍PHP实现的加密解密处理类,包括了PHP实现的加密解密处理类的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP实现的加密解密处理类。分享给大家供大家参考,具体如下: 关于加密解密感兴趣的朋友还可以参考本站在线工具: 密码安全性在线检测 高强度密码生成器 MD5在线加密工具 迅雷、快车、旋风URL加密/解密工具 更多关于PHP相关内容可查看本站专题:《php加密方法总结》、

  • 本文向大家介绍PHP实现加强版加密解密类实例,包括了PHP实现加强版加密解密类实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP实现加强版加密解密类。分享给大家供大家参考。具体如下: 希望本文所述对大家的php程序设计有所帮助。

  • 本文向大家介绍PHP实现AES256加密算法实例,包括了PHP实现AES256加密算法实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP实现AES256加密算法的方法,是较为常见的一种加密算法。分享给大家供大家参考。具体如下: aes.class.php文件如下: aesctr.class.php文件如下: Demo实例程序如下: 这里再介绍另一使用 PHP mcrypt 加解密方

  • 本文向大家介绍PHP实现的简单对称加密与解密方法实例小结,包括了PHP实现的简单对称加密与解密方法实例小结的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP实现的简单对称加密与解密方法。分享给大家供大家参考,具体如下: 方法一:YII自带的加密方法 方法二: 方法三: 方法四: PS:关于加密解密感兴趣的朋友还可以参考本站在线工具: 文字在线加密解密工具(包含AES、DES、RC4等)