PHP - Gerando Json Web Token sem utilizar Repositório

Aprenda a gerar tokens JWT manualmente em PHP sem adicionar novas dependências! Este guia prático mostra como usar o hash_hmac para criar tokens seguros, ilustrado com exemplos claros e fáceis de seguir. Simplifique seu processo de autenticação e mantenha a magia em seus projetos!

PHP - Gerando Json Web Token sem utilizar Repositório

Olá meus Unicórnios! 🦄✨

Gerar um Token JWT pode ser super simplificado utilizando o Repositório "firebase/php-jwt":

GitHub - firebase/php-jwt: PHP package for JWT
PHP package for JWT. Contribute to firebase/php-jwt development by creating an account on GitHub.

Porem, nem sempre podemos incluir novas dependências no projeto.

Para isto, iremos criar o Token JWT manualmente, utilizando o hash_hmac:

<?
// Definimos o Algoritmo
$header             = json_encode(['alg' => 'HS256', 'typ' => 'JWT']);

// Definimos as Configuracoes
$APIKey             = "XXX";
$APISecret          = "XXX";

// Definimos os dados que irao ser inseridos neste Token
$payload            = json_encode([
'apikey'            => $APIKey,
'iat'               => time(),
'exp'               => time() + 86400
]);

// Encodamos os dados em Base64
$base64UrlHeader    = base64UrlEncode($header);
$base64UrlPayload   = base64UrlEncode($payload);

// Geramos os pedaços da Token
$signature          = hash_hmac('sha256', $base64UrlHeader . "." . $base64UrlPayload, $APISecret, true);
$base64UrlSignature = base64UrlEncode($signature);

// Concatenamos os pedaços do Token
$jwt                = $base64UrlHeader . "." . $base64UrlPayload . "." . $base64UrlSignature;

echo $jwt;
?>

Por hoje é só, meus unicórnios! 🦄✨

Que a magia do arco-íris continue brilhando em suas vidas! Até mais! 🌈🌟