2017 © Pedro Peláez
 

library jwt-util

Una pequeña librería que autentica con Web Tokens JSON (JWT)

image

siu-toba/jwt-util

Una pequeña librería que autentica con Web Tokens JSON (JWT)

  • Wednesday, April 25, 2018
  • by andresote
  • Repository
  • 1 Watchers
  • 0 Stars
  • 6,268 Installations
  • PHP
  • 2 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 5 Versions
  • 19 % Grown

The README.md

jwt-util

Esta librería encapsula la manipulación de tokens tipo JWT (https://jwt.io/). Permite generar y validar los tokens, utilizando para ello claves simétricas y/o asimétricas., (*1)

Requiere actualmente la librería php-jwt., (*2)

Instalación

Usar composer para manejar las dependencias y descargar jwt-util:, (*3)

composer require siu-toba/jwt-util

Generar un token

Para generar un token o hacer el encode se debe elegir la encriptación, ya sea simétrica o asimétrica, definir una clave y un algoritmo., (*4)

``` php $keySimetrica = 'test';, (*5)

$datos = ['uid'=>'id-usuario', 'name'=>'usuario de prueba'];

$simetricEncoder = new SimetricEncoder(Util::ALG_HS512, $keySimetrica, $datos);

$jwt->setEncoder($simetricEncoder);

$token = $jwt->encode();

echo $token;
// eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJ1aWQiOjEyMzQ1NiwibmFtZSI6Im15IHVzZXIgbmFtZSJ9.RZcDtMfrzoVEISsVYsVz11-rZ87rWqS7RHYctQnpZKDt8m8YsVZysh9Hu0OpDnPT-8JjHbWS_Xkz6Am11UAulQ

## Validar un token También, es posible a partir del token y la clave, validar o hacer el *decode* y determinar si es un token válido, para así extraer la información relacionada. ``` php $keySimetrica = 'test'; $simetricDecoder = new SimetricDecoder(Util::ALG_HS512, $keySimetrica); $this->jwt->setDecoder($simetricDecoder); // con el token generado previamente... $data = $this->jwt->decode($token); echo $data->uid; // 'id-usuario' echo $data->name; // 'usuario de prueba'

Opciones

Los algoritmos y métodos soportados son:, (*6)

algoritmo método encode/decode
HS256 simétrico
HS384 simétrico
HS512 simétrico
RS256 asimétrico
RS512 asimétrico

Para generar tokens con el método asimétrico, se requieren de claves público/privadas. Se puede generar algunas de prueba de la siguiente forma:, (*7)

    openssl genrsa 512 > server.key
    openssl rsa -pubout < server.key > server.pem

Nota: esto genera claves para RS256, para RS512 usar genrsa 1024, (*8)

The Versions

25/04 2018

dev-master

9999999-dev http://www.siu.edu.ar

Una pequeña librería que autentica con Web Tokens JSON (JWT)

  Sources   Download

SIU

The Requires

 

The Development Requires

by Sistema de Información Universitaria - SIU

25/04 2018

v1.0.3

1.0.3.0 http://www.siu.edu.ar

Una pequeña librería que autentica con Web Tokens JSON (JWT)

  Sources   Download

SIU

The Requires

 

The Development Requires

by Sistema de Información Universitaria - SIU

16/03 2017

v1.0.2

1.0.2.0 http://www.siu.edu.ar

Una pequeña librería que autentica con Web Tokens JSON (JWT)

  Sources   Download

SIU

The Requires

 

The Development Requires

by Sistema de Información Universitaria - SIU

09/01 2017

v1.0.1

1.0.1.0 http://www.siu.edu.ar

Una pequeña librería que autentica con Web Tokens JSON (JWT)

  Sources   Download

SIU

The Requires

 

by Sistema de Información Universitaria - SIU

06/01 2017

v1.0.0

1.0.0.0 http://www.siu.edu.ar

Una pequeña librería que autentica con Web Tokens JSON (JWT)

  Sources   Download

SIU

The Requires

 

by Sistema de Información Universitaria - SIU