akimimi/encrypt

Akimimi Team 的加密和解密工具。

1.0.2 2023-08-28 08:08 UTC

This package is auto-updated.

Last update: 2024-09-28 10:34:48 UTC


README

Build Status

描述

此库提供加密和解密算法工具。

AesEcbEncrypt 类提供 128/192/256 位 AES ECB 加密和解密算法,默认使用零填充。

AesCbcEncrypt 类提供 128/192/256 位 AES CBC 加密和解密算法,默认使用零填充。

Sm4CbcEncrypt 类提供 128 位 SM4 CBC 加密和解密算法,默认使用 PKCS5 填充数据,密码使用零填充。

安装

此库支持使用 composer CLI 添加 require。

composer require akimimi/encrypt

否则,请在您的 composer.json 中添加 require。

{
  "require": {
     "akimimi/encrypt": ">=1.0.0"
  }
}

使用 Composer 安装 require

composer install

使用方法

通过 composer 安装后,您可以声明使用类。

<?php
use Akimimi\Encrypt\AesEcbEncrypt;

$password = "123456";
$data = "akimimi";

$encryptUtil = new AesEcbEncrypt(16); // 128 bit
$encryptUtil->setPassword($password);
$encryptedStr = $encryptUtil->encrypt($data); // 0x2582ec23698d74912c044ef3e29ac86b

数据可以在加密阶段使用为加密工具设置的编码器进行编码和解码。

<?php
use Akimimi\Encrypt\AesEcbEncrypt;
use Akimimi\Encrypt\Base64Encoder;

$password = "123456";
$data = "akimimi";

$encryptUtil = new AesEcbEncrypt(16); // 128 bit
$encryptUtil->setBytesEncoder(new Base64Encoder());
$encryptUtil->setPassword($password);
$encryptedStr = $encryptUtil->encrypt($data); // JYLsI2mNdJEsBE7z4prIaw==
$decryptedStr = $encryptUtil->decrypt($encryptedStr); // akimimi

卸载

使用 composer CLI 可以删除库。

composer remove akimimi/encrypt