区块广播:

core钱包必须要全节点吗?不全节点也能导出私钥

韭菜籽船员发布在 疑难解答来自App
 31577  197
  • 正序
  • 最新
只看帖主楼层直达
  • 韭菜籽 船员 2019-03-24 19:04:20 来自PC32楼
    BurntCoins发表于2019-03-24 19:02:58修剪只是把旧区块直接删除而已,只能节省磁盘空间占用,不能提高同步速度。而且现在的修剪是很难用的,以后如果要导入公钥/私钥/地址/wallet.dat,需要重新扫描区块了,就需要重新下载220GB的区块数据。
    嗯嗯好的,我明白了。谢谢前辈指点
    楼层直达
  • BurntCoins 版主 2019-03-24 19:04:50 来自PC33楼
    韭菜籽发表于2019-03-24 18:56:29 电脑配置不行哇,气得我都想重新搞台电脑了,另外我本来研究使用了一下kyo帖主的修剪方法,可这种修剪过的节点是不是可以进行离线交易啊,感觉好像应该也没法离线交易的吧
    SSD或者8GB以上大内存,二者有一个就好。有SSD的话,可以把区块数据放到机械硬盘上,别的数据(尤其是频繁读写的chainstate目录)放到SSD上:https://www.chainnode.com/post/260538
    楼层直达
  • 韭菜籽 船员 2019-03-24 19:08:28 来自PC34楼
    BurntCoins发表于2019-03-24 18:52:22LZ似乎还不了解全节点钱包和轻钱包的区别……

    全节点钱包会完整下载、验证整条区块链,也就是自中本聪创造比特币以来的所有交易历史,确保所有数据都符合规则,没有出现凭空造币、强制偷币(不给签名就转走币)等行为。
    钱包里的余额不是直接从链上读出来的,是通过扫描所有交易记录后,找出与自己有关的交易,然后重新计算出来的。

    轻钱包就是把“验证交易记录”和“扫描交易记录”这个负担交给别人,你把你的地址(或者用地址算出一个布隆过滤器)等信息发给其他人,让他们帮你查,查到了再返回给你。


    全节点钱包的“安全”主要体现在它会完整验证一条链,让你不会跟随错误的链。如果有恶意矿工想凭空造100万币,他挖出来的区块在任何一个正常的全节点那里都会判定为无效、直接被拒收(忽略掉)。
    轻钱包把验证的工作委托给其他人了,一直一来都是没有这种分辨能力的(虽然一直有开发者想要改进这一点)。
    轻钱包也没办法知道给他提供服务的全节点是不是真的在老实干活,如果他连接的全节点是恶意的,就可以隐瞒一部分交易不告诉轻钱包。为了规避这种风险,轻钱包一般会连接多个全节点。
    嗯嗯谢谢,这个我确实还没太搞懂轻钱包程序是怎么运行的,只是觉得轻钱包后面的团队很难让人信任,万一后面大饼雄起了,面对大额财产,一般人很难抵制这种诱惑的
    楼层直达
  • 韭菜籽 船员 2019-03-24 19:15:44 来自PC35楼
    BurntCoins发表于2019-03-24 19:04:50SSD或者8GB以上大内存,二者有一个就好。有SSD的话,可以把区块数据放到机械硬盘上,别的数据(尤其是频繁读写的chainstate目录)放到SSD上:https://www.chainnode.com/post/260538
    嗯嗯好的谢谢前辈
    楼层直达
  • BurntCoins 版主 2019-03-24 19:25:26 来自PC36楼
    韭菜籽发表于2019-03-24 19:08:28 嗯嗯谢谢,这个我确实还没太搞懂轻钱包程序是怎么运行的,只是觉得轻钱包后面的团队很难让人信任,万一后面大饼雄起了,面对大额财产,一般人很难抵制这种诱惑的
    比太算是标准的SPV轻钱包。它会随机连接到一些比特币全节点(不是比太的服务器),然后把布隆过滤器(你比特币地址的大致特征)发给其他全节点,让它们帮你查交易数据。全节点查到交易后,会把区块头、交易和Merkle proof这些数据发给你的钱包。你的钱包利用Merkle proof和区块头这些信息,就可以找到积累挖矿工作量最大的链,而且可以验证这笔交易确实进链了,而且这些数据都是防篡改的,但凡有篡改,钱包验证哈希的时候都能发现。
    楼层直达
  • BurntCoins 版主 2019-03-24 19:31:56 来自PC37楼
    韭菜籽发表于2019-03-24 18:39:01 嗯嗯,谢谢。我研究了一下找零这个问题,我觉得它不算麻烦,只要自定义找零地址,输入自己常用的地址就可以了,每次离线前都设置好自己的地址就行了呀
    麻烦在于:钱包如果要断网,就不能同步交易数据。真正的冷热分离钱包,是联网机器负责同步交易;断网机器负责保存私钥、签名校验。
    楼层直达
  • BurntCoins 版主 2019-03-24 19:34:30 来自PC38楼
    韭菜籽发表于2019-03-24 18:39:01 嗯嗯,谢谢。我研究了一下找零这个问题,我觉得它不算麻烦,只要自定义找零地址,输入自己常用的地址就可以了,每次离线前都设置好自己的地址就行了呀
    刚刚打错了,应该是“断网机器负责保存私钥、签名交易”,不是“签名校验”。具体可以看看前面7楼的帖子。
    楼层直达
  • 韭菜籽 船员 2019-03-24 19:52:15 来自PC39楼
    BurntCoins发表于2019-03-24 19:34:30刚刚打错了,应该是“断网机器负责保存私钥、签名交易”,不是“签名校验”。具体可以看看前面7楼的帖子。
    嗯嗯,我明白你说的这个,我前面研究了素履的离线交易教程,他的教程里面有提到你这种方法,不过他还提到一种是离线广播在bit.com上面的交易,这个交易一电脑是断网发送大饼的,然后是提取交易信息中的交易id,通过交易id找到交易广播,然后复制交易广播到bit.com上面进行广播交易,我觉得像他这种离线交易的操作方式就不用另一台电脑同步数据了,只需要在bit.com上广播就行了,这种交易方式应该不算太繁琐吧
    楼层直达
  • 韭菜籽 船员 2019-03-24 19:55:08 来自PC40楼
    BurntCoins发表于2019-03-24 19:25:26比太算是标准的SPV轻钱包。它会随机连接到一些比特币全节点(不是比太的服务器),然后把布隆过滤器(你比特币地址的大致特征)发给其他全节点,让它们帮你查交易数据。全节点查到交易后,会把区块头、交易和Merkle proof这些数据发给你的钱包。你的钱包利用Merkle proof和区块头这些信息,就可以找到积累挖矿工作量最大的链,而且可以验证这笔交易确实进链了,而且这些数据都是防篡改的,但凡有篡改,钱包验证哈希的时候都能发现。
    嗯嗯,像这个你说的事他们的程序运行的方式,我觉得程序是安全的,但是真正考验的是人性的问题,这个才是比太钱包的弱点所在啊
    楼层直达
  • BurntCoins 版主 2019-03-24 19:57:18 来自PC41楼
    韭菜籽发表于2019-03-24 19:52:15 嗯嗯,我明白你说的这个,我前面研究了素履的离线交易教程,他的教程里面有提到你这种方法,不过他还提到一种是离线广播在bit.com上面的交易,这个交易一电脑是断网发送大饼的,然后是提取交易信息中的交易id,通过交易id找到交易广播,然后复制交易广播到bit.com上面进行广播交易,我觉得像他这种离线交易的操作方式就不用另一台电脑同步数据了,只需要在bit.com上广播就行了,这种交易方式应该不算太繁琐吧
    先拷交易ID,再getrawtransaction,这两步可以合并成一步:右键直接点“拷贝原始交易”即可。
    问题关键不在这里。关键是,如果你要拿到收币的原始交易,你就要联网同步,就不能保存断网。
    楼层直达
  • BurntCoins 版主 2019-03-24 20:06:34 来自App42楼
    韭菜籽 发表于 2019-3-24 19:52 嗯嗯,我明白你说的这个,我前面研究了素履的离线交易教程,他的教程里面有提到你这种方法,不过他还提到 ...
    没有之前收到币的那笔交易,就不能构造发币的交易,后面签名交易、广播交易也都不可能了。必须联网才能拿到收币的交易。 还有,你打错了,是BTC.COM ,这一家既是矿池也是区块链浏览器,是比特大陆旗下的。
  • 韭菜籽 船员 2019-03-24 20:10:46 来自App43楼
    BurntCoins 发表于 2019-3-24 20:06 没有之前收到币的那笔交易,就不能构造发币的交易,后面签名交易、广播交易也都不可能了。必须联网才能拿 ...

    这个是素履的离线交易教程
    首先,在断网条件下,什么都不要管,我们正常发出一笔交易,因为是断网的,所以这笔交易的信息肯定没有被广播出去,但是广播信息已经在CORE钱包里面生成了,所以我们要做的就是,通过控制台导出这笔交易的原始信息:调出控制台,输入getrawtransaction+空格+交易ID,交易ID不是你的付款或者收款地址,是该笔交易发生后,自动生成的一个编号,如图所示,划红线的就是你的交易ID。
  • 韭菜籽 船员 2019-03-24 20:16:19 来自App44楼
    BurntCoins 发表于 2019-3-24 20:06 没有之前收到币的那笔交易,就不能构造发币的交易,后面签名交易、广播交易也都不可能了。必须联网才能拿 ...
    嗯嗯好的,谢谢前辈提醒,我现在明白了,你的意思是另一台电脑也要运行core程序,一直同步下去,如果要交易的时候就到这台联网的电脑上交易的意思吧,在这台电脑上发送交易,然后会生成交易id,后面广播交易就可以了
  • BurntCoins 版主 2019-03-24 20:44:30 来自PC45楼
    韭菜籽发表于2019-03-24 20:16:19 嗯嗯好的,谢谢前辈提醒,我现在明白了,你的意思是另一台电脑也要运行core程序,一直同步下去,如果要交易的时候就到这台联网的电脑上交易的意思吧,在这台电脑上发送交易,然后会生成交易id,后面广播交易就可以了
    我前面已经说了,Core钱包不支持冷热分离功能,要搞的话很麻烦,需要折腾很多命令。如果你把私钥直接导进联网的机器,那就不是冷热分离的了,就是热钱包了。
    楼层直达
  • 韭菜籽 船员 2019-03-24 21:02:44 来自App46楼
    BurntCoins 发表于 2019-3-24 20:44 我前面已经说了,Core钱包不支持冷热分离功能,要搞的话很麻烦,需要折腾很多命令。如果你把私钥直接导进联 ...
    为啥要在联网的电脑上面导入私钥啊?应该不导入的吧,联网这个只要有地址就可以广播交易了吧
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 14
前往
登录 账号发表你的看法,还没有账号?立即免费 注册
推荐节点 更多
热帖榜 本周最热本月最热