2017 © Pedro Peláez
 

library laravel-id-cryption

A trait for Laravel/Lumen Model id encryption.

image

wwardaww/laravel-id-cryption

A trait for Laravel/Lumen Model id encryption.

  • Tuesday, February 6, 2018
  • by wwardaww
  • Repository
  • 2 Watchers
  • 0 Stars
  • 1 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 3 Versions
  • 0 % Grown

The README.md

Laravel Id Cryption

Latest Stable Version License, (*1)

This Trait Encrypt Your Data (from database or somewhere) or, Decrypt Your data (from client or somewhere) and it doesn't effect your real data (from data source)., (*2)

Based on samwhisker/laravel-trait-encrypt, (*3)

Installing

composer require wwardaww/laravel-id-cryption, (*4)

Note : APP_KEY must not be empty in your .env file., (*5)

In Your Model File
  • Use Trait :
use Wwardaww\Encryptable;

        class YourModel extends Model
        {

            use Encryptable; 
 ```

- Add your **Encryptable** columns and **Hidden** functions :

```php
 protected $encryptable = [
        'id',
        'account_id',
        'profile_id',
        'user_id',
        'some_id'
 ];

 protected $hiddenFunctions = [
        'someDefaultFunc',
        'someDefaultFunc2',  
 ];

Usage

Example Table on Your Data Source

ID Name
5 Ahmet Oğuz

Get Object Whit Encrypted Id

$encryptedId = "eyJpdiI6IlpxVWtpMGt4dERZbkRcL3hXVTZLKzVRPT0iLCJ2YWx1ZSI6IkhUNzF3MEFsRW1cL2tcLzVTRlZ6QmVaZz09IiwibWFjIjoiZTI5M2JiZTRiNzA2NGVjMTIwNmJhNWZjNjA4YmRmY2NlNzIxYTA2MWM3YTI1ZjVlYzQyMWQ5MzIwZDBlYzQ1OSJ9"
$data = YourModel::decryptFind($encrptedId);

Get Encrypted Data

$data = YourModel::where('somewhere','data')->get()->toArray();
  • Result Will be :
Array(
    [
        "id" => "eyJpdiI6IlpxVWtpMGt4dERZbkRcL3hXVTZLKzVRPT0iLCJ2YWx1ZSI6IkhUNzF3MEFsRW1cL2tcLzVTRlZ6QmVaZz09IiwibWFjIjoiZTI5M2JiZTRiNzA2NGVjMTIwNmJhNWZjNjA4YmRmY2NlNzIxYTA2MWM3YTI1ZjVlYzQyMWQ5MzIwZDBlYzQ1OSJ9",
        "name" => "Ahmet Oğuz"
    ]
)
  • If You don't Convert to Array, Result Will be :
 $data->id = 5,
 $data->name = "Ahmet Oğuz"

Disable Encryption Specific Function

  • You Should Add Your Function to $hiddenFunctions in Your Model File
  • When You Call Your Model in This Function , Result will be :
Call
public function someDefaultFunc2(Request $req){
    $data = YourModel::where('somewhere','data')->get()->toArray();
    ...
}

Result
Array(
    [
        "id" => 5,
        "name" => "Ahmet Oğuz"
    ]
)

The Versions

06/02 2018

dev-master

9999999-dev https://github.com/wwardaww/laravel-id-cryption

A trait for Laravel/Lumen Model id encryption.

  Sources   Download

MIT

The Development Requires

laravel eloquent trait model encrypt encryption

06/02 2018

v1.0.1

1.0.1.0 https://github.com/wwardaww/laravel-id-cryption

A trait for Laravel/Lumen Model id encryption.

  Sources   Download

MIT

The Development Requires

laravel eloquent trait model encrypt encryption

06/02 2018

v1.0.0

1.0.0.0 https://github.com/wwardaww/laravel-id-cryption

A trait for Laravel/Lumen Model id encryption.

  Sources   Download

MIT

The Development Requires

laravel trait model encryption