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

Hashing Laravel Package

marko/hashing

A secure hashing package for Marko/Laravel PHP apps, offering a driver-based manager for bcrypt, argon2, and other algorithms. Easily hash and verify passwords, generate secure hashes, and swap drivers via simple configuration.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for credential security. This package is the "buy" (or rather, "adopt") option for one of the few things a team should almost never hand-roll: password hashing and verification. If the answer is "we'll write our own," this package is the counter-argument.
  • Authentication roadmap gating. Whether you can ship login, signup, password reset, and session credential storage at all on the Marko stack depends on this component being present and trustworthy. It is a dependency of your auth epic, not a feature in itself.
  • Framework selection and lock-in. Adopting Marko means adopting its hashing primitive. This is a small but non-negotiable piece of the due-diligence checklist when comparing Marko against Laravel, Symfony, or plain PHP with native password_hash.
  • Security posture and compliance conversations. Password storage is a recurring line item in SOC 2 / ISO 27001 readiness, pen-test findings, and customer security questionnaires. Having a named, reviewable hashing layer with a defined upgrade path (algorithm migration, rehash-on-login) is materially easier to document than ad-hoc calls scattered across the codebase.
  • Use cases served: first-party user accounts for SaaS, admin/back-office panels, internal tools, CLI credential storage. Not a fit for API token or key derivation — hashing passwords and hashing tokens have different threat models and lifecycle needs.
  • Prioritization signal. With 0 stars, 0 dependents, and a low opportunity score, this is not something to invest PM time in as a differentiator. Treat it as infrastructure hygiene: pick a path, document it, move on.

When to Consider This Package

Consider it when all of the following hold:

  • You are already committed to the Marko Framework. Note the [READ-ONLY] prefix and the pointer to the monorepo — this is a split repository, so issues, PRs, and roadmaps live upstream. Using it standalone means owning that coordination cost yourself.
  • You want a thin, conventional wrapper around PHP's native password hashing behavior rather than a bespoke or exotic scheme. Boring is the correct bar here.
  • You need the framework's idiomatic integration — consistent verifier calls, a single place to enforce algorithm and cost settings, and a hook point for rehashing on successful login.
  • Your team can review the implementation directly. The surface area of a password hasher is small; a few hundred lines is auditable in an afternoon, which materially offsets the adoption-risk concerns below.

Look elsewhere when:

  • You are not on Marko. Use password_hash/password_verify directly, or your framework's native facility (Laravel's Hash facade, Symfony's PasswordHasher). Adopting a framework-specific split package for a language primitive is pure overhead.
  • You need capabilities beyond basic hashing. Pepper management, HSM/KMS-backed secrets, breached-password checks, configurable password policy, or enforced algorithm migration tooling are unlikely to be in scope here — plan for those separately.
  • Supply-chain risk is unacceptable at your tier. Zero stars and zero dependents is not a verdict on code quality, but it does mean no independent audit trail, no community bug-finding, and no evidence of production usage. If you are the first adopter, you are effectively the QA function. That may be fine for an internal tool and not fine for a regulated consumer product.
  • You need maintenance commitments. A read-only split repo gives you no signal on release cadence, CVE response time, or deprecation policy. Get that from the upstream monorepo before committing.

How to Pitch It (Stakeholders)

For executives: This is a small, MIT-licensed security component that handles how we store user passwords. It costs nothing to license and does not differentiate the product — its only job is to not be the reason we end up in a breach report. The strategic question is not "should we use this package" but "are we standardized on Marko," because that decision carries this dependency with it. My recommendation is to treat it as a default-accept if we are on Marko, and a non-issue otherwise; we should not spend roadmap capacity on it beyond a documented decision.

For engineering: This gives us one canonical place for password hashing and verification instead of scattered password_hash calls with drifting cost factors and algorithms. Integration is trivial and the code is small enough to audit in a single sitting. Two caveats to plan around: it is a read-only split of the Marko monorepo, so all contribution and issue traffic goes upstream — budget accordingly if we need a change; and it has zero public dependents, meaning we are early. Mitigate by pinning the version, adding it to our dependency-review list, and wrapping it behind our own interface so swapping to native PHP or another framework's hasher later is a one-file change, not a migration. Do not extend it in place; extend the interface.

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.
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
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle