identity-layer / jose
Core Library for the Identity Layer project
2.1.1
2022-10-29 10:41 UTC
Requires
- php: >=7.4
- ext-intl: *
- ext-json: *
- ext-openssl: *
- fgrosse/phpasn1: ~2.0
- identity-layer/collection: ^1.0.3
- myclabs/php-enum: ~1.5
- paragonie/constant_time_encoding: ~2.2
- symfony/polyfill-mbstring: ~1.0
Requires (Dev)
- phpstan/phpstan: ^0.12.25
- phpunit/phpunit: ^9.1
- squizlabs/php_codesniffer: ^3.5
README
Intro
This library provides a simple yet secure implementation of the Javascript Object Signing and Encryption (JOSE) standard.
It also provides support for claims by providing interfaces and a set of value objects you can use within your application as well as a factory for converting claims into a collection and providing validation on claims whether they're generated by your application or parsed.
The library uses OpenSSL for most of its cryptographic functionality and uses secure algorithms otherwise.
The library keeps external dependencies to a minimum so works well in environments with complex dependency requirements.
Installation
Installation via Composer
composer require identitylayer/jose
Requirements
- PHP ^7.4
- PHP OpenSSL extension
Supported Algorithms
Algorithm | Supported | Implementation |
---|---|---|
HS256 | ✔ | PHP hash function |
HS384 | ✔ | PHP hash function |
HS512 | ✔ | PHP hash function |
RS256 | ✔ | OpenSSL |
RS384 | ✔ | OpenSSL |
RS512 | ✔ | OpenSSL |
PS256 | ✖ | |
PS384 | ✖ | |
PS512 | ✖ | |
ES256 | ✖ | |
ES384 | ✖ | |
ES512 | ✖ |