GitHub - ziishaned/php-license: PHP library for generating and parsing license
source link: https://github.com/ziishaned/php-license
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
PHP License
php-license
is a library for generating and parsing license.
Requirements
- PHP >= 5.4
- OpenSSL
Generating Key Pair
Make sure OpenSSL is configured on your machine.
-
Generate the Private key file by running the following command:
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
-
Run the following command to generate public key:
openssl rsa -pubout -in private_key.pem -out public_key.pem
Installation
composer require ziishaned/php-license
Usage
Before running the following code make sure you have the public_key
and private_key
files.
Generating
Use the following code to generate the license key:
<?php use Ziishaned\PhpLicense\PhpLicense; $data = [ "firstName" => "John", "lastName" => "Doe", "email" => "[email protected]", ]; $privateKey = file_get_contents('path/to/private_key.pem'); $license = PhpLicense::generate($data, $privateKey); var_dump($license);
The above code will output the following result:
agW4Riht6xHEfbpDaZUcTCmZVHgGgCnzXc0+nqLAMjuS6ouuGQVv/JqjAuo89tUgTu3F7Q+WProPcNm1aXdavxj3xOxTJ3e2w0NSS09sBZONxG9MzzofqvYPCnu/I1WMLgaRXiiNJcz5WtqFLFSdTgehqU5VLO+eDhfWUeZ0EJlCtCLPu19hP56/+24+/tmnh4ySLc9tV+YGLYtpmt7Gyf+h3sbMO0SJMwe+XSuuTcUsIUDg3AQUlj7c4ctwhkdYkRyyjj27U09CgpWWgU5b3sXSqZ3DFdTNaP8sIVH3Y39b7/o+Gx7WIHzngCnczK58L81LTVwnkyzSBqKUT5oq4A==
Parsing
Use the following code to parse the license key:
<?php use Ziishaned\PhpLicense\PhpLicense; $license = 'agW4Riht6xHEfbpDaZUcTCmZVHgGgCnzXc0+nqLAMjuS6ouuGQVv/JqjAuo89tUgTu3F7Q+WProPcNm1aXdavxj3xOxTJ3e2w0NSS09sBZONxG9MzzofqvYPCnu/I1WMLgaRXiiNJcz5WtqFLFSdTgehqU5VLO+eDhfWUeZ0EJlCtCLPu19hP56/+24+/tmnh4ySLc9tV+YGLYtpmt7Gyf+h3sbMO0SJMwe+XSuuTcUsIUDg3AQUlj7c4ctwhkdYkRyyjj27U09CgpWWgU5b3sXSqZ3DFdTNaP8sIVH3Y39b7/o+Gx7WIHzngCnczK58L81LTVwnkyzSBqKUT5oq4A=='; $publicKey = file_get_contents('path/to/public_key.pem'); $parsedLicense = PhpLicense::parse($license, $publicKey); var_dump($parsedLicense);
The above code will output the following result:
{ "firstName": "John", "lastName": "Doe", "email": "[email protected]" }
Contributions
Feel free to submit pull requests, create issues or spread the word.
License
MIT © Zeeshan Ahmad
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK