> ## Documentation Index
> Fetch the complete documentation index at: https://docs.magicblock.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# Session Keys 如何工作？

> 什么是 Session Keys？

Session Keys 旨在作为你程序中的辅助签名者使用，尤其适合点赞帖子、在国际象棋游戏中移动棋子这类高频交互，因为频繁弹窗会破坏流畅的用户体验。**它们不是 burner wallets**。&#x20;

Session Keys 会与我们的链上 program 协同工作，用于验证 token 及其作用范围。

## **Session Keys 包含两个组成部分**

1. 一个 **Ephemeral Keypair**，用于在目标 program 中充当**辅助签名者**。
2. 一个 **Session Token**，它是一个 PDA，包含该 keypair 的**过期时间与作用范围**信息。

## **它们如何工作？**

<img class="w-full h-auto max-w-5xl" alt="Session keys lifecycle" src="https://mintcdn.com/magicblock-42/5iyVpKJBt1PkwHw4/images/how_session_keys_work.png?fit=max&auto=format&n=5iyVpKJBt1PkwHw4&q=85&s=e7cc7647b782052a1b28c7d6bbaecc7a" width="2000" height="1050" data-path="images/how_session_keys_work.png" />

* Ephemeral Keys 存储在客户端，用于发起交易。
* 由这些 ephemeral keys 发起的交易，会在目标 program 中验证其有效性、过期时间和作用范围。
* 每一笔交易都需要同时提供 ephemeral signer 和 session token。
* 这体现了 *account abstraction* 的一般思路：不再只有外部拥有的密钥，还会结合智能合约来增强安全性。
