跳到主要内容

离线签名

Air-Gap 模式通过 UR 动画二维码在应用与设备之间传递签名请求和签名结果。整个过程中,设备不需要接入网络,私钥也不会离开设备。

原理

阶段发生的事情
请求准备应用把目标链的签名请求编码成 UR,并拆成动画二维码展示。
设备扫描UKey Wallet 读取二维码,在屏幕上展示待签内容,用户确认后离线签名。
获取签名设备把签名响应重新封装为 UR 动画二维码。
广播交易应用扫描回传二维码,完成解析和校验后再广播交易或继续后续业务。

按链上手

请求类型响应类型
Ethereum & EVMeth-sign-requesteth-signature
Bitcoin (PSBT)crypto-psbtcrypto-psbt
Solanasol-sign-requestsol-signature
Trontron-sign-requesttron-signature

API说明

  • 基础 API - 通用 UR 类型:CryptoHDKeyCryptoCoinInfoCryptoKeypath

依赖

# Keystone SDK 与 UR 注册依赖
npm install @keystonehq/keystone-sdk @keystonehq/bc-ur-registry-eth

# UR 基础能力库
npm install @ngraveio/bc-ur

注意:Air-Gap 面向离线签名场景,通常不会提供在线浏览器演示。