Skip to content

jackprice/doctrine-encrypt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jackprice/doctrine-encrypt

Build Status

A package for the safe encryption and decryption of Doctrine fields.

Usage

Register the custom encrypted Doctrine type somewhere in the initialisation of your application.

<?php

\Doctrine\DBAL\Types\Type::addType(
    \DoctrineEncrypt\Types\Encrypted::ENCRYPTED,
    \DoctrineEncrypt\Types\Encrypted::class
);

Set the encryption key.

Important: You are responsible for securing and generating a strong key.

<?php

$encryptor = new \DoctrineEncrypt\Encryptors\AES256Encryptor(sha1('Use a very strong key here'));
\DoctrineEncrypt\Types\Encrypted::setEncryptor($encryptor);

Use the encrypted type in your entities.

<?php

class MyEntity
{
    /**
     * @ORM\Column(type="encrypted") 
     */
    protected $encrypted;
}

TODO

  • Add more documentation
  • Handle unencrypted fields
  • Create a CLI to encrypt fields
  • Allow key rotation

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages