之前的文章我们说过,比特币的所有交易抽象成了UTXO的转移。所谓转移,可以这么理解:
- 有M个UTXO作为输入 (M >= 0)
- 有N个UTXO作为输出 (N > 0)
- 输入的UTXO总额==输出的UTXO总额
- 输入的UTXO来源于支付方控制的私钥账户
- 输出的UTXO流向收款方的公钥地址
那么具体是怎么转移的?怎样手工的构造一笔交易呢?我们就在这篇文章里面详细的演示一遍。
首先科普一下常见的交易类型:
之前的文章我们说过,比特币的所有交易抽象成了UTXO的转移。所谓转移,可以这么理解:
那么具体是怎么转移的?怎样手工的构造一笔交易呢?我们就在这篇文章里面详细的演示一遍。
首先科普一下常见的交易类型:
几天前有人在github创建了一个issue:
https://github.com/dominictarr/event-stream/issues/116
标题为:”I don’t know what to say.”,翻译过来大概就是“我无语了”。因为 event-stream 包突然多出了一个名为 flatmap-stream 的依赖项,而这个依赖项正在窃取用户的数字货币。
bitcoin core 0.17版本开始废弃了不少RPC调用,另外RPC配置增加了test.rpcport参数,存一份模板:
在我们前面的文章中,我们提到,从建设银行转账到工商银行10w元,过程其实是这样的:
整个过程中,有几个很有趣的事实:
又看了一遍 The book of Satoshi 这本书,果然常读常新啊;又有很多想法冒出来,结合最近的BCH分叉事件,我不禁又开始思考金融系统的两大环节:清算和支付,究竟会如何发展?
我从事银行业务系统监控很长时间,结合咱的职业生涯所学,再重新梳理一遍支付和清算的发展史吧。
2018-11-16 01:40(UTC+8)发生的BCH分叉实在好看,转载一下进程说明:
Bitcoin Cash 将于UNIX时间1542300000 (即北京时间2018年11月16日00:40)发生硬分叉;
分叉两派是比特大陆为首支持的Bitcoin ABC实现,以及Craig Steven Wright为首的BItcoin SV实现。
两派的恩恩怨怨政治斗争无心吐槽,咱也没有明确的倾向;但是作为码农咱要黑一黑;
通过前面两篇文章,我们认识到比特币的所有权是通过私钥来确定的。
那么我们就在此基础上研究比特币钱包的构成。广义上,钱包是一个应用程序,为用户提供交互界面。钱包控制用户访问权限,管理密钥和地址,跟踪余额以及创建和签名交易。 狭义上,比特币钱包的核心就是对私钥的管理。
在比特币的历史发展中,钱包大致经过了三次进化:
非确定性(随机)钱包
确定性(种子)钱包
分层确定性钱包(HD Wallets (BIP-32/BIP-44))
下面我们就好好说说钱包的历史发展轨迹
好了,有了上一篇文章的基础,我们可以从零开始完全探究数字货币的地址生成、管理方法;下面的代码均使用Linux Bash shell和Python3来处理;另外需要安装pycoin这个库。
今天踩了一个巨坑。
我一直以为bitcoin-cli sendfrom命令是可以花费uncomfirmed UTXO的。