crazy/crypto
Composer 安装命令:
composer require crazy/crypto
包简介
Unified management of common encryption and decryption class
README 文档
README
简介
由于PHP开发过程中,经常需要对信息进行可逆加解密,本人将ThinkPHP 3.x中的加解密类进行了重新封装,统一处理。本版中支持6种算法:AES、Base64、Crypt、Des、Think和Xxtea。
安装
Git
地址:https://github.com/crazys1973/crypto.git
码云
地址:https://gitee.com/crazys1973/crypto.git
Composer
命令:composer require crazy/crypto
系统需求
PHP版本5.6以上
使用方法
加密
Crypto::{加密算法}()->encrypt(string $data, string $key[, int $expire = 0]);
返回:加密过后的字符串。
- {加密算法}:加密算法类的名称,目前支持 6 种,分别是:
AES、Base64、Crypt、Des、Think和Xxtea。算法名大小写不敏感,Base64与bAsE64效果相同。如果算法名写错,则默认使用Think算法。 - $data:需要加密的字符串。
- $key:加密key,参与加密运算的字符串。
- $expire:有效期,单位为秒
例:
// 使用Base64算法加密 $encryptString = Crypto::Base64()->encrypt('Hello world!', 'key123'); // 使用ThinkPHP算法加密 $encryptString = Crypto::Think()->encrypt('Hello world!', 'key123');
解密
Crypto::{加密算法}()->decrypt(string $data, string $key);
返回:解密成功时返回解密字符串。解密失败或加密串过期,返回空字符串''。如果算法名写错,则默认使用Think算法。
- {加密算法}:与加密时的算法名必须相同。
- $data:需要解密的字符串。
- $key:加密时使用的加密key。
例:
// 使用Think算法解密 $data = 'sXym2IR3c62yeqbagn6ZosOq29p_rZTZnNGqoX20c3A'; echo Crypto::Base64()->decrypt($data, 'key123'); // 输出:Hello World!
##版本更新
1.2.0
- 新增AES加密算法。
- 修改所有数组为短语法。
1.1.1
- 修复加密算法法不存在时报错,更改默认为Think加密方法,例:
Crypto::abc();将会使用Think加解密算法。 - 添加类注释,方便IDE工具提示。
1.1.0
- 新增Crypto类,集中统一管理加密类
- 新增Cryptoable接口
- 去除加密类的静态方法
- 类使用单例模式
1.0.0
- 集成5种加密算法:Base64, Crypt, Des, Think, Xxtea。
- 修改源码中变量未初始化的bug。
- 更新代码注释。
crazy/crypto 适用场景与选型建议
crazy/crypto 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 31 次下载、GitHub Stars 达 1, 最近一次更新时间为 2019 年 03 月 21 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 crazy/crypto 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 crazy/crypto 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 31
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-03-21