kitlabs / kit-crypt-bundle
Symfony Crypt Bundle
Installs: 2 550
Dependents: 1
Suggesters: 0
Security: 0
Stars: 5
Watchers: 3
Forks: 0
Open Issues: 0
Type:symfony-bundle
Requires
- php: >=7.3
- ext-openssl: *
README
Symfony Crypt Bundle(use openssl)
Installation
Step 1: Download the Bundle
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:
$ composer require kitlabs/kit-crypt-bundle
This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation.
Step 2: Enable the Bundle
Then, enable the bundle by adding it to the list of registered bundles
in the app/AppKernel.php
file of your project:
<?php // app/AppKernel.php // ... class AppKernel extends Kernel { public function registerBundles() { $bundles = array( // ... new Kit\CryptBundle\KitCryptBundle(), ); // ... } // ... }
Setp 3: config
# 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
- method list openssl cipher methods
- secret_iv iv encrypt method AES-256-CBC expects 16 bytes - else you will get a warning
Usage
/** * * @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)