PHPackages                             softcreatr/wsc-crypto-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. softcreatr/wsc-crypto-php

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

softcreatr/wsc-crypto-php
=========================

PoC of cryptographic utility functions for WoltLab Suite Core, implemented in PHP.

1.0.0(1y ago)15ISCPHPPHP &gt;=8.1

Since Oct 11Pushed 1y ago1 watchersCompare

[ Source](https://github.com/SoftCreatR/wsc-crypto-php)[ Packagist](https://packagist.org/packages/softcreatr/wsc-crypto-php)[ Fund](https://ecologi.com/softcreatr?r=61212ab3fc69b8eb8a2014f4)[ GitHub Sponsors](https://github.com/softcreatr)[ RSS](/packages/softcreatr-wsc-crypto-php/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

wsc-crypto-php
==============

[](#wsc-crypto-php)

PoC of cryptographic utility functions for WoltLab Suite Core, implemented in PHP.

Overview
--------

[](#overview)

This project provides cryptographic helper functions, including:

- **Creating secure signatures** based on the Keyed-Hash Message Authentication Code (HMAC) algorithm.
- **Base64 encoding and decoding** without cache-timing leaks.
- **Parsing and verifying signed strings** to ensure data integrity and authenticity.

Installation
------------

[](#installation)

Use Composer to install the package:

```
composer require softcreatr/wsc-crypto-php
```

Usage
-----

[](#usage)

For detailed usage examples, please refer to the [examples](./examples/) directory.

### Examples

[](#examples)

- [Creating and Verifying a Signed String](./examples/createAndVerifySignedString.php)
- [Handling a Session Cookie](./examples/handleSessionCookie.php)
- [Parsing a Signed String Directly](./examples/parseSignedString.php)

Testing
-------

[](#testing)

The project includes a comprehensive test suite using PHPUnit.

### Running Tests

[](#running-tests)

1. **Install Dependencies:**

    Ensure all dependencies are installed via Composer:

    ```
    composer install
    ```
2. **Run PHPUnit with Coverage:**

    Execute the following command to run your tests and generate an HTML coverage report:

    ```
    ./vendor/bin/phpunit --coverage-html coverage
    ```
3. **View Coverage Report:**

    Open `coverage/index.html` in your browser to view detailed coverage statistics.

License
-------

[](#license)

This project is licensed under the [ISC License](https://github.com/SoftCreatR/wsc-crypto-php/blob/main/LICENSE.md). See the [LICENSE](https://github.com/SoftCreatR/wsc-crypto-php/blob/main/LICENSE.md) file for details.

Author
------

[](#author)

- **Sascha Greuel**
- **Email:**
- **GitHub:** [SoftCreatR](https://github.com/SoftCreatR)

Security Considerations
-----------------------

[](#security-considerations)

- **Protect the `signatureSecret`:** Ensure that the signature secret is stored securely and not exposed in version control or logs.
- **Validate Inputs:** Always validate and sanitize inputs when dealing with signed strings to prevent security vulnerabilities.

Contributing
------------

[](#contributing)

Contributions are welcome! Please open issues or submit pull requests for improvements and bug fixes.

Acknowledgments
---------------

[](#acknowledgments)

- [ParagonIE](https://github.com/paragonie) for their constant-time encoding library.
- Inspired by WoltLab's WCF Crypto utilities.

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance36

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

584d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b9b1aaa69f07552ddeed9891a6d81ca019ebdfdaa18b619b6c1e0d6e915ad52c?d=identicon)[SoftCreatR](/maintainers/SoftCreatR)

---

Top Contributors

[![SoftCreatR](https://avatars.githubusercontent.com/u/81188?v=4)](https://github.com/SoftCreatR "SoftCreatR (1 commits)")

---

Tags

cryptocryptographyphpwoltlabwoltlab-suitewoltlab-suite-corewsc

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/softcreatr-wsc-crypto-php/health.svg)

```
[![Health](https://phpackages.com/badges/softcreatr-wsc-crypto-php/health.svg)](https://phpackages.com/packages/softcreatr-wsc-crypto-php)
```

###  Alternatives

[paragonie/easy-ecc

Usabiliy Wrapper for mdanter/ecc

46617.1k10](/packages/paragonie-easy-ecc)[paragonie/quill

Library for quickly and easily writing data to a Chronicle instance

2125.1k1](/packages/paragonie-quill)[bueltge/wordpress-multisite-enhancements

Enhance Multisite for Network Admins with different topics

1113.6k](/packages/bueltge-wordpress-multisite-enhancements)[paragonie/blakechain

Hash chain using BLAKE2b

242.9k3](/packages/paragonie-blakechain)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
