gpt4 book ai didi

python - Bitcoinrpc 连接到远程服务器

转载 作者:太空宇宙 更新时间:2023-11-03 18:37:17 26 4
gpt4 key购买 nike

嘿,我想知道是否有人知道如何使用 bitcoinrpc 连接到位于另一台服务器上的比特币钱包

我正在运行一个用 django 编写的 Web 程序,并使用一个名为 bitcoinrpc 的 Python 库来建立连接。

在本地测试时,我可以使用 bitcoinrpc.connect_to_local),甚至可以使用 bitcoinrpc.connect_to_remote('account','password'),只要帐户和密码与我的 'bitcoin.conf' 中指定的值匹配,此方法就可以正常工作。 conf' 文件。然后,我可以使用连接对象获取值并在我的 django 站点中执行一些任务。

connect_to_local 中的第三个参数是默认的 localhost。我想知道:

A) 为第三个参数指定什么,以便从我的网络服务器连接到存储在我的家庭电脑上的钱包(是我的 IP 地址吗?)

B) 因为钱包位于我的 PC 上而不是某个专用服务器上,这是否意味着我的 IP 会发生变化并且我将无法访问钱包?

C) 连接字符串位于 django 应用程序中 - 该应用程序托管在 heroku 上。 Heroku 应用程序是通过 git 推送来启动的,但我相信它是一个私有(private)存储库。尽管如此,如果有人能看到我“观点”的前几行,他们就拥有了拿走我的 BTC(或更准确地说,mBTC)所需的一切。任何人都知道这有多糟糕 - 或者有任何方法可以以更安全的方式进行比特币支付/移动。

非常感谢。

最佳答案

我目前正在做一些非常类似的事情(heroku 使用express/nodejs 而不是 django/python tho),所以我会尝试分享我的想法。

尽管使用其他库和其他语言,所有钱包远程库应该主要是 JSON RPC(远程过程调用)API 的包装器,这实际上对于大多数硬币来说都是相同的(我会说所有,但这只是一个疯狂的猜测)。

特别针对您的问题:

A)

要从外部访问钱包,请使用您的外部 IP(找到它的最快方法是在 google 上查询)。根据您的 ISP,您希望拥有静态外部地址。您必须将此地址提供给 rpcallowip= 选项下的 bitcoin.conf 文件,以允许传入连接。

此外,您应该将家庭路由器中使用的端口(通常在 NAT 设置下)转发到本地计算机,以便允许来自服务器的传入连接并将其重定向到您的钱包计算机。

有一件重要的事情需要考虑( https://en.bitcoin.it/wiki/Running_Bitcoin ):

By default, only RPC connections from localhost are allowed.  Specify
as many rpcallowip= settings as you like to allow connections from
other hosts (and you may use * as a wildcard character).
NOTE: opening up the RPC port to hosts outside your local
trusted network is NOT RECOMMENDED, because the rpcpassword
is transmitted over the network unencrypted.

我还没有进一步研究它,仅从这个评论来看,它似乎完全无法用于货币交易。

B)

正如我之前所说,这取决于您的家庭 ISP、连接类型以及为您提供的服务。

C)

如果我从django的角度理解正确,只要登录参数(用户名/密码)位于 View (应用程序的views.py)内并且 Debug模式打开关闭,服务器的源代码不应公开访问。但 A 的安全担忧仍然存在。

关于python - Bitcoinrpc 连接到远程服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21324050/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com