请问PHP如何通过openssl实现AES-128加密算法?

 个信2602881723 发布于 2022-11-21 23:52

下面这段脚本是来自七牛提供的

$ echo -n [AES128KEY] | openssl rsautl -encrypt -oaep -inkey [QINIU_PUB_KEY_FILE] -pubin | openssl base64 -A | tr "+/" "-_"

我知道PHP有提供openssl模块,但是我对这个模块不了解,请问有没有了解的朋友,将上面这段代码改写成PHP的。非常感谢。

1 个回答
  • class AES_128_CW {
        private $_iv = '';
        private $_secret = '';
    
        public function __construct($iv,$secret){
            $this->_iv = substr($iv.'0000000000000000', 0,16);//可以忽略这一步,只要你保证iv长度是16
            $this->_secret = hash('md5',$secret,true);
        }
    
        public function decode($secretData){
            return openssl_decrypt(urldecode($secretData),'aes-128-cbc',$this->_secret,false,$this->_iv);
        }
    
        public function encode($data){
            return urlencode(openssl_encrypt($data,'aes-128-cbc',$this->_secret,false,$this->_iv));
        }
    

    }

    2022-11-22 03:21 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有