搜索地址的派生路径

是否有人编写了一个实用程序或东西,能够搜索/识别地址所属的派生路径?例如,给出一个助记符,如“unknowledge open elite rabbit grunt spread session exotic legal satoshi trend electric”和地址“12rfNtgHFjLoK1y58S3gHijmGHV8t8iteT”,程序应返回其派生路径“m/44’/0’/1’/2/6”。
bip32高清钱包
分享
改进这个问题
跟随
8月10日14:52问
用户109087
2111青铜徽章
1
是的,我认为很明显我们需要通过暴力来继续,可能会限制范围(例如account={0-9},index={0-100}或者别的什么)。。。抱歉,我没有具体说明伊尔玛8月10日20:51
添加评论
3个答案
0
这是不可能的,除非有暴力。
一个地址不包含关于它是如何派生的,它是否与任何助记符有关,或者它是否遵循标准路径系统的信息。
绝对没有什么可以阻止您使用segwit派生路径派生p2pkh地址。
许多钱包确实有各种机制来尝试各种派生路径,以达到钱包对所选地址类型的间隔限制,但搜索特定地址是一件蠢事,除非你已经知道它属于某个助记键,对它的派生路径有一些模糊的概念(或者耐心尝试数十亿个组合)。在这些场景中,您通常更适合编写自己的脚本,以便在特定于您的案例的约束条件下完成它。
分享
改进这个答案
跟随
8月10日15:01答复
拉格哈夫苏德
15.9k33金徽章1818银徽章3939铜徽章
添加评论
0
是否有人编写了一个实用程序或东西,能够搜索/识别地址所属的派生路径?
嗨,这里是FinderOuter的开发者,我有一些想法,但还没有实现。最大的挑战是,我还没有看到任何这样的例子,所以我不得不猜测情况是什么。
一种情况可能是用户用钱包a创建一个助记符,然后将其导入钱包B并获得一个不同的地址。这将非常容易实现,因为它需要遍历已知路径的列表。这里唯一的额外工作是,如果一个用户的地址位于未知索引处,则派生多个地址。
另一种可能的情况是用户修改了路径,却忘记了修改。与密码恢复一样,用户必须通过提供额外信息来减少搜索空间,否则搜索空间太大,无法通过暴力进行搜索,更糟的是,有两个变量:深度和索引(深度的含义:m/x或m/x/x或m/x/x/x,…)。
将尝试在版本0.5.0中将这些想法作为新选项发布。
分享
改进这个答案
跟随
回复时间:8月10日15:39
编码爱好者
113822银牌1717铜牌
添加评论
0
我正在制作一个钱包:https://github.com/Pure-Wallet/crypto. 它当然还没有准备好生产,也不应该被信任的主要网络比特币。但它确实允许您输入一个助记符,并存储它生成的每个键的路径。
分享
改进这个答案
跟随

时光素材-香车美女  (110)blockchainBTC比特币区块链www.qkl91.com

在Electrum中,如何通过API查看/轮询钱包以获取到特定地址的传入付款?

我想创建一个简单的方式来接受我自己的比特币,使用Electrum。我不喜欢大音量。我想,一开始我最多只能收到一小部分付款。
也就是说,我生成了一个地址,在选择比特币作为支付方式的每一次结账时都会生成一个新地址。然后我需要通过Electrum的API查看一个地址,以获得一定金额的收入。至少是第一次确认,我想必须在1小时内到达。
如何实施?我不需要代码,但需要一个高层次的解释:使用什么API,潜在的警告和建议。
附笔。
我知道这个-https://electrum.readthedocs.io/en/latest/merchant.html ,但对我没用。我是一个开发人员,因此我可以创建一个更简单的解决方案,我也可以自定义我喜欢的。
交易
应用程序编程接口
驻极体
付款
商人
分享
改进这个问题
跟随
8月6日18:43编辑
墨奇♦
53.6K33232金徽章149149银徽章463463铜徽章
8月5日20:49问
齐尔纳马拉吉
4333青铜徽章
添加评论
2个答案
0
我已经通过JSONRPC接口使用了electrum3.3.8守护进程。一个简单的解释是如何在我的情况下工作:
我向Electrum发送“addrequest”命令,其中还包含BTC、memo、timeout的数量。
从Electrum获得回答中的付款地址并显示给付款人。
在数据库中存储地址以供进一步检查。
通过“listrequests”命令定期检查(cronjob)地址的状态。
如果状态为“已支付”,并且有1个以上的确认,则接受支付。
分享
改进这个答案
跟随
8月6日18:48编辑
8月6日18:40答复
弗拉德
13611银徽章55铜徽章
不是吗,因为我不会要求别人付款,但我会给他一个地址。因此listrequests不起作用-zirnamaraji 8月7日5:20
当您发送“addrequest”命令时,Electrum会向您提供一个地址,Electrum会开始监视该地址弗拉德8月7日8:20
Ты делал через 添加请求,но я делаю по-другому. Что я и описал. 添加请求мне не подходит – zirnamaraji 8月7日8:40
添加评论
0
实现这一点的最简单方法是使用像Coinbase Commerce这样的托管服务并利用它们的API。Commerce生成一个只有您控制的钱包,然后使用您的公钥代表您生成和监视地址。每个客户都有一个唯一的地址,服务会监控网络中是否有支付到该地址的款项。当检测到付款时,它会发送一个webhook,通知您未确认的交易以及随后的每一次确认。
分享
改进这个答案
跟随
回复时间:8月11日18:12
查斯丁·欧伯令
13622银质徽章33青铜徽章
你不识字吗zirnamaraji 8月12日8:36
添加评论

时光素材-香车美女  (11)blockchainBTC比特币区块链www.qkl91.com

为什么地址没有出现在getxout中?

我有一个比特币节点,但每当我试图获取xout时,就会得到以下响应:
user@bitcoin:~#比特币cli gettxout“0e3e2357e806b6cdb1f70b54c3a17b6714ee1f0e68bebb44a74b1efd512098”0
{“bestblock”:“000000000000007c11ddb3e10be41ef0f6a2a5dbc2915937df8a608c4af6”,“确认”:385308,“值”:50.00000000,“scriptPubKey”:{
“name”:“0496b538e853519c726a2c91e61ec11600ae1390813a627c66fb8be7947be63c52da758979515d4e0a604f8141781e6229472116bf621e73a82cbf2342c858ee OP\u CHECKSIG”,
“hex”:“410496B538E853519C726A2C91E61EC11600AE1390813A627C66FB8BE7947BE63C52DA758979515D4E0A604F8141781E6229472116BF621E73A82CBF2342C858EEAC”,
“type”:“pubkey”},“coinbase”:true}
user@bitcoin:~#bitcoin cli gettxout“0e3e2357e806b6cdb1f70b54c3a17b6714ee1f0e68bebb44a74b1efd512098”1
我的配置文件中有txindex=1,它被重新索引。还有什么我可以试试的吗?
比特币核心
比特币
比特币核心开发
分享
打印此问题
跟随
17小时前问的
官方的
1
新贡献者
添加评论
1个答案
0
无法打开输出。不是每个事务输出都有地址。不是每个事务输出都有地址。在本例中,您正在查看的输出虽然是标准输出类型,但没有关联的地址。它是一个没有地址的付费公钥脚本。因此gettxout不提供地址。
分享
改进这个答案
跟随
14小时前回答的
麻吉弟弟周立铭♦
52.5k44金徽章5454银徽章106106铜徽章
添加评论

时光素材-香车美女  (1099)blockchainBTC比特币区块链www.qkl91.com

Lightning bumpfee已完成,但未创建新事务。相反,它在“等待扫描”中等待

我有一个闪电通道开放交易,由于24小时的低费用等待。
所以我对产出指数发了一个bumpfee,如下所示:
lncli-fee—每字节的sat\u<new\u fee><txid>:<output index>
此操作已完成,返回值为0。
但是,从未创建新事务。
相反,命令中有一个输出:
lncli钱包挂件
在这里我看到<new\u fee>被指定,“outpoint”是txid:output_index 价值
那么我需要做什么来完成这个CPFP操作呢?
雷电网
打开频道
孩子为父母买单
分享
改进这个问题
跟随
昨天问
7黑客
11111青铜徽章
新贡献者
添加评论
1个答案
0
我的比特币没有父txn,所以这个bumpfee从来没有完成。
我重新启动了我的比特币lnd,重播了一个从另一个节点的mempool得到的原始txn,并再次发布了bumpfee。
一个新的txn在不久后被证实
分享
改进这个答案
跟随

时光素材-香车美女  (1098)blockchainBTC比特币区块链www.qkl91.com

为什么Secp256K1的基点G看起来不在椭圆曲线上?

据我所知,这是椭圆曲线上Secp256K1的基点G的坐标,十六进制和十进制格式。
十六进制
Gx=(79BE667E F9DCBBAC 55A06295 CE870B07 029BFCDB 2DC28D9 59F2815B 16F81798)
Gy=(483ADA77 26A3C465 5DA4FBFC 0E1108A8 FD17B448 A6855419 9C47D08F FB10D4B8)
十进制的
Gx=(550662630222773466957871889516853432650603453777594175500187360389116729240)
Gy=(3267051000207588169780830851305070431844712733806592432759389043357337482424)
我不明白的是,如果我把这些值输入相应的方程(y² = 十³ + 7) 如下所示,G点似乎根本不在曲线上。但它应该,对吗?那我做错什么了?
(32670510020758816978083085130507043184471273380659243275938904335757337482424)²
不等于
(55066263022277343669578718895168534326250603453777594175500187360389116729240)³ + 7
第256K1节
分享
改进这个问题
跟随
6月11日20点19分问
哈拉尔德1970
7922青铜徽章
添加评论
2个答案
9
secp256k1曲线是在x和y坐标上定义的,x和y坐标是有限域GF(2^256-2^32-977)的成员,换句话说,它们的运算只有在考虑模1157920892373161954235709850086879078532699846656640564039457584007908834671663时才成立。
550662630222773466957871889516853432650603453777594175500187360389116729240^3-(32670100207588169780830851305070431844712733806592432759389043357337482424^2+7)正是144204204965966086950630000066683750029333882594701370922768766245108435229027778170070871400814008711130951749952236093989437523978520937次115792089237316195423570985008687907853269984665640564039457584007908834671663.
分享
改进这个答案
跟随
回答是6月11日20点31分
彼得·维尔
67.1k88金徽章144144银徽章19219铜徽章
天哪,你们网站上没有MathJax吗可能是6月11日20点17分28分
@可能是某人:请参阅bitcoin.meta.stackexchange.com/q/563/208–Pieter Wuille Jun 11’20 17:41
@彼得维尔啊哈,这就解释了!非常感谢。我已经很久没有使用模了,所以我又在练习了。这是图g(x)=2x+1(mod 4)的正确表示吗(红色图表)mediafire.com/convkey/c56a/tcux7iwkbkqf7razg.jpg–Harald1970年6月13日12:56
@哈拉尔德:是的彼得维尔2月27日5:51
添加评论
-1
有限域数学和椭圆曲线不使用“正规运算”。例如,添加两个有限域元素a和b并不像a+b那么简单。它实际上是(a+b)%素数,其中素数是有限域的大小,这确保了封闭性的含义。也就是说,如果a在集合中,b在集合中,那么a+b也在集合中。我们这里的乘法也是一样。ab=(ab)%素数
所以对于gx和gy,你可以用这个(gy^2)%(2^256-2^32-977)=((gx^3)+7)%(2^256-2^32-977)。这些事实上是相等的。
分享
改进这个答案
跟随

时光素材-香车美女  (1097)blockchainBTC比特币区块链www.qkl91.com

在IBD期间:完整节点的初始区块下载,区块链从何处下载?

我知道完整节点需要先执行IBD,然后才能验证事务。所以,它下载到现在,这是众所周知的初始块下载分类帐。
但我不明白/不知道的是,区块链信息是从哪里下载的?其他完整节点是否参与了此活动,或者此信息是否存储在某个位置并从中检索?
感谢您的帮助!
块链

完整节点
分享
改进这个问题
跟随
22小时前问的
月球陨石坑
11344青铜徽章
新贡献者
添加评论
2个答案
1
是的,它们从连接到的其他节点下载块。
在比特币核心中,你可以选择是否是一个被删减的节点。在这两种情况下,所有的块都会被下载并完全验证,但在删减模式下,旧块在验证一段时间后会被删除。这有许多含义,但其中之一是修剪的节点不能帮助新节点执行IBD。
分享
改进这个答案
跟随
21小时前回答的
彼得·维尔
67.1k88金徽章144144银徽章19219铜徽章
添加评论
0
每个比特币节点连接到比特币网络(对等)上的许多其他节点。把它想象成和你分享信息的朋友。你可以问他们信息,他们也可以问你。
因此,新的比特币节点在第一次启动时,会在网络上找到其他对等节点,然后新节点会开始从区块链中请求比特币块,但它还没有(所有的块!)。所有对等方都将响应,共享他们自己的区块链副本中请求的区块。
当区块到达时,您的新节点将验证该区块是否有效,所有交易是否有效,以及它是否链接到上一个区块,并在完成此操作后将其添加到其自己的区块链副本中。
这个过程对从2009年到今天的所有区块进行迭代,根据一系列因素,可能需要一天到几周的时间。好消息是只需要做一次!在初始块下载(IBD)完成后,保持最新的工作非常少-大约每10分钟一个块。
在IBD期间,你的节点将得到你的同伴的很多帮助,然后一旦你完全同步,你的节点将能够帮助其他人。
同样,如果您的节点或某个对等节点关闭一段时间,当它们返回时,相同的过程会重复,以便您再次了解最新情况。
真的很聪明:-)
分享
改进这个答案
跟随

我知道完整节点需要先执行IBD,然后才能验证事务。所以,它下载到现在,这是众所周知的初始块下载分类帐。
但我不明白/不知道的是,区块链信息是从哪里下载的?其他完整节点是否参与了此活动,或者此信息是否存储在某个位置并从中检索?
感谢您的帮助!
块链

完整节点
分享
改进这个问题
跟随
22小时前问的
月球陨石坑
11344青铜徽章
新贡献者
添加评论
2个答案
1
是的,它们从连接到的其他节点下载块。
在比特币核心中,你可以选择是否是一个被删减的节点。在这两种情况下,所有的块都会被下载并完全验证,但在删减模式下,旧块在验证一段时间后会被删除。这有许多含义,但其中之一是修剪的节点不能帮助新节点执行IBD。
分享
改进这个答案
跟随
21小时前回答的
彼得·维尔
67.1k88金徽章144144银徽章19219铜徽章
添加评论
0
每个比特币节点连接到比特币网络(对等)上的许多其他节点。把它想象成和你分享信息的朋友。你可以问他们信息,他们也可以问你。
因此,新的比特币节点在第一次启动时,会在网络上找到其他对等节点,然后新节点会开始从区块链中请求比特币块,但它还没有(所有的块!)。所有对等方都将响应,共享他们自己的区块链副本中请求的区块。
当区块到达时,您的新节点将验证该区块是否有效,所有交易是否有效,以及它是否链接到上一个区块,并在完成此操作后将其添加到其自己的区块链副本中。
这个过程对从2009年到今天的所有区块进行迭代,根据一系列因素,可能需要一天到几周的时间。好消息是只需要做一次!在初始块下载(IBD)完成后,保持最新的工作非常少-大约每10分钟一个块。
在IBD期间,你的节点将得到你的同伴的很多帮助,然后一旦你完全同步,你的节点将能够帮助其他人。
同样,如果您的节点或某个对等节点关闭一段时间,当它们返回时,相同的过程会重复,以便您再次了解最新情况。
真的很聪明:-)
分享
改进这个答案
跟随

时光素材-香车美女  (1096)blockchainBTC比特币区块链www.qkl91.com

如何验证比特币中的压缩签名?十六进制长138

我正在使用bicoinjs消息npm模块进行签名验证。
我知道在十六进制中长度为138的签名很少。
当我试图验证这样一个签名时,它抛出了一个错误:
错误:签名长度无效
如何验证压缩签名?
我认为ruby中有一个lib,比特币ruby 0.0.20,可以验证它,但我不知道ruby。
比特核
比特币
节点.js
红宝石
分享
改进这个问题
跟随
8月7日7:10编辑
葛罗芬戴尔
43822金徽章77银徽章1515铜徽章
8月6日20点59分被问到
舒巴姆查多卡尔
11366青铜徽章
添加评论
2个答案
0
如果您有比特币核心软件,您应该能够使用CLI使用verifymessage命令验证签名。一些钱包软件也有这个功能。
分享
改进这个答案
跟随
回复时间:8月11日18:03
萨钦迈耶
16988青铜徽章
添加评论
0
没有压缩签名。比特币对签名使用两种不同的格式(编码):
事务签名使用ASN.1der编码,该编码的长度根据曲线而变化,在Satoshi发布时很常见,并添加了一个’sighash’字节。一般来说,对于secp256k1,DER(ECDSA Sig)通常是72-70字节,有时但很少少,但现代比特币需要“low-S”签名,这将最大值减少到71。一个69字节(138个十六进制)的签名(不包括sighash)会在大约3/512(大约百分之零点五)的时间内出现;这种长度包括sighash将是非常罕见的。
消息签名使用P1363编码,也称为“plain”、“PKCS11”或“CVC”,对于secp256k1,它总是正好是64个字节,并且添加一个恢复字节,总共是65个字节(总是)。它还向签名数据添加前缀,这会更改值,但不会更改签名的格式。
参见示例:
为什么签名总是65(1+32+32)字节长?
ECDSA r,s编码为签名
签名消息和签名事务的区别
虽然我还没有看过,但我希望名为bitcoinjs message的库可能会处理消息而不是事务的签名,任何69字节的签名都不能是消息签名。
分享
改进这个答案
跟随
回复时间:8月12日5:40
戴夫汤普森085
311银徽章55铜徽章
实际上,ruby中有一个比特币ruby库。此库生成138长度的消息签名Shubham Chadokar 8月12日11:08
1
比特币消息签名不能是“138长度”。在整个宇宙的生命中从来没有。一种叫做“比特币红宝石”(bitcoin ruby)的东西可能会处理事务,而事务是比特币的原始、核心、主要功能和用途——消息非常罕见,几乎毫无用处dave_thompson_085 20年8月14日7:59
添加评论

时光素材-香车美女  (1095)blockchainBTC比特币区块链www.qkl91.com

在哪里可以改变比特币代码窗口的大小?

我已经尝试在src/qt/forms中更改窗体的高度和宽度参数,但是没有任何更改,我还需要查看其他哪些地方?
比特币核心
比特币核心开发
源代码
分享
改进这个问题
跟随
13小时前问的
用户120900
2111青铜徽章
新贡献者
添加评论
1个答案
1
在qt设计器中打开/src/qt/forms中的一个.ui文件
qt-设计师-1
按CTRL+O或点击[Form]->[Break Layout]
相应地调整窗体和不同对象的大小
调整qt设计器的大小
编译并运行比特币qt
调整大小-ui-1
调整大小-ui-2
我在minimumSize属性中更改了宽度和高度,在几何体中更改了相同的宽度和高度。在rpcconsole.cpp中也做了一些更改,因为我删除了一些对象,这与调整窗体大小无关。
分享
改进这个答案
跟随

时光素材-香车美女  (1094)blockchainBTC比特币区块链www.qkl91.com

在PHP中,如何从一个短的02/03公钥计算完整的未压缩公钥?

在PHP中,如何从压缩的公钥创建完整的公钥?
我的测试密钥是026a04ab98d9e4774ad806e302dddeb63bea16b5cb5f223ee77478e861bb583eb3
未压缩的是6A04AB98D9E4774AD806E302DDDEB63BEA16B5CB5F223EE77478E861BB583EB36B6FBCB60B5B3D4F1551AC45E5FFC4936466E7D98F6C7C0EC736539F74691A66
这可以通过openssl实现吗?
谢谢你的回答!!
公钥
菲律宾比索
分享
改进这个问题
跟随
3月26日22:05问
布罗卡德
3333青铜徽章
添加评论
1个答案
1
使用MDANTER的伟大图书馆,我设法使它工作。如果将来有人需要的话。
使用椭圆\EC;
$ec=新ec(’secp256k1’);
$pub=“026a04ab98d9e4774ad806e302dddeb63bea16b5cb5f223ee77478e861bb583eb3”;
$key=$ec->keyFromPublic($pub,’hex’);
打印($key);
分享
改进这个答案
跟随
三小时前编辑的
莱斯莫尔
10333青铜徽章
回复时间:3月27日0:53
布罗卡德
3333青铜徽章
添加评论
你的答案

时光素材-香车美女  (1093)blockchainBTC比特币区块链www.qkl91.com

是什么阻止黑客猜测种子短语?

如果种子短语是从一个有限的强制性单词列表中生成的,那么是什么阻止人们随机生成可能有用的种子短语呢?
区块链钱包应用
分享
改进这个问题
跟随
一小时前问的
艾德会的
1
新贡献者
添加评论
1个答案
0
是什么阻止黑客猜测种子短语?
没有什么。
猜测者的问题是204812是一个非常大的数字(204824更是如此)。
大约是5000000000000000000000000000000000000000
假设一亿不同的人有比特币钱包和钱。
假设一百万攻击者每秒钟猜一百万个短语。
猜测者平均幸运的时间是多久?
那不是50000000000000000000秒吗?大约是1726445291328年,地球只有4543000000年,是地球年龄的380倍。
当然,第一个猜测者可能会幸运地发现他们的第一个猜测。但他们的可能性非常大。
请注意,以上并不是为了准确,只是给出一个非常粗略的数字规模涉及。例如,我没有研究有多少种子短语产生相同的种子数,或者有多少种子数不能从任何种子短语中获得,我只是使用了1:1的对应关系-这可能是错误的。
分享
改进这个答案
跟随
52分钟前编辑

时光素材-香车美女  (1092)blockchainBTC比特币区块链www.qkl91.com