Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Kit Crypt Bundle Laravel Package

kitlabs/kit-crypt-bundle

KitLabs Kit Crypt Bundle is a lightweight PHP encryption package for Laravel and PHP apps, offering simple, configurable helpers to securely encrypt and decrypt sensitive data. It provides reusable cryptographic utilities with minimal setup and straightforward integration.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for cipher flexibility. The package bundles 10 cipher families (DES, 3DES, IDEA, RC2, RC4, AES, Blowfish, RSA, DSA) behind a single injectable service. It answers the question "can we support many algorithms without writing crypto code?" — relevant to roadmap items around encrypting PII/PCI data at rest, partner data exchange, or acquired-system integration. The honest answer: it can, but it is a thin wrapper over primitives you already have, so "buy" mostly buys configuration convenience, not capability.
  • Legacy interoperability scoping. The realistic value is as an adapter for systems that only speak DES/3DES/RC2/RC4/IDEA. That supports decisions on partner integrations, acquired-system consolidation, and migration cutover planning (read old format, write new format).
  • Compliance / crypto-inventory workstream. Because the package enumerates weak ciphers explicitly, it works as a checklist during a PCI-DSS 4.0, HIPAA, or GDPR Art. 32 audit — surfacing where legacy ciphers still live and what must be retired. DES, 3DES, RC2, RC4, and DSA are all inappropriate for new data and several are prohibited in regulated scopes.
  • Platform standardization. Whether the org permits third-party crypto at all versus mandating framework-native primitives. This package forces that conversation, and the right default answer is usually "framework-native."
  • Caveat that changes the decision: despite the "Laravel/PHP" framing, this is a Symfony bundle, not a Laravel package. It integrates via Symfony's kernel, DI extension, and YAML config — none of which exist in Laravel. In a Laravel codebase it is not drop-in: you would fork it, rewrite the integration layer, or bypass the bundle entirely and call the underlying cipher classes directly — at which point the bundle adds no value. Budget for that integration cost, or don't adopt.

When to Consider This Package

Consider it only when all of the following hold:

  • You have a hard external constraint — a partner, mainframe, or acquired system that mandates a specific legacy cipher (typically 3DES or DES) and you cannot change the other side.
  • You need it as a temporary, time-boxed shim, not a destination. Wrap it behind your own EncryptionService interface with a named owner and a retirement date.
  • You can vendor/fork and audit it. Signals here are weak: 5 stars, 0 dependents, a low composite score (0.025), and no visible maintenance or security disclosure process. Treat it as unvetted third-party code in a security-critical path.
  • Your PHP runtime still supports the underlying primitives. Note mcrypt was removed in PHP 7.2, and OpenSSL 3.x moved DES/RC2/RC4 into the legacy provider — availability now varies by host and openssl.cnf. Verify per environment (local, CI, prod) before committing.

Look elsewhere when:

  • You need authenticated encryption (AEAD). Nothing here suggests AES-GCM/CCM or ChaCha20-Poly1305 with integrity guarantees — table stakes for new data today. Unauthenticated CBC invites padding-oracle and bit-flipping attacks unless the caller applies an HMAC envelope, which pushes cryptographic correctness onto application developers.
  • You are on Laravel — use the built-in Crypt facade (Illuminate\Encryption\Encrypter, AES-256-CBC + HMAC or AES-256-GCM) plus a managed key store. Zero new dependencies, maintained with the framework.
  • You need RSA signing or encryption — use phpseclib/phpseclib v3, actively maintained and widely depended upon.
  • You need key management, rotation, envelope encryption, or KMS/HSM integration. This is a cipher-level library, not a key-lifecycle product; there is no key ID in the ciphertext, so rotation means a bespoke dual-key read window plus a full re-encryption migration.
  • DSA is listed as an encryption algorithm. DSA is signature-only — that mislabeling signals imprecise crypto design and argues against using the package for anything beyond mechanical legacy interop.

How to Pitch It (Stakeholders)

To executives: A third-party library surfaced for encrypting sensitive data. It supports many algorithms, including several that are cryptographically broken (DES, RC2, RC4) and prohibited under PCI-DSS, and it has effectively no adoption — five stars, zero dependent projects — with no visible maintenance or security disclosure process. That is unacceptable risk in a security-critical dependency, and it is a Symfony bundle rather than a Laravel package, so integrating it into our stack means forking and owning it. Recommendation: do not adopt as a platform standard. Standardize on framework-native AES-256-GCM with managed key rotation; approve this package only if a specific legacy integration forces it, and then only as a time-boxed, internally wrapped adapter with a named owner and a retirement date. The cost of adopting is low; the cost of a crypto incident is not.

To engineering: Do not wire this in as a dependency. Run requirement triage first: separate "protect new data" (≈90% of these requests, fully served by Laravel's Encrypter) from "read legacy DES/3DES/RC2 data." For the latter, write a ~150-line LegacyCipherAdapter over openssl_decrypt() with explicit padding and no fallback-to-plaintext, have security review it, and mark it @deprecated at creation. Do not expose cipher selection to product configuration — hard-code the single algorithm actually needed. Reject DSA for anything (signature-only, mislabeled here). Design the ciphertext envelope with an IV, a key-ID/version prefix, and an authentication tag from day one, so the eventual re-encryption backfill and adapter deletion are a routine job rather than a redesign. If we do adopt the bundle, it must be forked, tested against known vectors, and owned — because there is no upstream community to patch it for us.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
frankyso/ipaymu
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment