Download the PHP package nexxai/laravel-rfc3161 without Composer
On this page you can find all versions of the php package nexxai/laravel-rfc3161. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package laravel-rfc3161
Laravel RFC3161
nexxai/laravel-rfc3161 is a thin Laravel interface for RFC 3161 timestamp providers. It creates timestamp requests, sends them to your selected provider, stores the request/response binary payloads, and verifies responses with provider-specific certificates.
Breaking Changes
- The package namespace changed from
Nexxai\\FreeTsa\\...toNexxai\\Rfc3161\\.... - Update all imports, config class references, and type hints to the new namespace.
Installation
Requirements
- PHP must be able to execute an
opensslCLI binary for RFC 3161 verification. - By default this package calls
opensslfrom yourPATH; setTIMESTAMP_OPENSSL_BINARYif your binary lives elsewhere.
You can install the package via composer:
You can publish and run the migrations with:
Add the package trait to your model so it gets the timestampRecords() polymorphic relationship:
You can publish the config file with:
This is the contents of the published config file:
Provider endpoints and certificate chains are built into provider classes and are not user-configurable.
Set TIMESTAMP_PROVIDER to a provider class (for example Nexxai\\Rfc3161\\Providers\\DigiCert) to choose the default provider.
When overriding the provider in code, pass a provider object (for example new DigiCert()).
Before timestamp verification, download and store trusted certificates for your provider:
If certificates are missing, verification will throw an exception with this command.
The package requests certificate inclusion in each TSQ (-cert) and, during verification, prefers the certificate chain embedded in the TSR for per-response validation. Local provider certificates are used as trust anchors (-CAfile) and as a fallback untrusted chain when a TSR does not include certificates.
When TIMESTAMP_VALIDATE_CERTIFICATE_CHAIN=true, the package validates trusted local certificates before requests and verification. If validation fails, it attempts one fresh re-download for that provider and throws an exception if validation still fails.
Usage
timestampFile() is a method on the Eloquent model (Nexxai\Rfc3161\Models\Timestamp), not the facade (Nexxai\Rfc3161\Facades\Timestamp).
If you need both in the same file, alias them so calls stay explicit:
The timestamps table includes a nullable polymorphic relation (timestampable_type, timestampable_id) so any Eloquent model can own many timestamp records.
After adding the trait, access records with $user->timestampRecords (or call $user->timestampRecords() for the relation query).
Testing
Releases
This package uses Release Please to create and publish semver releases from main.
Use Conventional Commits in merged PRs so the version bump is predictable:
fix: ...-> patch release (x.y.Z)feat: ...-> minor release (x.Y.0)feat!: ...or aBREAKING CHANGE:footer -> major release (X.0.0)
Example:
Changelog
Please see CHANGELOG for more information on what has changed recently.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
- JT Smith
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of laravel-rfc3161 with dependencies
illuminate/contracts Version ^11.0||^12.0||^13.0
illuminate/database Version ^11.0||^12.0||^13.0
illuminate/http Version ^11.0||^12.0||^13.0
illuminate/support Version ^11.0||^12.0||^13.0
spatie/laravel-package-tools Version ^1.16
symfony/process Version ^7.2||^8.0