Weave Code
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

Phpass Laravel Package

bordoni/phpass

Modernized, namespaced fork of Openwall Phpass (0.3) with Composer autoloading and unit tests. Provides PasswordHash for hashing and verifying passwords with minimal stylistic changes; public domain code, PHP 5 style.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Password Security Compliance: Enables adherence to OWASP and GDPR standards for password storage by leveraging bcrypt-based hashing (via Openwall Phpass). Critical for user authentication systems, especially in regulated industries (finance, healthcare).
  • Legacy System Modernization: Facilitates migration of older PHP applications (pre-PHP 7.4) to use namespaced, autoloaded libraries without rewriting core hashing logic. Ideal for maintaining legacy Laravel 5.x or custom PHP stacks.
  • Build vs. Buy: Avoids reinventing password hashing wheels while mitigating risks of unmaintained dependencies (fork of a deleted repo). Provides a lightweight, no-cost alternative to Laravel’s built-in Hash facade for specific use cases.
  • Use Cases:
    • User Authentication: Secure login/signup flows with compliant password storage.
    • Password Reset: Safe handling of "forgot password" functionality.
    • Third-Party Integrations: Secure password storage for APIs or external services requiring Phpass-compatible hashes.
    • Compliance-Heavy Projects: Meets GDPR Article 32 (security of processing) and PCI DSS requirements for password protection.

When to Consider This Package

  • Adopt if:

    • Your project uses PHP 5.6–8.1 and requires bcrypt-based hashing (e.g., migrating from crypt() or MD5).
    • You’re maintaining a legacy Laravel 5.x or custom PHP system and need minimal refactoring for secure hashing.
    • Your team lacks cryptography expertise but needs OWASP-recommended security with zero maintenance overhead.
    • You require a single-dependency solution for password hashing (no external binaries or complex setup).
    • Your use case demands Phpass-specific hash formats (e.g., interoperability with legacy systems).
  • Look elsewhere if:

    • You’re on PHP 8.2+ and can use Laravel’s native password_hash() (built-in bcrypt support).
    • You need active maintenance (this package is a dormant fork; monitor for updates or consider paragonie/bcrypt).
    • Your project requires additional features (e.g., password strength meters, Argon2 support, or multi-factor integration).
    • You’re building a new Laravel 8/9+ project and prefer built-in Hash facade (more features, active updates).
    • You need adaptive cost factors or modern key derivation (e.g., Argon2).

How to Pitch It (Stakeholders)

For Executives: "This package lets us securely hash passwords using bcrypt, a gold-standard algorithm recommended by OWASP, without building or maintaining custom cryptography. It’s a lightweight, no-cost solution that reduces compliance risks (GDPR, PCI DSS) in authentication flows. Since it’s a fork of a trusted but deleted library, we avoid dependency risks while keeping implementation costs low. Ideal for legacy systems or projects where we need Phpass-compatible hashes."

For Engineering: *"bordoni/phpass is a minimal, namespaced wrapper for Openwall Phpass (bcrypt), giving us:

  • Composer autoloading (no manual includes).
  • PHP 5.6–8.1 compatibility (works in legacy systems).
  • Zero maintenance burden (stable, tested, and public-domain). It’s perfect for quick integration into auth systems where we need to hash/check passwords securely. Tradeoffs:
  • No active updates (last release: 2022).
  • Not ideal for new projects (use Laravel’s Hash instead).
  • Risk of PHP 8.2+ compatibility issues. Recommend pairing with unit tests for critical paths and monitoring for future updates."*

For Security Teams: *"This implements bcrypt with Openwall Phpass’s salt scheme, meeting OWASP’s ‘Password Storage Cheat Sheet’ recommendations. The fork ensures continuity after the original repo’s deletion, but we should:

  • Monitor for updates (no active maintenance).
  • Avoid in new projects (use Laravel’s Hash or paragonie/bcrypt).
  • Test thoroughly for edge cases (e.g., malformed hashes, PHP version quirks). For legacy systems, it’s a pragmatic choice—but not future-proof."*
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.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky