承接 soliphp/aes 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

soliphp/aes

Composer 安装命令:

composer require soliphp/aes

包简介

OpenSSL-compatible AES (128, 192, or 256) CBC library for PHP, based on openssl.

README 文档

README

基于 OpenSSL 扩展的 AES 加解密库。

  • 支持 AES-256-CBC, AES-192-CBC, AES-128-CBC
  • 兼容 LibreSSL 2.2+ 命令行
  • 兼容 OpenSSL 1.0+ 命令行
  • 查看 OpenSSL 版本 openssl version

Build Status Coverage Status License

安装

使用 composer 进行安装:

composer require soliphp/aes

使用

include __DIR__ . '/vendor/autoload.php';

$aes = new \Soli\Aes();

$data = 'hello world.';
$secret = 'your_secret';

$encrypted = $aes->encrypt($data, $secret);

$decrypted = $aes->decrypt($encrypted, $secret);

var_dump($decrypted);

加密数据

$aes = new \Soli\Aes();

$encrypted = $aes->encrypt('hello world.', 'your_secret');

解密数据

$aes = new \Soli\Aes();

$decrypted = $aes->decrypt('U2FsdGVkX1/mgtCqMAn6S9AKVrqjPn8NoJkysV5JPII=', 'your_secret');

256/192/128

默认使用 AES-256-CBC

$aes = new \Soli\Aes();
// 等同于
$aes = new \Soli\Aes(256);

使用 AES-192-CBC

$aes = new \Soli\Aes(192);

使用 AES-128-CBC

$aes = new \Soli\Aes(128);

使用 OpenSSL 命令行加解密

加密数据:

$ echo -n 'hello world.' | openssl aes-256-cbc -md md5 -base64 -pass pass:your_secret
U2FsdGVkX1/mgtCqMAn6S9AKVrqjPn8NoJkysV5JPII=

解密数据:

$ echo 'U2FsdGVkX1/mgtCqMAn6S9AKVrqjPn8NoJkysV5JPII=' | openssl aes-256-cbc -md md5 -d -base64 -pass pass:your_secret

注:如果命令行下加密的数据含有特殊字符,导致无法加密,使用单引号包裹,如:

$ echo -n 'hello ~!@%^&*()\{}[]/?' | openssl aes-256-cbc -md md5 -base64 -pass pass:'~!@%^&*()\{}[]/?'

md5/sha256 信息摘要算法

摘自 OpenSSL sha256 HISTORY

The default digest was changed from MD5 to SHA256 in OpenSSL 1.1.0 The FIPS-related options were removed in OpenSSL 1.1.0
在 OpenSSL 1.1.0 版本中,默认信息摘要算法从 MD5 更改为 SHA256

所以在使用 OpenSSL 命令行加解密数据时务必显示指定 -md md5 参数, 以便在 OpenSSL 1.0 和 1.1 版本下执行命令时都可成功加解密。

当前项目目前只支持 md5 方式。

参考

https://github.com/chmduquesne/minibackup/blob/master/samples/OpensslAES.java

测试

$ cd /path/to/soliphp/aes/
$ composer install
$ phpunit

MIT License

MIT Public License

统计信息

  • 总下载量: 987
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 3
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 3
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-10-23

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固