主页 > imtoken创建多个钱包 > 比特币OP_RETURN元数据

比特币OP_RETURN元数据

imtoken创建多个钱包 2023-05-11 07:53:59

本文主要介绍比特币OP_RETURN元数据,对于您搜索和发现的问题还是有很好的参考价值的,希望编程之家小编编译的内容对您有所帮助。如果有错误或没有完全考虑的事情,不要犹豫,启发。

编程之家(jb51.cc)小编说: 参考自 比特币中的每笔交易信息包含输入和输出两部分。输出中的脚本也称为验证脚本一个比特币占多少内存,输入中的脚本也称为调用脚本。为了将比特币花在交易A的输出中,需要构造一个交易B,使B的调用脚本满足A的验证脚本。使用比特币网络存储数据 区块链可以被视为一种不可变的数据结构,因此人们正在尝试使用此功能来开发其他应用程序。这需要在事务历史记录中存储其他数据。在普通P2PH中(付费)

在比特币每笔交易的信息中,有两个部分:输入和输出。输出中的脚本也称为验证脚本,输入中的脚本也称为调用脚本。为了将比特币花在交易A的输出中,需要构造一个交易B,使B的调用脚本满足A的验证脚本。

利用比特币网络存储数据

区块链可以被视为一种不可变的数据结构,因此人们正在尝试使用此功能来开发其他应用程序。这需要在事务历史记录中存储其他数据。在正常的 P2PH(支付到 pubKey 哈希)事务中,输出中的验证脚本可以替换为其他数据。

这样做将导致交易中的比特币不再被花费,因为很难找到满足条件的调用脚本(需要反向哈希)。这种方法的另一个严重缺点是,在比特币节点上,出于速度原因,未花费的交易(UTXO)通常存储在内存中,因此此类交易会占用大量内存空间并影响比特币网络的效率。

因此,我们可以使用比特币的OP_RETURN指令。包含此指令的交易成本也不高,但节点可以安全地将它们移出 UTXO 集合,并且事务可以在OP_RETURN中存储一定数量的字节。

应用广泛

利用区块链上的这个存储空间,发挥你的想象力,有很多事情可以做。例如,编写自己的脚本协议并使用比特币网络发行代币。事实上,这已经做了很长时间,以太坊协议最初是建立在比特币网络上的。

目前,许多主流项目使用元数据功能在比特币区块链中发行和转移资产,例如交易对手和Omnilayer,最终可以达到证明特定商品,资产,股票等所有权的目的。在比特币区块链中成功发行的资产包括BitCrystals,FoldingCoin和Tether。此外,Notary Connect和BitProof通过结合区块链的不变性和元数据功能来保证特定文档的有效性和合理性。这是元数据使用最广泛的领域。其他应用包括数字艺术档案的访问和版权以及区块链中信息的永久有效性。

局限性

但是,由于Bitcoin Core开发人员认为OP_RETURN会导致用户在比特币网络上存储过多的非交易信息,从而可能影响比特币的正常使用一个比特币占多少内存,因此他们限制了不可花费交易的大小(最初为40字节,扩展到80字节,后来减少到40字节)。一个事务最多可以包含一个带有OP_RETURN的输出。这使得一些第 2 层协议项目转移到其他主链。

事实上,比特币的交易费用与交易量有关,用户在实现功能的前提下往往占用尽可能少的空间,太小的强制限制是没有必要的。此外,OP_RETURN交易总量仅占总区块量的0.3%。(2017)

前途

在2018年5月的升级中,比特币现金计划将OP_RETURN的空间增加到223字节。也许这将为比特币第2层协议的发展带来新的活力。

0x8bae12b5f4c088d940733dcd1455efc6a3a69cf9340e17a981286d3778615684

这里写图片描述

我们可以看到第一个输出被标记为不可花费的地址,并且类型为空。然后我们可以看到具体细节:

OP_RETURN 636861726c6579206c6f766573206865696469

0x36861726c6579206c6f766573206865696469可以获得:

charley loves heidi

个人想法

比特币的不可交易特征可以通过OP_RETURN的元数据进行分析