free2er/jwt

JWT 工具

1.0.0 2020-03-17 15:21 UTC

This package is auto-updated.

Last update: 2024-09-18 01:16:20 UTC


README

JWT 工具

安装

此组件可以使用 Composer 依赖管理器进行安装。

  1. 安装 Composer

  2. 将组件作为项目依赖项安装

     composer require free2er/jwt
    

用法

创建 JWK

use Free2er\Jwt\KeyFactory;

$factory = new KeyFactory();
$factory->create('/path/to/private.key');
$factory->create('/path/to/public.key');

创建 JWT

use Free2er\Jwt\TokenFactory;

$factory = new TokenFactory();
$factory->create(['aud' => 'client', 'sub' => 'user'], '/path/to/private.key');

验证 JWT

use Free2er\Jwt\TokenValidator;

$validator = new TokenValidator();
$validator->validate('some.jwt.token', '/path/to/public.key');

OpenSSL 命令

生成 RSA 密钥

openssl genrsa -out private.key 2048
openssl rsa -in private.key -pubout -out public.key

带密码生成 RSA 密钥

openssl genrsa -passout pass:_passphrase_ -out private.key 2048
openssl rsa -in private.key -passin pass:_passphrase_ -pubout -out public.key

生成 EC P-256 密钥

openssl ecparam -name prime256v1 -genkey -noout -out private.key
openssl ec -in private.key -pubout -out public.key

生成 EC P-384 密钥

openssl ecparam -name secp384r1 -genkey -noout -out private.key
openssl ec -in private.key -pubout -out public.key

生成 EC P-521 密钥

openssl ecparam -name secp521r1 -genkey -noout -out private.key
openssl ec -in private.key -pubout -out public.key

生成 Ed25519 密钥

openssl genpkey -algorithm Ed25519 -out private.key
openssl pkey -in private.key -pubout -out public.key