PHP7.1实现的AES与RSA加密操作示例
发布:smiling 来源: PHP粉丝网 添加日期:2021-10-01 16:40:53 浏览: 评论:0
这篇文章主要介绍了PHP7.1实现的AES与RSA加密操作,结合实例形式分析了php7.1环境下AES与RSA加密、解密操作相关实现与使用技巧,需要的朋友可以参考下。
本文实例讲述了PHP7.1实现的AES与RSA加密操作,分享给大家供大家参考,具体如下:
AES:
- <?php
- header('Content-Type: text/plain;charset=utf-8');
- $data = 'phpbest';
- $key = 'oScGU3fj8m/tDCyvsbEhwI91M1FcwvQqWuFpPoDHlFk='; //echo base64_encode(openssl_random_pseudo_bytes(32));
- $iv = 'w2wJCnctEG09danPPI7SxQ=='; //echo base64_encode(openssl_random_pseudo_bytes(16));
- echo '内容: '.$data."\n";
- $encrypted = openssl_encrypt($data, 'aes-256-cbc', base64_decode($key), OPENSSL_RAW_DATA, base64_decode($iv));
- echo '加密: '.base64_encode($encrypted)."\n";
- $encrypted = base64_decode('To3QFfvGJNm84KbKG1PLzA==');
- $decrypted = openssl_decrypt($encrypted, 'aes-256-cbc', base64_decode($key), OPENSSL_RAW_DATA, base64_decode($iv));
- echo '解密: '.$decrypted."\n";
- ?>
用openssl生成rsa密钥对(私钥/公钥):
openssl genrsa -out rsa_private_key.pem 2048
openssl rsa -pubout -in rsa_private_key.pem -out rsa_public_key.pem
RSA:
- <?php
- header('Content-Type: text/plain;charset=utf-8');
- $data = 'phpbest';
- echo '原始内容: '.$data."\n";
- openssl_public_encrypt($data, $encrypted, file_get_contents(dirname(__FILE__).'/rsa_public_key.pem'));
- echo '公钥加密: '.base64_encode($encrypted)."\n";
- $encrypted = base64_decode('nMD7Yrx37U5AZRpXukingESUNYiSUHWThekrmRA0oD0=');
- openssl_private_decrypt($encrypted, $decrypted, file_get_contents(dirname(__FILE__).'/rsa_private_key.pem'));
- echo '私钥解密: '.$decrypted."\n";
- ?>
Tags: PHP7 1 AES RSA
相关文章
- ·golang调用php7详解及实例教程(2018-10-31)
- ·PHP7.0新增功能详解(实例)(2020-02-05)
- ·PHP7实现daemon守护进程详解(2020-04-05)
- ·变量在 PHP7 内部的实现(一)(2021-06-30)
- ·变量在 PHP7 内部的实现(二)(2021-06-30)
- ·PHP7之Mongodb API使用详解(2021-07-02)
- ·PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案(2021-08-12)
- ·PHP7下协程的实现方法详解(2021-08-23)
- ·基于PHP7错误处理与异常处理方法(详解)(2021-08-27)
- ·PHP7扩展开发之hello word实现方法详解(2021-08-30)
- ·PHP7扩展开发之基于函数方式使用lib库的方法详解(2021-08-30)
- ·PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】(2021-09-12)
- ·升级 PHP7.1 后 openssl 解密 mcrypt AES 数据不兼容问题的处理方法(2021-10-05)
- ·深入理解 PHP7 中全新的 zval 容器和引用计数机制(2021-10-31)
- ·什么是PHP7中的孤儿进程与僵尸进程(2021-11-17)
- ·浅析PHP7的多进程及实例源码(2021-11-17)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)