Package Data | |
---|---|
Maintainer Username: | xaamin |
Maintainer Contact: | xaamin@outlook.com (Benjamín Martínez Mateos) |
Package Create Date: | 2016-09-12 |
Package Last Update: | 2024-02-14 |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-11 15:07:46 |
Package Statistics | |
---|---|
Total Downloads: | 8,870 |
Monthly Downloads: | 41 |
Daily Downloads: | 1 |
Total Stars: | 2 |
Total Watchers: | 2 |
Total Forks: | 1 |
Total Open Issues: | 0 |
PHP Implementation of JSON Web token with RSA.
RSA (Public Key/Private Key pair)
RS256 - RSA using SHA-256 hash algorithm
RS384 - RSA using SHA-384 hash algorithm
RS512 - RSA using SHA-512 hash algorithm
HMAC algorithms :
HS256 - HMAC using SHA-256 hash algorithm (default)
HS384 - HMAC using SHA-384 hash algorithm
HS512 - HMAC using SHA-512 hash algorithm
With composer
composer require xaamin/jwt
Set configuration in src/Config/config.php. Don't use key provided here in production.
'algorithm' => 'RS512',
// ... Other stuff here
'keys' => [
'public' => '../keys/public_key.pem',
'private' => '../keys/private_key.pem',
'passphrase' => null,
],
$payload = [
'sub' => 1,
'username' => 'xaamin'
];
// Generate token
$token = Xaamin\JWT\Facade\Native\JWT::encode($payload);
// Verify the token
try{
$token = Xaamin\JWT\Facade\Native\JWT::decode($token->get());
var_dump($token);
} catch (Exception $e) {
echo $e->getMessage();
}
Set configuration in src/Config/config.php
'algorithm' => 'HS512',
'secret' => 'some-random-string'
$payload = [
'sub' => 1,
'username' => 'xaamin'
];
// Generate token
$token = Xaamin\JWT\Facade\Native\JWT::encode($payload);
// Verify the token
try{
$token = Xaamin\JWT\Facade\Native\JWT::decode($token->get());
var_dump($token);
} catch (Exception $e) {
echo $e->getMessage();
}