比特币代码研读笔记(5)---交易创建函数

这一篇看一下,创建交易的代码,创建交易是迈开的第一步,创建交易就是在构建Tx, 分析不一定正确,请指正。

bool CWallet::CreateTransaction(const std::vector& vecSend, CWalletTx& wtxNew, CReserveKey& reservekey, CAmount& nFeeRet,int& nChangePosInOut, std::string& strFailReason, const CCoinControl& coin_control, bool sign)

vecSend:向量,接受方信息,

wtxNew:交易的实例对象

reservekey:密钥

nFeeRet:交易费用

nChangePosInOut

strFailReason:错误信息


首先遍历接受者,计算转账金额和接受者数


绑定交易和钱包


交易费用充足时,结束循环


遍历所有的接受者,构造vout,并验证dust交易


选择使用的币


计算找零,并构建指向自己的vout


填充vin

评估交易费用,判断交易费用是否符合条件

不符合条件,则在可能的情况下降低费用


签名验证,并限定交易的大小


至此,创建交易部分代码完毕。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 接着上节 condition_varible ,本节主要介绍future的内容,练习代码地址。本文参考http:/...
    jorion阅读 14,987评论 1 5
  • 一、快速术语检索 比特币地址:(例如:1DSrfJdB2AnWaFNgSbv3MZC2m74996JafV)由一串...
    不如假如阅读 16,416评论 4 87
  • 好久没有看足球比赛了,一直在忙,也不知道再忙什么。 昨天晚上舍友说国足出线了,才知道国足还在比赛。今天中午的时候补...
    zyh9212阅读 2,649评论 0 0
  • 台上一分钟台下十年功,要想克服演讲的恐惧必须要有充足的准备,准备充足了自然紧张感就会减轻。 我在演讲过程中...
    姜杨Ada阅读 1,373评论 0 0
  • 木兰花-忆两世 温弦小楼听风雨, 自叹繁花谁忍取。 轻罗纱帐梦伊人, 临剑为卿冲冠怒。 回眸一望沧楼宇, 却见乘仙...
    景黎阅读 1,814评论 1 7

友情链接更多精彩内容