- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
比特币协议和相关规范的细节说明
这个开发者指南的目标是在你开发一个比特币周边应用的时候,给你提供足够的信息。为了更好地使用这个指南,你需要安装最新的bitcoin内核的客户端,可以下载github里面的源码或者官网的预编译版本 。
一旦安装完毕,你将有以下的三个可执行程序:bitcoind,?bitcoin-qt, andbitcoin-cli。 如果你启动的时候没带参数,所有的程序都会默认连接到比特币主网络network?(mainnet)。要在网络上创建交易,你就要支付比特币。比特币的最小单位是“聪(satoshis)”,0BTC = 1?satoshis。
但是,为了开发,使用比特币测试网络更为安全和便宜?network?(testnet) ,在测试网络中的比特币没有真实世界的价值。?测试网络?对有些限制有所放松,(如对标准交易的检测),它能测试一些在主网络中被禁止的函数,
如果要使用测试网络testnet, 启动的时候需要添加参数?-testnet?或者添加testnet=1到你的bitcoin.conf?文件里面. 在Piotr Piasecki’s testnet faucet,你可以获得一些免费的测试比特币。测试网络是社区人员免费提供的公共资源,请不要滥用。
你可以进一步使用regression test mode(回归测试模式)来加快你的开发,这个模式可以在你的电脑上创建一个本地的测试网络。 回归测试模式可以让你通过RPC命令快速创建blocks、获取测试比特币、即刻在block chain上生成交易。
? bitcoin-qt?提供了一个完整的Bitcoin?peer?和钱包的前端.在帮助菜单中,你可以找到一个敲RPC?命令的终端
? bitcoind?是个更有用的程序: 它提供了一个完整的?peer(节点)?你可以使用RPCs命令和它交流,正式端口默认8332 (测试网络默认端口18332).
? bitcoin-cli?允许你通过命令行发送?RPC?命令给bitcoind?. 举个例子,bitcoin-cli help
这三个程序都会从Bitcoin程序目录里的bitcoin.conf中读取参数设置:
? Windows:?%APPDATA%\Bitcoin\
? OSX:?$HOME/Library/Application Support/Bitcoin/
关于比特币开发的问题最好发送到比特币论坛?和IRC 频道. 对于B的文档的错误和建议,请以提案的方式提交或者发送到?bitcoin-documentation 邮件列表.
在以下的指南里, 某些字符串被缩写成: “[…]” ,表示额外的数据被删除了, 以 “\” 结束的行表明下面还有. 如果你把你的鼠标移动到一个段落,有链接的文字会变成蓝色。如果你移动到有链接的文字上,在工具提示上会出现一个简介。
区块链
区块链提供了比特币的公开总账本, 这个总账本由所有有时序的已确定的交易组成。这个系统被用于防止双花和修改以前的交易记录, 通过被全球P2P网络验证的?工作量证明POW?来保证全球的一致性.
区块链概览
上面的插图展示了一个简化版本的区块链. 一个包含一个或者多个交易的区块?会被收集到区块的交易数据部分. 每个交易的副本都会被哈希,然后将哈希值进行配对,然后再进行哈希,再配对,再哈系,直到只剩下一个哈希值,这个剩下的哈希值就是?Merkle tree(Merkle 树)的Merkle root(根节点)。
Merkle根节点?被存储在?区块头. 每个区块?也会存储上一个区块头的哈希值, 以把所有的区块链接在一起. 这保证了在不修改当前和后面的所有区块的情况下,交易记录是不会被修改的。
交易记录也被链接在一起。比特币钱包?软件只记录了比特币的发送接收, 但比特币确实在交易间转移。 每个标准交易花费的satoshis?是前一个交易转移过来的币, 所以一个交易的输入是上一个交易的输出。
单个比特币交易能把比特币?发送到不同的输出中, 就像你把比特币一次发送到不同的地址一样,但是一次输出在区块链中只能使用一次 所有的后续引用都禁止双花—一种把比特币花两次的尝试。
输出不同于比特币?地址。你可以在多个交易中使用同一个地址, 但是输出?只能被使用一次。输出?与交易id(TXIDs)绑定, txid就是签名交易的哈希值
因为每个交易的输出只能被使用一次, 所有在区块链?中的输出能被分类为未使用交易输出Unspent Transaction Outputs (UTXOs)?或者已使用输出. 为了让支付有效, 必须使用?未使用输出UTXOs?来作为输入.
比特币在产生交易之后,不能留在UTXO中, 否则这个余额会永久的丢失掉, 所以输入和输出之间的
您可能关注的文档
最近下载
- 传感器技术指导书.doc VIP
- Unit3 Sports and fitness 单元测试 人教版高中英语必修第一册.docx VIP
- 车型EOP管理相关参考内容.docx VIP
- 六年级英语竞赛试题用所给词的正确形式填空练习范本.pdf VIP
- 人教版(2019)高中英语必修第一册 Unit 3 Sports and fitness 知识点详解.doc VIP
- 2024年评职称的专项技术分析报告.pptx VIP
- 音乐就在你心中.ppt VIP
- 高中英语课件(人教版)必修第一册 Unit 3 Sports and Fitness.pptx VIP
- 2024中华人民共和国农村集体经济组织法详细解读课件.pptx VIP
- 面诊、手诊、足诊、耳诊图解教程(价值千元).pptx VIP
文档评论(0)