标签: bitcoin

处理Android中的未知URI方案(比特币示例)

我想在Android应用程序的PreferenceScreen中集成"通过比特币捐赠"按钮.

有一些适用于Android的比特币客户端,比特币维基定义了一个应该用于BTC支付的URI方案.

我试过以下代码

findPreference(getString(R.string.preference_donateBitcoin)).setOnPreferenceClickListener(new OnPreferenceClickListener() {

            @Override
            public boolean onPreferenceClick(Preference preference) {
                String url = getString(R.string.pref_donateBitcoin_uri);
                Intent i = new Intent(Intent.ACTION_VIEW);
                i.setData(Uri.parse(url));
                startActivity(i);
                return false;
            }
        });
Run Code Online (Sandbox Code Playgroud)

withou在手机上安装了BTC.我尝试使用以下URI启动intent:bitcoin:19iSEgNkJnEUtNDuuTkkZrU44PVKYMVfhz?amount=1期望Android告诉我没有安装处理程序.

相反,我得到了一个 ActivityNotFoundException

android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=bitcoin:19iSEgNkJnEUtNDuuTkkZrU44PVKYMVfhz?amount=1 }
Run Code Online (Sandbox Code Playgroud)

我的问题是正确处理(读取"最佳实践")设备未知的URI方案.

  • 如何检查某个URI方案是否至少可以由一个应用程序处理?(如果更多,我想一个选择屏幕)
  • 关于比特币,但没有提到任何特定的客户,通过比特币支付时,最好的意图应该是什么?没有安装BTC客户端时如何处理?

[编辑]:问题是错误的,因为我搞砸了我的手机备份,并假设比特币钱包应用程序安装时没有.

android android-intent bitcoin

5
推荐指数
1
解决办法
1773
查看次数

如何在没有钱包中的私钥的情况下检查0确认的比特币交易?

我正在编写一个接受比特币支付的网站,但我不想在服务器上保留任何私钥.我正在使用所谓的"懒惰API"方法,我提前离线创建私钥和地址,然后让客户发送给他们,我希望在事务发生时尽快得到通知,尽快,有0个确认.

我无法弄清楚如何以编程方式执行此操作,除非我将私钥添加到bitcoind的钱包,出于安全原因我不想这样做.我宁愿用PHP来做,但我会满足于此.

php transactions confirmation bitcoin

5
推荐指数
1
解决办法
4177
查看次数

如何从我的应用程序中检查比特币地址余额?

我如何检查比特币地址(任何,不一定是我的)的余额,比如说在 Java 应用程序(或任何其他语言)中?

我需要一个像上一个功能blockchain.infobiteasy.com但我不希望使用自己的API。比特币是开源的,所以我想也许自己获取数据不会那么困难?

bitcoin

5
推荐指数
1
解决办法
1万
查看次数

从远程服务器解析JSON数据

我想知道是否有任何方法可以在PHP中使用Parser从这个站点获取值https://btc-e.com/api/2/btc_usd/ticker并将它们设置为php代码中的变量?

我已经看了一下php解析器,我发现的唯一的东西就是回显网站上所有信息的解析器.

php parsing json bitcoin

5
推荐指数
1
解决办法
1万
查看次数

比特币矿池挖矿的层连接

我正在编写一个比特币矿工,该矿工使用层协议在矿池中进行挖掘(请参阅此处的文档。

层协议使用 JSON-RPC 2.0 作为编码,根据 JSON-RPC 2.0 规范(此处的规范)我应该使用套接字来创建到池的连接。

我的问题是我似乎无法从池中收到回复。JSON-RPC 2.0 规定,对于我发送的每个 Request 对象,我必须收到一个响应。

这是我的代码:

public static void main(String[] args) 
{
    connectToPool("stratum.slushpool.com", 3333);
}    
static void connectToPool(String host, int port)
{
    try
    {
        InetAddress address = InetAddress.getByName(host);
        out.println("Atempting to connect to " + address.toString() + " on port " + port + ".");

        socket = new Socket(address, port);
        String message1 = "{\"jsonrpc\" : \"2.0\", \"id\": 1, \"method\": \"mining.subscribe\", \"params\": []}";

        PrintWriter output = new PrintWriter(socket.getOutputStream(), true);
        BufferedReader …
Run Code Online (Sandbox Code Playgroud)

java json bitcoin

5
推荐指数
1
解决办法
2245
查看次数

未找到 Qt 依赖项

我正在尝试在我的 Mac 上编译比特币核心,并且我也想使用 QT 来开发该项目。这是 GitHub 上的说明:https : //github.com/bitcoin/bitcoin/blob/0.14/doc/build-osx.md

我已经设置了我的 QT:

$ qmake --version
QMake version 3.0
Using Qt version 5.5.1 in /usr/local/Cellar/qt@5.5/5.5.1_1/lib
Run Code Online (Sandbox Code Playgroud)

然后当我运行 ./configure --with-gui 它时会抛出以下错误:

checking for Qt5Core Qt5Gui Qt5Network Qt5Widgets... no
checking for QtCore QtGui QtNetwork... no
configure: error: Qt dependencies not found
Run Code Online (Sandbox Code Playgroud)

我无法在 QT 中运行 ./src/qt。它抛出这些错误:

make[1]: *** No rule to make target `bitcoin_qt'.  Stop.
make: *** [all] Error 2
11:24:14: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project bitocin (kit: Desktop) …
Run Code Online (Sandbox Code Playgroud)

macos qt bitcoin

5
推荐指数
0
解决办法
1664
查看次数

从种子中产生闪电秘密

我正在尝试在以下部分中实现该功能:Per-commitment Secret Requirements

generate_from_seed(seed, I):
    P = seed
    for B in 47 down to 0:
        if B set in I:
            flip(B) in P
            P = SHA256(P)
    return P
Run Code Online (Sandbox Code Playgroud)

其中“flip(B)”替换值 P 中的第 B 个最低有效位。

根据这个定义,如果我们有seed=0x0101010101010101010101010101010101010101010101010101010101010101I=1,我希望结果是

>>> from hashlib import sha256
>>> from binascii import hexlify

>>> hexlify(sha256(int(("00000001"*31)+"00000000",2).to_bytes(length=32,byteorder="big")).digest())
b'79356295f56e69998b9140cb77c63d3d80c93874259793a38d1dbd8678809ca9'
Run Code Online (Sandbox Code Playgroud)

因为flip函数执行一次,将第 0 个 LSB(最右边的位)设置为 0。

相反,结果是(测试向量):

>>> hexlify(sha256(int("00000000"+("00000001"*31),2).to_bytes(length=32,byteorder="big")).digest())
b'915c75942a26bb3a433a8ce2cb0427c29ec6c1775cfc78328b57f6ba7bfeaa9c'
Run Code Online (Sandbox Code Playgroud)

查看一个实现,很明显人们正在使用:

output[lp / 8] ^= (1 << (lp % 8));
Run Code Online (Sandbox Code Playgroud)

这在我看来是错误的,因为它正在改变字节的 LSB,如果 …

pseudocode endianness bitwise-operators bitcoin lightning-network

5
推荐指数
0
解决办法
133
查看次数

以太坊 Nonce 管理。错误随机数太低

我使用 web3 和供应商主网。我按合同进行了 2 笔交易。首先是批准方法,另一笔交易是多次转账。我将第二个签名存储在数据库中。如果第一笔交易成功,我发送第二笔交易/。第二个事务几乎总是错误 nonce 太低`。我该如何解决这个问题

bitcoin ethereum ether cryptocurrency

5
推荐指数
2
解决办法
7678
查看次数

如何从 API 访问 Kucoin OHLC 数据?

我需要从 Kucoin API 访问 kucoin Open-high-low-close 数据。

查看https://docs.kucoin.com/#get-trade-histories,我推断要访问 OHLC 数据(例如 BTC 与 USDT,带有每小时时间戳),地址应该是这样的:

https://api.kucoin.com/api/v1/market/candles?symbol=BTC-USDT&type=1hour
Run Code Online (Sandbox Code Playgroud)

这样做,我得到了数据的空列表{'code': '200000', 'data': []} (根据 kucoin API doc,代码200000对应于一个好的请求)

我做错了什么?

ps:同样的方法在 kraken api 上效果很好(例如https://api.kraken.com/0/public/OHLC?pair=xbtusd

非常感谢您的帮助!

api json cryptoapi bitcoin cryptocurrency

5
推荐指数
0
解决办法
456
查看次数

使用 Coinbase API 从一种加密转换为另一种加密

我试图创建一个 python 程序来将 ETH 转换为 BTC。我正在使用命令:

client.transfer_money("ETH Account ID ", to="BTC Account ID", amount="0.1", currency=:"ETH")

Run Code Online (Sandbox Code Playgroud)

我使用以下命令获取了帐户 ID:

client.get_accounts()
Run Code Online (Sandbox Code Playgroud)

并将 ID 复制粘贴到我的传输命令上。但是我收到此错误:

~/opt/anaconda3/envs/Coinbase/lib/python3.8/site-packages/coinbase/wallet/client.py in transfer_money(self, account_id, **params)
    338     params['type'] = 'transfer'
    339     response = self._post('v2', 'accounts', account_id, 'transactions', data=params)
--> 340     return self._make_api_object(response, Transaction)
    341 
    342   def request_money(self, account_id, **params):

~/opt/anaconda3/envs/Coinbase/lib/python3.8/site-packages/coinbase/wallet/client.py in _make_api_object(self, response, model_type)
    143     # All valid responses have a "data" key.
    144     if data is None:
--> 145       raise build_api_error(response, blob)
    146     # Warn the user about each …
Run Code Online (Sandbox Code Playgroud)

bitcoin coinbase-api ethereum cryptocurrency

5
推荐指数
1
解决办法
2006
查看次数