meezaan / aescryptor

一个使用AES算法加密/解密字符串的库

v1.4 2024-05-29 18:03 UTC

This package is auto-updated.

Last update: 2024-08-29 18:32:45 UTC


README

AES 256位密钥加密和解密字符串的基本PHP包。

此库需要PHP OpenSSL扩展。

此包基于 https://gist.github.com/turret-io/957e82d44fd6f4493533

安装

可以通过composer安装此包

composer install neezaan\aescryptor

用法

此包可以为您生成一个安全的密钥和初始化向量。您需要安全地存储密钥,但此包会自己将IV与加密字符串一起存储,因此您无需在其他地方存储它。这可能会降低安全性,但可以使实现更加简单。

<?php 
use Meezaan\Aescryptor\Generate;
use Meezaan\Aescryptor\Aes;

// Generate a 256-bit key. Store this somewhere in a secure vault. You don't need this step as you can generate your own key elsewhere too.
$key = Generate::key();

// Our secret
$secret = 'A_Secret';

// Instantiate the Aes class.
$aes = new Aes($key);

// Encrypt your string
$encrypted = $aes->encrypt($secret);

// Decrypt your string
$decrypted = $aes->decrypt($encrypted);

// Note that $decrypted === $secret

目的

此库主要为了实现应用程序和管道之间的互操作性。

Bash互操作性

此库生成的结果与Linux上的openssl cli不兼容。

要在PHP中获得相同的结果,请参阅 https://stackoverflow.com/questions/71198954/openssl-aes-256-cbc-encryption-from-command-prompt-and-decryption-in-php-and-vi

致谢

许可

MIT