shaozeming/laravel-crypt

这是一个用于签名/验签、加密解密的laravel/lumen包

v0.0.4 2020-03-18 16:01 UTC

This package is auto-updated.

Last update: 2024-09-19 01:30:27 UTC


README

安装

$ composer require shaozeming/laravel-crypt -v

Laravel

// config/app.php

    'providers' => [
        //...
        ShaoZeMing\LaravelCrypt\CryptServiceProvider::class,    //This is default in laravel 5.5
    ],

并发布配置文件

$ php artisan vendor:publish --provider=ShaoZeMing\\LaravelCrypt\\CryptServiceProvider

如果您想使用门面模式,您可以注册一个您想要使用的门面名称,例如 crypt

// config/app.php

    'aliases' => [
        'MingCrypt' => ShaoZeMing\LaravelCrypt\Facade\Crypt::class,   //This is default in laravel 5.5
    ],

Lumen

  • 在 bootstrap/app.php 中大约 82 行:
$app->register( ShaoZeMing\LaravelCrypt\CryptServiceProvider::class);

vendor/ShaoZeMing/laravel-crypt/config/crypt.php 拷贝到项目根目录 /config 目录下,并将文件名改为 crypt.php

配置

// config/crypt.php

    
    /**
     * 本项目的app_secret
     */
    'app_secret' =>env('XTHK_APP_SECRET','12345678912345678912345678912312'),

    /**
     * 加密规则,支持AES-128-CBCAES-256-CBC
     */
    'cipher' => env('XTHK_CIPHER','AES-256-CBC'),

用法


示例

use ShaoZeMing\LaravelCrypt\Facade\Crypt;

$data = ['test'=>123];
$sign = Crypt::sign($data);   //签名
print_r($sign);
$check = Crypt::signCheck($data,$sign);   //验签
print_r($check);

$payload =  Crypt::encrypt($data);  //加密
print_r($payload);
$data = Crypt::decrypt($payload);   //解密
print_r($data);

许可证

MIT