比特币交易格式

每个比特 币 交 易 都 有 一 个 交 易 Hash(txhash).此Hash值是针对 整 个 交 易 内 容 计 算 得 到,唯 一 指 向
此条交易.因此,在比特币中交易 Hash通常作为交易的ID.

交易的正文主要包括2部 分:输入地址信息输出地址信息

输入地址信息记录此次交易发送方的账户信息,值得注意的是输入地址信息中并不是记录发送者的账号,而是记录输入资金的来源(pre-txhash),即通过来源交易Hash指定全局账本中的一条交易,通过索引信息(index)指定交易中对应的输出地 址,并 通 过 签 名 信 息(sign)证 明 用 户 对这笔资金的所有权.

输出地址信息中记录此次交易接收方的账户信息,包括输出地址(account)和输出金额(amount).输出地址是由用户自行生成的公钥信息经过字符变换得到的一串字符串.输出地址经过反向变换后可以得到公钥的 Hash,用于验证签名.

看个例子

交易实例部分介绍了2条交易.其中,编号为“10002”的交易中第“0”个 输 入 地 址 中 的 来 源 交 易 Hash是同 时 索 引 为“1”.因此,可以确定此输入地址的真实账户是编号“10001”交 易 中 第“1”个 输 出 地 址“1A1RmbbVoL4pnMZf”.

通过这种设计,比特币中每一个交易的来源都可以验证真实性和合法性,攻击者无法伪造交易,也不能冒用其他人的账号进行交易.此外,交易中的输入账户和输出地址都是由用户自行创建,与身份信息无关,因此外部观察者不能直接根据交易记录推测交易者的身份信息.

参考文献:

祝烈煌,高峰,沈蒙,et al.区块链隐私保护研究综述[J].计算机研究与发展,2017,54(10):2170-2186.

猜你喜欢

转载自blog.csdn.net/salmonwilliam/article/details/88134936