我正在测试一些与比特币相关的代码,为了测试它在docker容器中安装了bitcoin-testnet-box.
我使用本指南:https: //registry.hub.docker.com/u/freewil/bitcoin-testnet-box/
我没有任何问题地拉动并运行了码头.
但是,我无法编辑其目录中的bitcoin.conf文件,因为我没有安装像NANO这样的编辑器.
我想要做:
sudo apt-get install nano
Run Code Online (Sandbox Code Playgroud)
但它不起作用.我该如何解决这个问题?
我有一个比特币地址,可以将一些比特币发送到 3 个比特币地址。我应该使用哪个 API 来检查所有地址是否都收到了 BTC?
我已经尝试了几个小时,我只是不知道我做错了什么。它仅用于规划/研究(非高性能)——使用来自 github 的一些代码——但我需要看到它的功能。
RPC_USER = username
RPC_PASS = pasword
rpc_id = ID HERE
jsonrpc = "2.0"
payload = {"jsonrpc": jsonrpc, "id": rpc_id, "method": method, "params": params}
authstr = base64.encodestring(bytes('%s:%s' % (RPC_USER, RPC_PASS), 'utf-8')).strip()
request_headers = {"Authorization": "Basic %s" % authstr, 'content-type': 'application/json'}
try:
response = requests.get(RPC_URL, headers = request_headers, data = json.dumps(payload)).json()
print(response['result'])
except Exception as e: print(str(e))
if response['id'] != rpc_id:
raise ValueError("invalid response id!")
Run Code Online (Sandbox Code Playgroud)
我收到如下错误:
这是整个追溯:
Expecting value: line 1 column 1 (char 0) # 打印异常
Traceback (most …Run Code Online (Sandbox Code Playgroud) 找到一篇文章解释如何从公钥生成比特币地址: https://en.bitcoin.it/wiki/Technical_background_of_version_1_Bitcoin_addresses
但想知道这个过程是否已经在bitcoinjs或任何其他 JS 库中实现。所以我不需要手动执行指南中的所有 8 个步骤
正如标题所暗示的,我是 C++ 的新手,并在 Code::Blocks IDE 上练习了许多不同的程序。我今天想到了这个,似乎无法得到准确的答案。我是否会因不正确使用指针而无意中损坏操作系统上的数据?再详细一点,将:
char *p ; //creating uninitialized pointer with a random address;
//let's assume it's the address to a variable within a valid file?
*p = 'G' ;
//or
int *p ;
*p = 2 ;
Run Code Online (Sandbox Code Playgroud)
在我的 IDE/编译器文件中执行此操作可能会损坏某些数据,例如:
操作系统文件 - 也许核心操作系统文件和从 1 ---> 2 的值更改可能导致对外部设备的物理损坏。
和/或
C: 驱动器上未打开的随机文件 - 例如,一个重要文件已被 256 位加密;单个值的更改将使解密文档几乎不可能,从而导致完全损坏且无法恢复的重要文档。直到几个月后,当我尝试打开文件但在解密过程中收到错误消息时,我才会意识到这种损坏。
和/或
使用临时内存的打开程序 - 例如,假设我目前正在运行一个冷存储比特币钱包程序(一个糟糕的程序),并且假设该程序打开了一个动态分配的加密文件。该文件包含访问 10 万美元冷存储比特币所需的备份密钥验证文件;文件中的字符更改将永久损坏文件并基本上导致恢复密钥备份数据的丢失。因此,如果我忘记了我的比特币钱包密码,尝试使用恢复功能将失败,并导致永久丢失一栋漂亮房子的首付。
所以这些是一些例子,我想知道它们中的任何一个是否可以简单地通过摆弄指针,尝试学习 C++ 来实现。我不想在现在或将来意外导致上述任何情况(可能正在从事一个更大的项目,而上述情况会导致灾难),所以请让我知道这些情况是否可能(尽管非常发生的可能性很小,但仍有可能)。如果有可能使用无效指针破坏操作系统内的数据,扩大内存泄漏等,请您解释一下防止上述情况的动态。
我希望对两个 tx 进行双重哈希,以构建默克尔树
这个
const bsv = require("bsv");
var tx1 = '3a459eab5f0cf8394a21e04d2ed3b2beeaa59795912e20b9c680e9db74dfb18c';
var tx2 = 'be38f46f0eccba72416aed715851fd07b881ffb7928b7622847314588e06a6b7';
bsv.crypto.Hash.sha256sha256(Buffer.concat(
[ tx1, tx2 ].map( v => Buffer.from(v, 'hex') )
)).toString('hex');
Run Code Online (Sandbox Code Playgroud)
正在给我
215f8397a3090a0bc8f4a2e98609a10d55fc7b939fa1ecf9803df20b1ee089a2
Run Code Online (Sandbox Code Playgroud)
但应该是
13a3595f2610c8e4d727130daade66c772fdec4bd2463d773fd0f85c20ced32d
Run Code Online (Sandbox Code Playgroud)
我如何得到正确的结果?
我最终的目标是为比特币创建一个付款请求对象,特别是bip 70,因为我想捕获一个有效的返回地址,但是我不确定使用Django返回probuff响应对象的正确方法。
import payments_pb2
x = payments_pb2
x.address = 'home'
return render_to_response(x)
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激 :)
谢谢
我忘了我的比特币备份的密码,并想蛮力解密它.我得到了这个信息; "手动备份文件使用您选择的备份密码加密.您可以使用OpenSSL解密:
openssl enc -d -aes-256-cbc -a -in <filename>"
Run Code Online (Sandbox Code Playgroud)
不幸的是,我没有太多的经验这样做,所有我能做的就是在终端要求输入密码.任何人都可以给我说明如何使用OpenSSL强制解密文件?
nb密码很简单,只使用字母和一个数字.
所以,我在他们的官方文档上阅读有关比特币脚本的内容,并发现这句话:" 脚本很简单,基于堆栈,并且从左到右处理.有目的地没有图灵完整,没有循环. "我试图推理很难,但无法理解为什么有人会使一种语言" 有目的地非图灵完整 ".这是什么原因?如果一种语言成为图灵完成会怎样?并进一步扩展," 无循环 " 是否与非图灵完成的脚本有关?
scripting programming-languages turing-machines turing-complete bitcoin
BCH正则表达式最近(在API中)更新为: "address_regex": "^([13][a-km-zA-HJ-NP-Z1-9]{25,34})|^((bitcoincash:)?(q|p)[a-z0-9]{41})|^((BITCOINCASH:)?(Q|P)[A-Z0-9]{41})$"
这是隔离见证的东西吗?
我知道现在是说地址可能以“ bitcoincash:”或“ BITCOINCASH:”开头,但这是一回事,或者它是某个内部Coinbase名称吗?
bitcoin ×10
javascript ×2
json ×2
brute-force ×1
c++ ×1
coinbase-api ×1
corruption ×1
django ×1
docker ×1
encryption ×1
memory ×1
nano ×1
node.js ×1
openssl ×1
payment ×1
php ×1
pointers ×1
python ×1
regex ×1
rpc ×1
scripting ×1
segwit ×1