burakdalyanda/cipher-weave 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

burakdalyanda/cipher-weave

最新稳定版本:v2.0.1

Composer 安装命令:

composer require burakdalyanda/cipher-weave

包简介

A seamless security layer for Laravel applications that automatically decrypts incoming requests and encrypts outgoing responses to ensure data integrity and confidentiality.

README 文档

README

CipherWeave is a Laravel middleware package designed to encrypt outgoing responses and decrypt incoming requests, ensuring your data remains secure throughout its journey.

Features

  • Seamless Integration: Easily integrate CipherWeave into your Laravel project.
  • Modern PHP & Laravel: Built for PHP 8.2+ and Laravel 10, 11, and 12.
  • Encryption & Decryption: Automatically encrypt responses and decrypt requests.
  • Configurable Security: Customize encryption settings to fit your security needs.
  • Artisan Command: Easily generate and set your encryption key.
  • Facade Support: Simple access to encryption methods via CipherWeave Facade.

Requirements

  • PHP 8.2 or higher
  • Laravel 10.x, 11.x or 12.x

Installation

To install CipherWeave, use Composer:

composer require burakdalyanda/cipher-weave

Configuration

Publish the configuration file to customize encryption settings:

php artisan vendor:publish --tag=cipherweave-config

This will create a config/cipher.php file.

Generate Encryption Key

You must generate an encryption key for the package to work:

php artisan cipherweave:key

This command will generate a key and set it in your .env file as CIPHER_KEY.

Usage

Register Middleware

Laravel 11 & 12

Add the middleware in bootstrap/app.php:

->withMiddleware(function (Middleware $middleware) {
    $middleware->alias([
        'encrypt.request.response' => \BurakDalyanda\CipherWeave\Middleware\EncryptRequestResponse::class,
    ]);
})

Laravel 10

Add the middleware to your app/Http/Kernel.php file:

protected $routeMiddleware = [
    // Other middleware
    'encrypt.request.response' => \BurakDalyanda\CipherWeave\Middleware\EncryptRequestResponse::class,
];

Protect Routes

Apply the middleware to your routes in routes/web.php or routes/api.php:

Route::middleware(['encrypt.request.response'])->group(function () {
    Route::get('/secure-endpoint', [SecureController::class, 'index']);
});

Using a Custom Encryption Key for Specific Routes

You can override the default encryption key for specific routes:

Route::middleware(['encrypt.request.response:your-custom-base64-key'])->group(function () {
    Route::get('/secure-endpoint', [SecureController::class, 'index']);
});

Facade Usage

You can use the CipherWeave facade for manual encryption and decryption:

use BurakDalyanda\CipherWeave\Facades\CipherWeave;

$encrypted = CipherWeave::encrypt('secret message');
$decrypted = CipherWeave::decrypt($encrypted);

Manual Usage (DI)

You can also inject CipherWeaveInterface:

use BurakDalyanda\CipherWeave\Contracts\CipherWeaveInterface;

public function __construct(private CipherWeaveInterface $cipher) {}

public function someMethod() {
    $encrypted = $this->cipher->encrypt(['data' => 'to encrypt']);
}

Contributing

Contributions are welcome! Please see the CONTRIBUTING.md file for more details.

License

The MIT License (MIT). Please see the License File for more information.

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-08-25

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固