pierrre/encrypter-bundle
A Symfony bundle that provides an injectable encrypter service for encrypting and decrypting strings with a configurable secret key. Add it to your app to protect sensitive values without writing low-level crypto code yourself.
Verdict up front: do not adopt. Evaluate only as a legacy artifact or a reference implementation. Despite being routed as a "Laravel/PHP package," pierrre/encrypter-bundle is a Symfony2 bundle — a packaging format (DI container extension, compiler pass, XML/YAML service definitions, bundle kernel registration) that has no analogue in Laravel's service-provider model and no path into a modern Symfony 4+/6/7 application. It is archived, has zero dependents, and 20 stars. For a TPM, the correct framing is "is this a liability in our estate?" not "should we integrate this?"
Architecture fit
AppKernel, no bundle registration, and no Bundle class resolution. The conceptual overlap (both are DI containers) is not binary or API compatible.EncrypterInterface-style contract). A 20-star archived bundle is the opposite of a stable, swappable abstraction.Integration feasibility
composer require will almost certainly fail dependency resolution against any modern Symfony or Laravel release. Forcing it with --ignore-platform-reqs trades a clean install failure for a runtime fatal — strictly worse, because it fails in production rather than in CI.Technical risk (the deciding factor)
mcrypt_*, removed in PHP 7.2. Where the code does run, the common-era construction is CBC or ECB with a static or key-derived IV, padding without a MAC, and no AEAD. That is exactly the pattern behind padding-oracle and key-reuse vulnerabilities. We cannot certify this as a security control until an engineer reads the cipher source line by line — and even then, absence of a security policy, no disclosure channel, and no maintainer means we own any CVE.Key questions to put to the requesting team
defuse/php-encryption, paragonie/halite, libsodium secretbox, or Laravel's built-in Crypt facade with AES-256-GCM.Stack fit
Illuminate\Encryption\Encrypter (OpenSSL AES-256-CBC/GCM) or a vetted library. Do not shim a Symfony bundle into a Laravel container.sodium-based primitives and defuse/php-encryption is a drop-in with a stable interface.Migration path (legacy containment, if applicable)
EncrypterInterface.Compatibility
| Dimension | Status |
|---|---|
| PHP | 5.3–7.1 era; incompatible with 8.x |
| Symfony | 2.x only; no 3.x+ support |
| Laravel | Not applicable |
| Composer resolution | Expected to conflict on install |
| Maintainer | Archived; none |
Sequencing guidance
Maintenance
Support
Scaling
Failure modes
mcrypt_* disappears — the highest-probability, highest-impact failure, and it is scheduled by the platform team, not by us.Ramp-up
sodium_crypto_secretbox or the framework's native encrypter produce knowledge the team keeps.How can I help you explore Laravel packages today?