1. BSV首页
  2. 技术发展

P2SH是什么?为什么一定要去除?

P2SH是什么?为什么一定要去除?

P2SH是2012年加入的一个比特币补丁,它改变了验证交易的方式。它最常见的身份是比特币中以“3”而不是“1”开头的地址。

链上的P2SH地址。

基本上,它不是支付给一个公钥散列或赎回脚本的正常做法,而是支付给链上赎回脚本的散列摘要,这表面上完成了以下事情:

1)存储带注释的锁定(赎回)脚本,而不是脚本本身,这可能为创建交易的人节省一些费用,因为最终交易的规模较小,费用由接收交易的一方承担(当他们使用这些资金时)

2)隐藏锁定脚本,以便在收款人将硬币移到其他地方之前不会公开

3)比特币验证逻辑的彻底改变,基本上先验证脚本的哈希,然后分别执行锁定脚本。

听起来温和的对吗?实际上,尽管支持者的本意是好的,但也有很多负面影响。这些影响在本质上阻碍了比特币智能合约市场的发展,反而帮助推动了这个细分市场进入像Ethereum这样的替代项目。不是直接的,而是通过保真度问题。我将以一种类似于评论的方式,逐点阐述这些弱点。

P2SH的实际问题:

它隐藏了契约逻辑,因此第三方无法观察收款人和付款人。

这是透明度的一个大问题,如果收款人不能被看到,那么他们就不能被第三方审计,除非其中一方提供了赎回脚本。

如果双方都失去了合同(赎回合同),就有可能出现无法支出的资金。

因为赎脚本只存在,存储只有当事人的交易,如果出于某种原因赎回脚本的所有副本已经失去了,它可能是当事人无法移动基金,因为他们需要赎回的脚本和必要的救赎的关键。这使得钱包管理软件为多团体交易更加复杂和容易出错。

对于具有法律约束力的合同来说,貌似合理的推诿不是一件好事。

如果合同在区块链上,那么一方总是可以在另一方上执行。然而,在P2SH中,由于合同仅由活动方持有,如果他们从事犯罪活动,那么如果当局想调查他们,他们总是会销毁自己的副本,这是合乎情理的。这使得合同难以执行,也会引发一些可疑的活动。

想象一下,如果这个系统被用来为非法赌博提供便利。在这种情况下,使用P2SH对投注是有益的,因为在投注完成之前,不可能识别托管投注。如果当局接触了赌场(代管)或投注各方,他们可以只说自己对投注一无所知,他们都可以否认参与了交易。如果这是一个纯粹的多重团体或透明的合同,合法赌场的地址将是可见的,并将能够向当局确定谁来接近,如果一方的资金来源可疑,需要调查,从而释放赌场的法律责任。

钱包接口需要知道它们应该支持哪种智能契约。如果契约是隐藏的,那么就很难知道需要支持哪种GUI接口。

如果聪明的合约是透明可见的区块链,然后钱包的工作就是创建直观的接口有时复杂的签字流程会更容易工程师因为合同的杰出的身体和锁定基金对整个网络将是可见的(同时保持隐私),更重要的是合同的结构就可以了解的。这允许适当的软件开发。

这也适用于op_codes。

使用脚本语言(Bitcoin script)作为合同“中介”的想法意味着该语言需要支持所有可能具有长期期限的未完成合同。如果使用特定op_code完成以离线的方式(如P2SH)所以没人看到,那么系统在支持所有op_code特性(甚至认为不再有用的),因为它不知道有人不是取决于赎回脚本,他们私下里。这使系统在可升级性方面陷入某种瘫痪,因为任何东西都不能更改或升级。

那么我们如何摆脱它呢?

防止创建新的P2SH输出。

首先,我们必须确保不再创建更多的P2SH输出。这是一个简单的限制,将在2月4日的创世纪升级中实施。

我们需要为所有现有的P2SH输出提供一个升级路径,这些输出仍然受到支持,但是不允许它们为新的P2SH输出付费。

其次,我们需要支持所有尚未赎回的现有P2SH输出。这意味着,尽管它可能会导致大量的技术债务被“前滚”,但我们必须保持对旧P2SH输出的支持和“可支付性”。

但是,当这些输出被支付时,它们必须被支付给裸multisig或一个标准的公钥地址或一个透明的智能契约(赎回脚本)链。如果运气好的话,网络中现有的P2SH输出将会缓慢下降,直到将来有一天可以关闭向后兼容模式。

最后,我们需要提供迁移它们的动机。

这是可选的,但却是必需的。如果您有一个P2SH输出,本能的反应是尽可能长地将其留在那里,因为只要有一些出色的遗留输出,就很难让采矿者支持关闭处理它所需的遗留代码。我们如何区分这些潜在的吃白食者?

幸运的是,比特币被设计成一个经济系统。因此,我们可以对社会中不受欢迎的行为施加同样的经济压力:我们可以施加参与其中的成本。当采矿者必须支持遗留代码时,他们可能会要求比正常情况下更高的P2SH输出处理费用。

例如,他们可以选择增加1sat、2sat、4sat、8sats/字节的费用阶梯,而不是标准的0.5sat/字节(仅在BSV上),直到所有P2SH输出随着时间的推移被赎回。

由于P2SH对收款人承担了很大的费用义务,这可能会非常有效地向这些输出的持有者施压,迫使他们尽快将输出转移到受支持的非P2SH版本,而不是让它们消失。另一个需要考虑的因素是,对P2SH支付的支持度在不断下降。在某些情况下,开发人员可能不想继续支持处理它们所需的遗留代码。

再见,谢谢你的鱼

因此,我希望您能在即将发布的Genesis版本中看到不支持P2SH的必要性。这是很久以前开发人员在不清楚系统应该如何工作的情况下草率地对比特币进行的修补(2011年,Satoshi离开了活跃的开发团队,P2SH在2012年加入)。

为了解决多重团体交易的钱包用户界面的一些明显问题,核心开发者通过破坏账本的透明度来阻碍比特币的智能契约能力,并为其被用于可疑目的的潜力打开了大门。它们还阻碍了系统的升级,在系统中造成了技术债务的负面环境。

任何希望使用企业系统的企业都必须能够生成可靠的记录,并接受相关部门的审查。为了使区块链成为“黄金拷贝”或“记录账簿”,它必须无可指摘。这就是为什么在比特币出现真正的智能合约爆炸之前,我们必须首先清除过去的痕迹,以便为未来打下坚实的基础。

结合BSV恢复更改由重新启用活动所需OP_CODES完全程序化的表情,(允许复杂的付款条件和智能合同再次可能),P2SH最终将重置比特币的淘汰99%的回到最初的设计定义的白皮书和原来的目标作为一个全球现金点对点系统。

比特币Satoshi Vision(BSV)是今天唯一遵循原始比特币白皮书的比特币项目,它遵循原始的白皮书协议和设计。比特币SV将在2月进行创世纪升级,之后将成为自由竞争的无上限区块系统metanet。

【免责声明】本文仅代表作者本人观点,与本站无关。比特币元网站对文中关于比特币,BSV,比特币SV,bitcoinsv等观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何保证。请读者仅作参考,特此声明!转载请注明出处:http://www.bsvers.com/1960.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

QR code