pdaleramirez / asymmetric-encryption
There is no license information available for the latest version (1.0.0) of this package.
A laravel package that encrypts your data with private public key pairs using asymmetric encryption.
1.0.0
2020-02-24 12:46 UTC
Requires
- php: >=7.1.0
- laravel/framework: 5.5.*|5.6.*|5.7.*|5.8.*
This package is auto-updated.
Last update: 2024-12-23 10:13:24 UTC
README
A laravel package that encrypts your data with private public key pairs using asymmetric encryption.
The way it works is that it encrypts the data with a symmetric key, then asymmetrically encrypt the key and attach it to the data. Useful for encrypting large data. More details here: https://www.sitepoint.com/encrypt-large-messages-asymmetric-keys-phpseclib/
Installation
Step 1: Composer
Via Composer command line:
$ composer require pdaleramirez/asymmetric-encryption
Or add the package to your composer.json
:
{ "require": { " pdaleramirez/asymmetric-encryption": "^1.0.0" } }
Step 2: Enable the package
'providers' => [ pdaleramirez\asymmetric\encryption\AsymmetricEncryptionProvider::class ];
And then add the alias to your config/app.php
file:
'aliases' => [ 'AsymmetricEncryption' => pdaleramirez\asymmetric\encryption\AsymmetricEncryptionFacade::class ];
Usage:
Generate the key pairs:
$keys = \AsymmetricEncryption::createKeys();
Encrypting and Decrypting
$textToEncrypt = 'text to encrypt';
$privateKey = file_get_contents('keys/private.key');
$publicKey = file_get_contents('keys/public.pem');
$encryptedData = \AsymmetricEncryption::encrypt($textToEncrypt, $publicKey);
$decryptedData = \AsymmetricEncryption::>decrypt($encryptedData, $privateKey);