Encrypt Database Values in Laravel with DB Encrypter


January 31st, 2020


Laravel DB Encrypter is a package by Daniel Częstki that automatically encrypts and decrypts values stored in database fields. It uses Laravel’s standard Encryption via a trait:

use betterapp\LaravelDbEncrypter\Traits\EncryptableDbAttribute;

class Client extends Eloquent
    use EncryptableDbAttribute;

    /** @var array The attributes that should be encrypted/decrypted */
    protected $encryptable = [

Note: encrypted values are longer than their plain text counterparts. The package recommends storing data as a TEXT column:

If your current data is not encrypted, the column will be returned as-is. You can check out the package on GitHub at betterapp/laravel-db-encrypter.

Filed in:

Paul Redmond

Full stack web developer. Author of Lumen Programming Guide and Docker for PHP Developers.