PhpDev.App
SiavashBamshadnia/Laravel-Source-Encrypter

SiavashBamshadnia/Laravel-Source-Encrypter

Stars: 479

Forks: 104

Pull Requests: 5

Issues: 33

Watchers: 20

Last Updated: 2023-03-11 06:18:58

Laravel and Lumen Source Code Encrypter

License: MIT License

Languages: PHP

Laravel Source Encrypter

StyleCI Latest Stable Version License CodeFactor

This package encrypts your php code with phpBolt

For Laravel and Lumen 6, 7, 8, 9

Installation

Step 1

At the first, You have to install phpBolt.

Step 2

Require the package with composer using the following command:

composer require --dev sbamtr/laravel-source-encrypter

Step 3

For Laravel

The service provider will automatically get registered. Or you may manually add the service provider in your config/app.php file:

'providers' => [
    // ...
    \sbamtr\LaravelSourceEncrypter\SourceEncryptServiceProvider::class,
];

For Lumen

Add this line of code under the Register Service Providers section of your bootstrap/app.php:

$app->register(\sbamtr\LaravelSourceEncrypter\SourceEncryptServiceProvider::class);

Step 4 (Optional)

You can publish the config file with this following command:

php artisan vendor:publish --provider="sbamtr\LaravelSourceEncrypter\SourceEncryptServiceProvider" --tag=config

Note: If you are using Lumen, you have to use this package.

Usage

Open terminal in project root and run this command:

php artisan encrypt-source

This command encrypts files and directories in config/source-encrypter.php file. Default values are app, database, routes.

The default destination directory is encrypted. You can change it in config/source-encrypter.php file.

Also the default encryption key length is 6. You can change it in config/source-encrypter.php file. 6 is the recommended key length.

This command has these optional options:

Option Description Example
source Path(s) to encrypt app,routes,public/a.php
destination Destination directory encrypted
keylength Encryption key length 6
force Force the operation to run when destination directory already exists

Usage Examples

Command Description
php artisan encrypt-source Encrypts with default source, destination and keylength. If the destination directory exists, asks for delete it.
php artisan encrypt-source --force Encrypts with default source, destination and keylength. If the destination directory exists, deletes it.
php artisan encrypt-source --source=app Encrypts app directory to the default destination with default keylength.
php artisan encrypt-source --destination=dist Encrypts with default source and key length to dist directory.
php artisan encrypt-source --destination=dist --keylength=8 Encrypts default source to dist directory and the encryption key length is 8.

Written with ♥ by Siavash Bamshadnia.

Please support me by staring this repository.