跳转到主要内容
Session Keys 旨在作为你程序中的辅助签名者使用,尤其适合点赞帖子、在国际象棋游戏中移动棋子这类高频交互,因为频繁弹窗会破坏流畅的用户体验。它们不是 burner wallets Session Keys 会与我们的链上 program 协同工作,用于验证 token 及其作用范围。

Session Keys 包含两个组成部分

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

它们如何工作?

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