@bsv/wallet-toolbox-mobile

中文文档
2.15.3发布于 2026/11/05SEE LICENSE IN LICENSE.txtTypeScriptESM + CJS构建来源已验证近 30 天下载 5091

反应原生和移动安全 BRC-100 钱包、签名器和远程存储组件

中文使用文档
文档目录22 节
  1. 当地复原能力边界
  2. 接收已播出的付款
  3. BRC- 100 结果相容性
  4. 备份和复原
  5. 大型钱包记录
  6. 安装
  7. 一揽子目标
  8. 不使用Web Assembly 程序获取密码
  9. 可选本地 Argon2id 后端
  10. 远程存储示例
  11. 使用大小写
  12. 手机上的自控BSV钱包
  13. 桌面钱包的辅助应用程序签名器
  14. 仅接收移动应用程序
  15. 被排除在外的对 @bsv/wallet-toolbox
  16. 钱包快照安全
  17. CORS、CSP和公共服务
  18. 捐助者检查
  19. 许可证
  20. WAB 水龙头费兼容性
  21. 重建前冲突恢复
  22. SDK4 热补丁对等要求

@bsv/wallet-工具箱-移动

npm version npm downloads

移动式建筑 @bsv/wallet-toolbox - 参考文献 BRC-100号卫星 钱包执行。 它提供移动安全钱包,签名器,服务,监视器,以及远程存储API,不包含Knex,SQLite/MySQL本土绑定,索引DB,或只包含节点 IO.

远程 StorageClient 电话接受 authFetchOptions 现有第三个 构造者论证. 对于更长时间的认证请求,请同时配置 requestTimeoutMs 财务报告和审定财务报表 responseTimeoutMs 与支持后者的SDK. 排除保留已安装的 SDK 默认值; 已存在的 SDK 对等范围 消费者的电话不变。 见 远程存储超时指南。 。 。 .

在 :

  • 反应原生应用程序
  • 电容/ Cordova 移动应用程序
  • 其他移动运行时间 fetch,Web Crypto,以及所需的网络兼容全球

用于节点服务器 @bsv/wallet-toolbox。对于浏览器,使用 @bsv/wallet-toolbox-client。 。 。 .

当地复原能力边界

协调的2.1.5.0源候选人保留了这个包装器现有的API 和SDK对等范围。 Core 新的本地 SQLite 动作/供资回收控制器 它们是独立的节点深度进口;该套件不捆绑或暴露它们. 升级不会给索引数据库、移动存储或远程存储提供持久操作 日记。 一般的BRC-100方法保留了它们现有的行为.

当主机单独采用核心回收时,保持整体一致性 钱包数据库和密钥。 普通实体输出/同步不包括这些 辅助日记. 调和尚未完成的核心业务后再退; 包装重试或新付款不能取代保留回收状态. 见 当地恢复指南。 。 。 .

接收已播出的付款

2.14.9 源头候选人即使存储也完成广播结果 已标记请求 unmined 或者说 completed。此定义第一次收款 在共享存储上没有采矿证据,在另一个存储时,结果路径相同 在广播结果刷新之前,存储器工人会提前提交请求。 这个 存储的高级状态保持不变;提供方结果仍未成功 拒绝收货,不贷记新的收款产出。 重复成功 实收仍为一能. 以下付款附有其有效的采矿证明 未重播的现有证明路径.

远程SQL存储也需要2.14.9存储迁移和协调 服务器推出:一个耐用用户/TXID 声明将不同机舱的收据序列化,同时 保存历史行。 没有公共API或 需要电线迁移。 原始版本在出版前都是候选人 通过被保护的发布工作流程; 仅更新一个应用程序不 升级其远程存储服务器.

BRC- 100 结果相容性

2.14.1版本不公开内部精确支出会计 createAction 结果,在钱包操作后修正严格的二进制桥接失败 保留收费和服务费授权。 更新钱包和权限 管理者一起。 现有的 JSON 桥,删除内部元数据保留其 行为;不需要应用程序、BRC-39或账户恢复迁移。 检查 钱包历史,然后重试旧主机的响应失败的动作.

备份和复原

BRC- 100 钱包既需要可收回的密钥,也需要钱包记录/开发 元数据。 BRC- 39 导出包含钱包数据,而不是根密钥或管理器快照. App去除或设备丢失可以去除当地保留的秘密并声明. 在替换设备上测试独立的密钥和数据回收路径.

读取 钱包备份和回收, (中文(简体) ), BRC-38/39 一体化 编辑 回收清单。 。 。 . 手提式助工需要当地混凝土 StorageProvider; 一个远程客户端 不是一个。 在添加前限定本地复制路径和设备内存限制 进出口UI.

大型钱包记录

兼容供应商谈判经认证、完整性检查的转让 超过单个 HTTP 信件的记录。 上传后恢复已保存的部件 中断;普通页面和遗留提供者保留其现有的协议. 第1版被限定为每帧64个米B并需要升级的提供商. 见 转让和移徙指南。 。 。 .

安装

安装 @bsv/sdk 与此软件包相邻的对等依赖 :

npm install @bsv/wallet-toolbox-mobile @bsv/sdk

一揽子目标

该套装发布:

  • 具有源图的无害环境管理反应土著/进口目标;
  • a 普通JS要求有源地图的目标;
  • (a) 使无害环境管理和共同司法制度的声明相匹配;
  • 明确 react-native, (中文(简体) ), import,以及 require 出口条件.

被打包的包被Metro验证,并编译来优化Hermes字节码. 已公布的工具和贡献工作流程需要节点(Node.js 22)或更新,而不是作为在线设备运行时间.

不使用Web Assembly 程序获取密码

Argon2id 密码衍生用途 hash-wasm 当WebAssembly可用时. 反应原生引擎如不曝光WebAssembly使用 以相同的参数同步生成 JavaScript 回落 输出。 现有的 UMP v3 钱包仍然兼容,用户不需要 更改设备设置或迁移账户.

可选本地 Argon2id 后端

导入 registerArgon2idBackend, (中文(简体) ), unregisterArgon2idBackend,则 AsyncArgon2idBackend 键。 注册主机 只有在核实其互操作性之后才能实施; isReady() 必须 在核查成功之前,始终是虚假的。 现成的后端具有权威性: 衍生出的错误和错误的输出被浮出水面而不切换执行.

同时期的寒冷衍生物有一个背景 preload() 尝试并保留 便携路径。 以后的电话可以在尝试解决后重新尝试。 主机必须 生产 preload() 财务报告和审定财务报表 isReady() 重复和缓存永久失败或应用 备份。 当主机不再拥有后端对象时解除其注册.

远程存储示例

import { Wallet, WalletSigner, WalletStorageManager, StorageClient, Services } from '@bsv/wallet-toolbox-mobile'
import { KeyDeriver, PrivateKey } from '@bsv/sdk'

const chain = 'main'
const keyDeriver = new KeyDeriver(new PrivateKey(privateKeyHex, 'hex'))

// Remote storage over HTTPS is the default mobile-safe backend.
const storageManager = new WalletStorageManager(keyDeriver.identityKey)
await storageManager.addWalletStorageProvider(new StorageClient(keyDeriver, 'https://storage.example.com'))
await storageManager.makeAvailable()

const services = new Services(chain)
const signer = new WalletSigner(chain, keyDeriver, storageManager)
const wallet = new Wallet(signer, services)

const { tx } = await wallet.createAction({
  description: 'mobile send',
  outputs: [{ satoshis: 1000, lockingScript: recipientScript }]
})

移动钱包包括内置的 BRC-177 p nosend expiry 模块。 内容 活动远程存储必须运行迁移的钱包工具箱2.11-或更新服务 和默认显示器,它拥有跨重启和设备的过期执行. 能力谈判在针对一个更老的服务器预先供资前失败 。 见 完整过期指南。 。 。 .

使用大小写

最终重叠身份发现副本 绑定解析器收据,核实 配置钱包的完整交易图和条形锚 服务链跟踪器,并验证标准主体签名证书 信封上写着 在使用前重新检查已缓存的交易证据; 本地联系人 保留各自的政策。 见 身份核查指南 c01/C02/C03 兼容性定性和限制。 包含不是 证明新鲜或未用。 当前包装和包装消费者 核证工作仍有待审查.

手机上的自控BSV钱包

运行 BRC-100 钱包完全安装在设备上,并有远程存储以进行交叉设备同步.

桌面钱包的辅助应用程序签名器

在桌面运行更重的服务时, 将移动作为对接频道的签名符 .

仅接收移动应用程序

通过远程存储后端, 打开一个最小的钱包, 监视入境付款 .

被排除在外的对 @bsv/wallet-toolbox

不包括为什么
StorageKnex (SQLite, MySQL) (英语)在 React Industrial / Mobile Web vision 上找不到本地约束
StorageIdbIndexedDB 不是一个统一的 React 原生存储原始
仅节点文件系统及 os 帮助者无法移动

移动条目包括: Wallet, (中文(简体) ), WalletSigner, (中文(简体) ), WalletStorageManager移动 StorageClient, (中文(简体) ), Services, (中文(简体) ), Monitor, (中文(简体) ), WalletPermissionsManager, (中文(简体) ), WalletSettingsManager, (中文(简体) ), ArcSSEClient,以及相关的移动安全API. 它不导出 StorageIdb, (中文(简体) ), StorageKnex, (中文(简体) ), SetupClient,或者仅测试链执行.

钱包快照安全

钱包管理快照包含根关键材料,并有意包括 解密键的自定义格式,所以访问 快照是访问钱包。 将完整的快照存储在 iOS 键链中, Android Keystore 后置加密存储器,或可比较信任的秘密存储器. 别 使用普通 AsyncStorage、日志、分析、崩溃报告、剪贴板数据或 无防护装置/云层备份. 处理任何信任的快照 存储为钱包证书的折中,并旋转受影响的钱包.

StorageClient 和具有证书的拱廊SSE客户端需要 HTTPS 远程终点。 Plain HTTP 仅被接受为明确的回回转主机 在开发期间。 SSE 依赖调试日志被禁用, 因此调回 符号和授权信头无法到达设备日志 .

见 @bsv/wallet-toolbox 完整文档读取.

已准备好的BEEF(COOK)持久性是一种服务器侧Knex能力. 移动 存储保存 Canonical BEEF 路径,同时兼容远程存储 服务器可以在没有移动配置的情况下启用已准备的读取和写入,或者 线条格式变化.

CORS、CSP和公共服务

此客户端没有强制实施来源许可列表 。 原生移动请求不受浏览器 CORS 管理,而WebView 和混合客户端则可以. 远程存储服务仍应通过其预定的公共应用软件WUI、浏览器、扩展和移动呼叫器获得。 操作员可以默认地保留公共访问,或者在部署需要时配置一个明确的许可列表;部署不应该假设一个呼叫域.

CSP适用于Web vision或其他嵌入式网络应用程序. 将服务中的 HTTPS 来源添加到消费应用程序中 connect-src 政策。 将认证和授权保留在协议/服务层,而不是将CORS作为认证机制.

捐助者检查

从寄存器根起,在运行已安装的消费者移动门前先构建 SDK 和软件包 :

pnpm --filter @bsv/sdk build
pnpm --filter @bsv/wallet-toolbox-mobile build
pnpm --filter @bsv/wallet-toolbox-mobile test:mobile

闸口在清洁工程中安装被包装的包件,与地铁捆绑,检查公共出口和移动安全模块合同,验证出源地图,与赫尔墨斯一起编译结果,执行压缩和未压缩大小预算.

经审查的2.14.2名身份候选人 b088c1bef 地铁措施 2 379 919 / 612 262页 462,261 (韩语) 字节和 Hermes 4 629 563 / 1 943 675 / 1 510 174 字节 (raw/gzip/Brotli) (英语). 与先前未公布的2.14.2候选人相比, Metro gzip增长3,553字节(0.58%). 这是所需的 SDK/工具箱 身份匹配器、便携式文本标识和直接过滤器守卫;无新 采用了依赖、节点适配器或公共出口。 包装的消费者 通过模块/运行时间构成和源图检查并编译为 赫尔墨斯 已编制的预算至少保留了10%的经审查的会议室以上 测量,四舍五入到5000字节,遵循共享文物政策. 所有组成和字节划分的大门仍然执行.

许可证

此软件包将在 打开 BSV 许可证版本 6。 。 。 . 随行 第三次议会 NoTICES.md 财务报告和审定财务报表 属性/ 保存早先编入 移动建设.

WAB 水龙头费兼容性

2.14.6版本载有当地签字人独立验证的费用/更改 通过权限管理器输出到 SDK 完成动作绑定 。 升级 带有 SDK 曝光 completeBoundAction.outputAuthorizationVersion=1; 较旧的 SDK 同龄人保持严谨的行为,不享受有价水龙头 修复。 使用同一软件包实例的钱包和认证管理器 . 串行结果丢弃本地授权. 参见完整的工具箱 README SDK3迁移和不变的注册重试/和解限制.

重建前冲突恢复

2.14.7 候选保存远程存储器的空尝试-TXID sentinel 仅用于交易构建前的限值双支出审查. 没错 不授权重试。 应用程序必须核实完整的相竞交易 与请求的明确输入相对应,同步被接受的赢家,然后 在重建前读取新状态。 将应用程序 SDK 与 钱包解析器。 使用现有的 JSON 钱包 API 用于结构化审查错误 ; 二进制线格式不变。 不需要数据库或呼叫迁移.

SDK4 热补丁对等要求

SDK4 对等替代开始于 @bsv/sdk ^4.0.1,恢复数字 钱包结果和遗留线条相容性。 现有的SDK2/3替代品和 下限不变。 SDK4 用户应安装 4. 0.1 个热补丁; 不 需要应用程序-wallet线或数据迁移.

版本与发布记录

@bsv/wallet-toolbox-mobile 共发布 209 个版本,首次发布于 2025/05/07;过去 12 个月发布了 130 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
2.15.3latest2026/11/053 天前
2.15.22026/11/054 天前
2.15.12026/10/2811 天前
2.15.02026/10/2415 天前
2.14.92026/10/1425 天前
2.14.82026/10/1326 天前

其他发布通道:next → 2.0.0-beta.1,beta → 2.0.25-beta.1,alpha → 3.0.0-alpha.0。

关于 @bsv/wallet-toolbox-mobile 的常见问题

@bsv/wallet-toolbox-mobile 是什么?

反应原生和移动安全 BRC-100 钱包、签名器和远程存储组件

如何安装 @bsv/wallet-toolbox-mobile?

在项目目录运行 npm install @bsv/wallet-toolbox-mobile,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@bsv/sdk(^2.8.0 || ^3.0.0 || ^4.0.1)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@bsv/wallet-toolbox-mobile 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@bsv/wallet-toolbox-mobile 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@bsv/wallet-toolbox-mobile 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@bsv/wallet-toolbox-mobile 可以商用吗?

@bsv/wallet-toolbox-mobile 使用 SEE LICENSE IN LICENSE.txt 许可。许可条款写在包内的独立文件中,请阅读该文件确认可否商用。以上为概括,不构成法律意见,请以许可原文为准。

@bsv/wallet-toolbox-mobile 的下载量有多少?

根据 npm 官方下载统计,@bsv/wallet-toolbox-mobile 在 2026/10/09 – 2026/11/07 这 30 天内被下载 5,091 次,日均约 170 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@bsv/wallet-toolbox-mobile 还在维护吗?

最新版本 2.15.3 发布于 2026/11/05(3 天前);至今共发布 209 个版本,其中过去 12 个月发布了 130 个;首次发布于 2025/05/07。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。