问题标签 [bitcoinjs-lib]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1875 浏览

javascript - 如何使用 bitcoinjs-lib 发送和接收比特币?

首先,我使用BIP32使用助记符创建 HD 钱包。

现在我想为每次接收使用xpubxpriv生成带有私钥的新子地址。

然后,例如,我在 2 个子地址中收到了 BTC,即 3 BTC 和 2 BTC。

现在,我必须将 4 BTC 发送给某人,然后我如何发送它,因为我有 3 BTC 但在一个单独的帐户中使用utxo

我如何管理这些账户和交易,以及如何向用户显示总余额?

所以,我不知道如何使用bitcoinjs-lib,BIP32 来实现它。

0 投票
2 回答
1731 浏览

javascript - 如何在 bitcoinjs-lib 上使用 Psbt?

我正在尝试创建一个原始交易以发送到区块链。为此,我想在浏览器中执行此操作。

我在哪里可以得到nonWitnessUtxo

我在这里列出的所有信息,都是我在测试中找到的。我在做正确的事吗?

如果有任何帮助,我将不胜感激!

0 投票
1 回答
431 浏览

bitcoin - 获得 66:优先级不足。尝试推送交易时

基本上我66: insufficient priority. Code:-26在尝试推送交易时得到

我已经尝试手动增加费用。 AMOUNT_TOSEND在聪

  1. total_receivedhttps://api.blockcypher.com/v1/btc/test3/addrs/+ address + '/full?limit=50' 中取值并将其乘以100000000
  2. 我从这里收取费用:https ://test-insight.bitpay.com/api/utils/estimatefee 并将其乘以100000000
  3. 以下是我计算输出的方法: tx.addOutput(ADDRESS_BENEFICIARY, Number(AMOUNT_TOSEND)) tx.addOutput(ADDRESS_BENEFICIARY, Number(balance) - (Number(AMOUNT_TOSEND) + Number(fee)))
  4. 粘贴到https://test-insight.bitpay.com/tx/send并获取66: insufficient priority. Code:-26
0 投票
0 回答
42 浏览

javascript - 从原始 tx 解码数据

假设,我需要从通常看起来像这样的对象tx获取数据:

一般来说,我需要做的是:

  1. 使用特殊库从脚本中提取地址参数。

  2. 检查此地址是否与我感兴趣的地址相对应。

  3. 获取此地址的值。

  4. 将地址和值都发送到下一步。

在某些情况下,库无法从脚本中解码地址并引发错误。这就是为什么我使用 try-catch 来跳过这些情况。

简单来说,我的代码如下所示:

想象一下,我在 outs 数组中有几个对象的 tx,其中一个对象存储了我要查找的地址。大多数情况下,一切正常,confirmTx 被按预期调用(仅针对该地址和值)。

但问题是,当使用其他地址和值调用confirmTx时会发生这种情况(并且该地址不应通过checkAddress(address))。

什么会导致问题?

0 投票
1 回答
277 浏览

javascript - 关于使用 xpub 和 Zcash 路径自动派生地址的问题

我目前正在为我的公司开发一个 API,它利用 xpub 和路径来生成地址。

问题是,我设法为我们需要的所有加密货币做到了这一点,除了 Zcash。我们使用的是 Trezor 硬件钱包,而 Trezor connect 对我们不起作用,因为我们需要将流与设备本身分离。

通常,我对所有其他硬币使用 bitcoinjs 库,但我无法为 zcash 导出正确的地址格式。花了很多时间搜索 github 问题,但没有运气。有帮助的话真的很棒,谢谢大家!我的代码目前如下所示:

0 投票
1 回答
295 浏览

javascript - bitcoinjs-lib 的前缀无效

我有这个代码:

我有这个错误:

我不明白发生了什么。目标地址是由电子钱包生成的,似乎是正确的。我正在使用测试网。

0 投票
1 回答
823 浏览

javascript - bitcoinjs-lib 节点 js 原始交易

我试图创建一个原始事务,但不知道为什么它显示 UtoxId 未定义的错误。

我认为这可能包含更多错误,因为它在 UtoxId 处停止。但我想知道如何解决这个问题并将我的输出作为事务 id、脚本十六进制、值、时间等。

0 投票
2 回答
391 浏览

javascript - 将 UInt8Array 转换为字符串

我正在开发一个涉及加密货币的应用程序,但在处理所涉及的某些数据的转换时遇到了麻烦。

我正在使用bitcoinjs-lib生成比特币地址。地址创建成功,我的响应对象如下所示:

我正在使用 IndexedDB 来存储创建的钱包。由于我正在生成不同类型的钱包,我的数据库调用如下所示:

我的数据很好地存储在我的数据库中,但我无法正确地将 UInt8Array 转换为字符串。我已经尝试了这篇文章中的几乎所有内容,但没有任何成功。

这是bytesToString我尝试过的功能:

我尝试使用 Node 的StringDecoder模块但没有成功。我也尝试过使用Buffer.from(privateKey).toString('utf-8').

我读过比特币地址使用 base 58 编码。我不知道这是否相关。

我没有任何使用缓冲区的经验,或者像这样的任何类型的转换。任何帮助将不胜感激。

0 投票
0 回答
42 浏览

java - 使用 BitcoinJ 将比特币支付添加到 java 应用程序

我需要使用 BitcoinJ 库将比特币支付添加到我的应用程序中,但我不熟悉使用比特币。我有一个想法为每个新用户创建一个新地址,但我不知道这是否是正确的方法。请告诉我如何正确实施它。

(我需要确定从哪个用户那里收到了付款以及金额)

0 投票
1 回答
638 浏览

javascript - js中的hd wallet bip44 - 如何为比特币以外的链创建地址?

我有一个小脚本,基本上取自bitcoinjs-lib 中的这个测试脚本

它非常适合派生比特币地址(派生路径"m/44'/0'/0'/0/0"),但是当尝试派生任何其他地址时,它似乎不起作用。输出是这样的:

该地址以 1 开头,而 RVN 地址以 R 开头。

我错误地认为仅通过更改派生路径以匹配 RVN ( 175) 就会生成 Raven 地址,但我肯定还缺少其他东西。

你能帮我弄清楚我哪里出错了吗?

我探索的其他资源: