Skip to content

Repository files navigation

Encrypted PSR-6 cache pool

Latest Stable Version Coverage Software License

This package encrypts values stored through a taggable PSR-6 cache pool. Encryption adds CPU and storage overhead, so use it only when cached values need protection at rest.

Installation

composer require cache/encryption-cache:^2.0

Usage

use Cache\Adapter\PHPArray\ArrayCachePool;
use Cache\Encryption\EncryptedCachePool;
use Defuse\Crypto\Key;

$key = Key::createNewRandomKey();
$pool = new EncryptedCachePool(new ArrayCachePool(), $key);

$item = $pool->getItem('account.42');
$item->set(['email' => 'user@example.com']);
$pool->save($item);

The wrapped pool must implement TaggableCacheItemPoolInterface. Persist the encryption key outside the cache and load the same key for every request.

Contributing

Send pull requests to the main repository. Report issues on the GitHub issue tracker.

About

[READ-ONLY] A library to make a PSR-6 cache encrypted.

Resources

Stars

1 star

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors

Languages