技术支持 文档

设置您的比特币全节点

使用您自己的比特币全节点设置 Ledger Live,为您的余额提供最佳隐私和更有力的保证。利用此高级功能,您可以在不使用 Ledger 浏览器的情况下进行同步并发送交易。

 实验性功能

对全节点的支持目前还是实验性功能。这意味着此功能还需要修复部分漏洞和限制才能作为常规功能发布。仅建议高级用户使用此功能。请注意,目前我们不为与此实验性功能相关的问题提供任何技术支持。 

比特币全节点连接的运作方式

Ledger Live 默认连接至 Ledger 的比特币浏览器,无需设置和维护节点即可快速同步账户。不过,易于使用的代价,是要依靠 Ledger 的节点提供准确的账户余额,同时不存储用户地址。

凭借 Ledger SatStack,高级用户可以将 Ledger Live 连接至自己的比特币全节点。Ledger SatStack 是小型开源应用程序,其功能是充当 Ledger Live 和全节点之间的桥梁。SatStack 运行时,Ledger Live 可以指示节点扫描账户、检索余额和广播交易。

比特币全节点会验证所有交易和区块,并存储完整的比特币交易历史记录。因此,全节点可以随时以完全自主的方式给出某比特币地址的余额。

准备工作

  • 通过通知栏更新 Ledger Live 或下载最新版本
  • 记下您节点的 RPC 凭据、IP 地址和端口号。
  • 确保您具备运行节点所需的下列计算机资源:
    • 至少 2 GB 内存
    • 350 GB 磁盘空间
    • 没有流量限制的宽带连接
    • 每天 6 小时正常运行时间

要详细了解运行全节点的先决条件,请参考下列文档:运行全节点

将您的比特币全节点连接至 Ledger Live 

要将您的比特币全节点连接至 Ledger Live:

  1. 在 Ledger Live 中,前往 Settings > Experimental features(设置 > 实验性功能)。
  2. 向下滚动屏幕,找到 Connect Bitcoin full node(连接比特币全节点)选项,然后点击 Connect(连接)。
  3. 设置全节点并完全同步后,点击 Continue (继续)。

       我们建议在运行节点时在 bitcoin.conf 配置文件中令 txindex=1。 

  4. 根据您的个人情况,Host(主机)字段中输入节点参数(<IP address>:<port>)(IP 地址:端口):
    • 如果 Bitcoin Core 与 Ledger Live 在同一台计算机上运行,请使用默认值 127.0.0.1:8332。
    • 如果您为节点配置了静态 IP 地址,请将默认 IP 地址 127.0.0.1 替换为全节点的 IP 地址。
    • 如果您使用的是托管节点解决方案,请输入网址。
  5. 为节点输入 RPC 凭据,在 bitcoin.conf 文件中进行配置,该文件可在您的节点管理面板(如 mynode 等)或下列目录中找到:
    • Windows:%APPDATA%\Bitcoin\

    • OSX:$HOME/Library/Application Support/Bitcoin/

    • Linux:$HOME/.bitcoin/

  6. 需要时启用 Transport Layer Security(传输层安全)。
  7. 与节点成功连接后,点击 Continue(继续)。否则,请检查您提供的参数并重新尝试。

配置您的账户

您的全节点需要知道区块链上有哪些地址属于您的账户。因此,Ledger Live 将使用您的 Ledger 设备来配置您的全节点,以便随后扫描您的账户。Ledger SatStack 允许您将 Ledger Live 连接至您的全节点。由于使用 Ledger Live 时必须运行 Ledger SatStack,因此您应当考虑让它在系统启动时自动启动。

  1. 为要扫描的每种地址类型配置账户数。
    默认值为每种地址类型 10 个账户:Legacy、SegWit 和 Native SegWit。如果您任意类型地址的账户数量超过 10,则只需增加配置账户数即可。
  2. 点击 Continue(继续)。
  3. 连接并解锁您的设备。然后打开比特币应用程序。
    在 Ledger Live 从您的设备获取账户时,请稍候。

  4. 将账户信息添加到节点配置文件后,点击 Continue(继续)。此文件在用户数据文件夹中保存为 lss.json

  5. 点击 Download SatStack(下载 SatStack)按钮,获取适用于您操作系统的最新版 SatStack。

  6. 解压下载文件,打开 SatStack 可执行文件。如果未识别应用程序开发人员,您可能需要在打开 SatStack 时进行确认。
    您的全节点现在应当正在扫描您的账户。

  7.  等待进度加载器达到 100% 或点击 Continue(继续)并按照 Experimental Settings(实验性设置)选项卡中的进度进行操作。

所有比特币账户都将从您的资产组合中移除。您可以在账户扫描完成后将这些账户与全节点一起添加回来。

添加您的账户

连接全节点并完成账户扫描后,即可正常添加账户。如需详细了解如何添加账户,请参考下文:添加账户。 

  账户使用多个恢复短语或一个密码短语?

如果您的账户使用多个恢复短语、一个密码短语,或者如果您在同一地址类型下拥有超过 10 个账户,则您的全节点必须扫描区块链以查找所有关联的账户。为此,请前往设置中的全节点设置,并确保在您的全部账户中配置节点。此流程将会改进。

了解全节点状态

Settings > Experimental features > Connect Bitcoin full node(设置 > 实验性功能 > 连接比特币全节点)中可为您的全节点显示下列状态消息。

状态 描述
Ready(准备就绪) 全节点已经完全同步。可以添加比特币账户,且账户余额正确。
Loading(加载中) SatStack 正在核实总流通供给。
Node sync in progress...(正在进行节点同步...) 全节点正在同步新区块。最近的交易可能尚不可见,因此比特币账户余额可能不正确。请尽可能连续运行您的节点,使其保持同步。
Account scan in progress...(正在进行账户扫描...) 全节点正忙,当前正在扫描区块链获取您的账户余额。账户扫描完成后,即可在 Ledger Live 中添加您的账户。
Could not reach SatStack(无法访问 SatStack) Ledger Live 连接 SatStack 时遇到问题。请核实 SatStack 是否在同一台计算机上的命令行终端内运行。
Could not reach node(无法访问节点) 全节点已离线,或者您输入的连接设置不正确。要编辑节点连接设置,请前往 Experimental features > Connect Bitcoin full node(实验性功能 > 连接比特币全节点)。

已知漏洞和限制

由于对比特币全节点的支持仍是一项实验性功能,因此还需要修复部分漏洞和已知限制才能作为常规功能发布。 

漏洞
  • 待处理交易发送后不能很快显示在操作列表中。网络进行首次确认后会显示这些交易。
  • 已确认的币被显示为 pending(待处理)。
  • 添加尚未配置节点的账户时不显示错误消息。该账户将不会进行任何操作,因为全节点尚未扫描区块链核实此账户。
  • SatStack 配置文件包含重复的账户条目。
  • SatStack 关闭时,账户同步状态显示:Could not reach full node(无法访问全节点)。
  • 进行第一步设置时,节点连接超时过长。
  • 可以点击模块之外的区域来关闭设置流程。
  • 部分措辞遗漏或错误。
限制
  • 从非用户所有地址接收的交易不显示发送者地址。解决方法是在节点配置文件 bitcoin.conf 中添加 txindex=1。如果不启用 txindex,全节点就不会跟踪第三方地址。
  • MacOS:SatStack 目前尚未经过公证,这意味着用户必须通过右键点击菜单或通过 System Preferences > Security & Privacy(系统偏好 > 安全和隐私)打开应用程序。
  • 通过多个恢复短语或一个密码短语添加账户需要重复设置流程。此流程将会改进。
  • SatStack 版本尚未由 Ledger Live 强制执行。您不会收到更新提醒,需要手动查找更新。
  • 交易费用估算需要改进。