用于生成和解析数据的PHP库

1.9.7 2023-02-02 19:08 UTC

This package is auto-updated.

Last update: 2024-09-30 01:54:20 UTC


README

Generator is a library for generating and parsing Data with Private and Public Key
生成器

generator 是一个用于生成和解析数据的库。

要求

  • PHP >= 5.4
  • OpenSSL

生成密钥对

确保您的机器上已配置OpenSSL。

  1. 通过运行以下命令生成私有密钥文件

    openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
  2. 运行以下命令以生成公钥

    openssl rsa -pubout -in private_key.pem -out public_key.pem

安装

composer require ingress-it-solutions/generator

用法

在运行以下代码之前,请确保您有 public_keyprivate_key 文件。

生成

使用以下代码来生成许可证密钥

<?php

use IngressITSolutions\Generator\Generator;

$data = [
  "firstName" => "John",
  "lastName"  => "Doe",
  "email"     => "john_doe@email.com",
];

$privateKey = file_get_contents('path/to/private_key.pem');
$license    = Generator::generate($data, $privateKey);

var_dump($license);

上述代码将输出以下结果

agW4Riht6xHEfbpDaZUcTCmZVHgGgCnzXc0+nqLAMjuS6ouuGQVv/JqjAuo89tUgTu3F7Q+WProPcNm1aXdavxj3xOxTJ3e2w0NSS09sBZONxG9MzzofqvYPCnu/I1WMLgaRXiiNJcz5WtqFLFSdTgehqU5VLO+eDhfWUeZ0EJlCtCLPu19hP56/+24+/tmnh4ySLc9tV+YGLYtpmt7Gyf+h3sbMO0SJMwe+XSuuTcUsIUDg3AQUlj7c4ctwhkdYkRyyjj27U09CgpWWgU5b3sXSqZ3DFdTNaP8sIVH3Y39b7/o+Gx7WIHzngCnczK58L81LTVwnkyzSBqKUT5oq4A==

解析

使用以下代码来解析许可证密钥

<?php

use IngressITSolutions\Generator\Generator;

$license = 'agW4Riht6xHEfbpDaZUcTCmZVHgGgCnzXc0+nqLAMjuS6ouuGQVv/JqjAuo89tUgTu3F7Q+WProPcNm1aXdavxj3xOxTJ3e2w0NSS09sBZONxG9MzzofqvYPCnu/I1WMLgaRXiiNJcz5WtqFLFSdTgehqU5VLO+eDhfWUeZ0EJlCtCLPu19hP56/+24+/tmnh4ySLc9tV+YGLYtpmt7Gyf+h3sbMO0SJMwe+XSuuTcUsIUDg3AQUlj7c4ctwhkdYkRyyjj27U09CgpWWgU5b3sXSqZ3DFdTNaP8sIVH3Y39b7/o+Gx7WIHzngCnczK58L81LTVwnkyzSBqKUT5oq4A==';

$publicKey     = file_get_contents('path/to/public_key.pem');
$parsedLicense = Generator::parse($license, $publicKey);

var_dump($parsedLicense);

上述代码将输出以下结果

{
    "firstName": "John",
    "lastName": "Doe",
    "email": "john_doe@email.com"
}

贡献

请随意提交拉取请求、创建问题或传播信息。

许可证

MIT © Ingress IT Solutions