PHPackages                             petalbranch/jpt - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. petalbranch/jpt

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

petalbranch/jpt
===============

JPT (Json Petal Token) A PHP library for token generation used in authentication and authorization.

v1.3.2(2mo ago)09Apache-2.0PHPPHP ^8.3

Since Nov 9Pushed 2mo agoCompare

[ Source](https://github.com/PetalBranch/Jpt)[ Packagist](https://packagist.org/packages/petalbranch/jpt)[ RSS](/packages/petalbranch-jpt/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (4)Versions (12)Used By (0)

Json Petal Token (JPT)
======================

[](#json-petal-token-jpt)

[![PHP Version](https://camo.githubusercontent.com/91e2ff786d2fba1edf015025006e0156a071320b3662eaf2c50f39d4bb4b2369/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253345253344382e332d626c7565)](https://camo.githubusercontent.com/91e2ff786d2fba1edf015025006e0156a071320b3662eaf2c50f39d4bb4b2369/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253345253344382e332d626c7565)[![License](https://camo.githubusercontent.com/a21a9e0b02a2eaf1910bbf168de84e00ae1eb7b0fde8c5ceec0e7caa61920adf/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d417061636865253230322e302d677265656e)](https://camo.githubusercontent.com/a21a9e0b02a2eaf1910bbf168de84e00ae1eb7b0fde8c5ceec0e7caa61920adf/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d417061636865253230322e302d677265656e)[![Stable](https://camo.githubusercontent.com/84932cd99344a16151bd08143cbdb348bf25c349076052f48a6eb3cf0dc05c28/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f737461626c652d76312e332e322d6f72616e6765)](https://camo.githubusercontent.com/84932cd99344a16151bd08143cbdb348bf25c349076052f48a6eb3cf0dc05c28/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f737461626c652d76312e332e322d6f72616e6765)

🌏 语言/Language
-------------

[](#-语言language)

- 👉 中文
- [English](README_EN.md)

📘 简介
----

[](#-简介)

**PetalBranch/jpt** (Json Petal Token) 是一个轻量级、安全且灵活的 PHP 令牌生成与验证库。

不同于传统的 JWT，JPT 引入了 **"Petal" (花瓣)** 概念，支持**部分数据加密**。它采用独特的三段式结构，既保留了公开数据的透明性，又通过加密段确保存储在客户端的敏感数据（如用户手机号、邮箱等）不被泄露。

✨ 特性
----

[](#-特性)

- 🔒 **混合加密结构**：公开区 (Crown) 使用 Base64URL，私有区 (Petal) 使用[petal-cipher](https://github.com/PetalBranch/petal-cipher)加密兼顾隐私。
- 🛡️ **安全签名**：支持 HMAC 系列算法 (HS256 / HS384 / HS512)，防止数据篡改。
- 🧩 **灵活配置**：轻松设置签发人 (iss)、受众 (aud)、过期时间 (exp) 及 生效时间 (nbf)。
- ⏱ **容错机制**：支持时间漂移容差 (leeway)，适应分布式系统的时间偏差。
- 📦 **强类型载荷**：验证后返回强类型 `JptPayload` 对象，开发体验更佳。
- ⚡ **便捷路径访问**：(v1.3.0+) 支持类似 CSS 选择器的点号语法 (`$payload('c.user.name')`) 快速读取深层嵌套数据。

📦 安装
----

[](#-安装)

推荐使用 Composer 进行安装：

```
composer require petalbranch/jpt
```

🚀 快速开始
------

[](#-快速开始)

1. 生成 Token 并获取元数据

    ```
