问题标签 [bitcoinj]
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.
java - Bitcoinj 不会增加钱包价值
这是钱包、区块和 PeerGroup 的初始化:
这是交易代码:
但是当我运行程序时,我遇到了这个错误:
java - 仅使用 BitcoinJ 中的私钥获取压缩的公钥和比特币地址
我已经知道使用 BitcoinJ 中的 ECKey 对象从 base58 编码的私钥中获取公钥。请参阅示例代码。
但是我仍然不明白从“密钥”对象中获取压缩的私钥和比特币地址。我尝试了一些compressPoint()方法。但我没有成功。
java - 在 BitcoinJ Java 中从 WIF 生成 P2SH 比特币地址
我正在尝试从 WIF 私钥创建 P2SH-Segwit 比特币地址。我在 Java 中使用 BitcoinJ 库。请参阅以下代码。
它的输出公钥是 03b5319c83adf4a2e274c37401623c7bf0ba453cee3e119f3bc2c523d27059b64f。它的输出 P2SH 地址是 3Az5wdibtPRGac41aGtyqzT1ejtobvb6qW,这与正确的 P2SH 地址 38SGXvkMvq8Tsop8rFx2K4JnaFKYZkjd5z 相差甚远。
如果你们中的任何人知道要纠正这个问题,我很乐意听取您的意见。
bitcoinj - 坚持配置比特币核心构建
跟随 Andreas Antonopoulos 大师比特币书籍。
遗憾的是,我已经卡在第 3 章,配置比特币核心构建。
- 我克隆了比特币源代码的本地副本。
- 选择了比特币核心版本。(v0.11.2) $ git 状态
当我尝试打开更多 doc/build-windows.md 命令时,我得到 Invalid Parameters - /build-windows.md
使用文件资源管理器后,我看不到 build-windows.md 文件
我不知道我需要为我的 Windows 机器安装哪些存储库并且无法运行 ./autogen.sh
请帮忙?
java - 如何使用 bitcoinj 库从现有钱包发送交易?
我们正在尝试使用 bitcoinj 0.15.10 库来管理比特币钱包。我们遇到的问题是我们如何将现有钱包与我们的代码连接起来,以便我们进行交易。我们已经尝试了在文档和来自 github 的示例中可以找到的所有内容,但没有任何效果。在这里,我们找到了一些代码示例,但它给我们带来了钱包中没有钱的错误。
打印钱包显示钱包没有交易,也没有比特币。我们从 block.io 网站加载了一个有效种子的钱包,并在上面获得了一些 BTC。这是我们得到的错误:
有人可以帮助我们使用 bitcoinj 库将我们的 java 代码与现有的 BTC(testnet)钱包连接起来吗?
java - 如何在 bitcoinj java 或 kotlin 中从比特币的负私钥生成正私钥
我在比特币中使用 -13 作为私钥,但私钥无效。如何使用 Bitcoinj 或 java 从 -13 或任何其他负数中获取正私钥并生成相同的地址?
java - 当资金已发送到本地 regtest 网络上的特定比特币地址时,我如何获得通知?
我想以编程方式检测何时有人将比特币发送到某个地址。这发生在我开始使用这个docker-compose.yml文件的本地测试网上。
一旦本地测试网运行,我使用创建一个新地址
假设它返回2N23tWAFEtBtTgxNjBNmnwzsiPdLcNek181
。
我将此地址放入以下Java 代码中:
然后我用这个类启动 Java 应用程序。
然后我将一些测试比特币发送到相关地址:
如果我去http://localhost:3002/tx/068c377bab961356ad9a3919229a764aa929711c68aefd5dbd4c7c348eef3406
,我会看到交易细节。
但是,侦听器(onCoinsReceived
方法)中的断点永远不会激活。
我如何需要修改我的代码和/或我用来发送测试 BTC 的命令,以便当该账户收到钱时,onCoinsReceived
调用方法?有什么地方可以告诉我Wallet
或者NetworkParameters
我想连接到本地主机吗?
我正在使用 0.15.10 版的 bitcoinj-core。
更新1:
我修改了 docker-compose.yml并添加了以下端口映射:
然后我重写了init
方法,以便我可以连接到 localhost 并指定端口:
LocalTestNetParams允许指定端口:
我尝试了所有上述端口netParams.setPort(50001);
。
在所有情况下,我都会收到以下消息kit.awaitRunning();
:
10.10.1.218
似乎是由InetAddress.getLocalHost()
in生成的org.bitcoinj.kits.WalletAppKit#connectToLocalHost
:
更新1:
我尝试使用network_mode: "host"
.
如果我将它添加node
到
运行时出现以下错误docker-compose up -d
:
如果我将它添加到electrumx
部分中
我得到另一个错误:
更新 2:
如果我注释掉端口绑定,如
然后跑docker-compose up -d
我得到
更新 3:我假设错误的根源是在我的 Java 代码中,我尝试连接到 ElectrumX 服务器而不是实际的比特币节点(node
in docker-compose.yml
)。
更新 4:
我更改docker-compose.yml
如下:
现在我收到不同的错误(此处提供完整日志):
更新 5:
有人建议(在现在删除的评论中)在应用程序的输出中有以下Peer does not support bloom filtering
消息:
所以我尝试 fork 原始图像并更改bitcoin.conf文件以启用 Bloom 过滤:
当我运行时,docker build -t mentiflectax/bitcoind-custom-regtest:latest .
我收到以下错误消息(可以在此处找到部分剩余输出):
更新 6:正确的端口似乎是 19000。
如果我使用端口 19001,我会在之后收到以下错误kit.awaitRunning()
:
完整的日志输出可在此处获得。