kitlabs/kit-crypt-bundle

Symfony 密码学扩展包

安装量: 2,539

依赖关系: 1

建议者: 0

安全性: 0

星标: 5

关注者: 3

分支: 0

公开问题: 0

类型:symfony-bundle

v5.3.0 2023-08-11 09:16 UTC

This package is auto-updated.

Last update: 2024-09-11 11:53:24 UTC


README

Symfony 密码学扩展包(使用 openssl)

安装

步骤 1: 下载扩展包

打开命令行,进入项目目录,执行以下命令以下载此扩展包的最新稳定版本

$ composer require kitlabs/kit-crypt-bundle

此命令需要您全局安装了 Composer,具体请参考 Composer 文档的 安装章节

步骤 2: 启用扩展包

然后,将扩展包添加到项目 app/AppKernel.php 文件中注册的扩展包列表中,以启用它

<?php
// app/AppKernel.php
 
// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...
 
            new Kit\CryptBundle\KitCryptBundle(),
        );
 
        // ...
    }
 
    // ...
}

步骤 3: 配置

# app/config/config.yml
kit_crypt:
    clients:
        default:
            method: 'aes-256-cbc'
            secret_key: 'Kit@Crypt!Bundle'
            secret_iv: '12345!@#$%^67890' #16 bit
            option: 0 # 0默认值;OPENSSL_RAW_DATA = 1,采用PKCS7填充;OPENSSL_ZERO_PADDING = 2,采用0填充; OPENSSL_NO_PADDING = 3,不填充
        data_api:# client name,可以是多个
            method: 'des-cbc'
            secret_key: 'Kit@Crypt!Bundle'
            secret_iv: 'q1w2e3r4'
            option: 1

PS:params

  • 方法 列表 openssl 加密方法
  • secret_iv iv 加密方法 AES-256-CBC 预期 16 字节 - 否则将收到警告

用法

/**
 * 
 * @var \Kit\CryptBundle\Service\OpensslService $opensslService
 */
$opensslService = $this->get('kit_crypt.openssl');
$encrypt = $opensslService->encrypt('lcp0578', 'data_api'); //public function encrypt($string, $name = 'default', $iv = null)
dump($encrypt);
dump($opensslService->decrypt($encrypt, 'data_api')); //public function decrypt($string, $name = 'default', $iv = null)
function cryptoJsAesDecrypt($passphrase, $ct, $iv, $s)
function cryptoJsAesEncrypt($passphrase, $value)