lorddashme/php-cryptor

PHP 加密函数的包装包。

2.0.4 2018-12-17 08:09 UTC

This package is auto-updated.

Last update: 2024-09-30 01:17:40 UTC


README

PHP 加密函数的包装包。

Latest Stable Version Minimum PHP Version Coverage Status

需求

  • PHP 版本从 5.6.* 到最新版本。

安装

  • 建议使用 Composer 安装此包。使用以下命令安装包:
composer require lorddashme/php-cryptor

用法

包装类扩展列表

OpenSSL 类

  • 用于加密明文。
<?php

include __DIR__  . '/vendor/autoload.php';

use LordDashMe\Cryptor\OpenSSL\OpenSSL;

// Initialize the OpenSSL class.
$openssl = new OpenSSL();

// Provide the cipher method that will be using.
$openssl->cipherMethod(
  OpenSSL::CIPHER_METHOD_AES256
);

// Provide the key that will be using to encrypt the given content.
$openssl->key('password');

// The plain text that will be process to encrypt.
$openssl->content('this is the plain text');

// Execute the encryption process.
$openssl->encrypt();

// Output the processed content.
$openssl->get(); // echo "YToyOntzOjc6ImNvbnRlbnQiO3M6MzI6..."
  • 用于解密加密内容。
<?php

include __DIR__  . '/vendor/autoload.php';

use LordDashMe\Cryptor\OpenSSL\OpenSSL;

// Initialize the OpenSSL class.
$openssl = new OpenSSL();

// Provide the cipher method that will be using.
$openssl->cipherMethod(
  OpenSSL::CIPHER_METHOD_AES256
);

// Provide the key that will be using to encrypt the given content.
$openssl->key('password');

// The encrypted content that will be process to decrypt.
$openssl->content('YToyOntzOjc6ImNvbnRlbnQiO3M6MzI6...');

// Execute the decryption process.
$openssl->decrypt();

// Output the processed content.
$openssl->get(); // echo "this is the plain text"

密码哈希类

  • 用于哈希内容。
<?php

include __DIR__  . '/vendor/autoload.php';

use LordDashMe\Cryptor\PasswordHashing\PasswordHashing;

// Initialize the Password Hashing class.
$hashing = new PasswordHashing();

// Provide the algorithm to be use for hashing.
$hashing->algorithm(
  PasswordHashing::ALGO_PASSWORD_DEFAULT
);

// Execute the hashing process.
$hashing->hash('Need to be hash');

// Output the processed content.
$hashing->get(); // echo "$2y$10$cwzwDA.wXJitJMPQt9ogDe5rf46dASXh8r5DPIyH1Up3HhhROcFti"
  • 用于重新哈希内容。
<?php

include __DIR__  . '/vendor/autoload.php';

use LordDashMe\Cryptor\PasswordHashing\PasswordHashing;

// Initialize the Password Hashing class.
$hashing = new PasswordHashing();

// Provide the algorithm to be use for hashing.
$hashing->algorithm(
  PasswordHashing::ALGO_PASSWORD_DEFAULT
);

// Execute the re-hashing process.
$hashing->rehash('Need to be hash', '$2y$10$cwzwDA.wXJitJMPQt9ogDe5rf46dASXh8r5DPIyH1Up3HhhROcFti');

// Output the processed content.
$hashing->get(); // echo "$2y$10$cwzwDA.wXJitJMPQt9ogDe5rf..."
  • 用于获取哈希内容的详细信息。
<?php

include __DIR__  . '/vendor/autoload.php';

use LordDashMe\Cryptor\PasswordHashing\PasswordHashing;

// Initialize the Password Hashing class.
$hashing = new PasswordHashing();

// Execute the get info function.
$hashing->getInfo('$2y$10$cwzwDA.wXJitJMPQt9ogDe5rf46dASXh8r5DPIyH1Up3HhhROcFti'); // return array(...)
  • 用于验证哈希内容。
<?php

include __DIR__  . '/vendor/autoload.php';

use LordDashMe\Cryptor\PasswordHashing\PasswordHashing;

// Initialize the Password Hashing class.
$hashing = new PasswordHashing();

// Execute the verify function.
$hashing->verify('Need to be hash', '$2y$10$cwzwDA.wXJitJMPQt9ogDe5rf46dASXh8r5DPIyH1Up3HhhROcFti'); // return boolean

许可证

此包是开源软件,根据 MIT 许可证 发布。