EOS,Solana这些大家所熟知的链都使用的是账户模型,甚至可以说?90%?以上的项目都使用的是账户模型,而只有一些老牌项目用的是UTXO模型,如,BTC,DOGE,LTC,当然也有一些比较新的项目也用的这个模型,如Layer?2中使用OP方案的FUEL。2.什么是账户模型
简单理解,就是银行账户那套系统,比如银行之间的转账,支付宝、微信的转账等等都属于账户模型。下面我举个栗子:
假如A有100?,B有100?
这时A给B转账50块钱
在系统中的表现形式就是?
A-50?,B?50?
所以他们的余额
A50?,B150?
这是一笔转账。
再假如,A还是有100?,他要给100个新开户的新人转账1元。
美SEC在FTX破产后半年至少采取了17次与加密相关的执法行动,环比增长183%:6月8日消息,在加密货币交易所 FTX 破产后的六个月内,证券监管机构采取的与加密货币相关的执法行动显着增加。在 FTX 破产前的六个月里,美国证券交易委员会(SEC)采取了大约 6 次执法行动。在 FTX 于 2022 年 11 月 11 日破产后的六个月内,SEC 与加密货币相关的执法行动至少 17 次,比上一时期增加 183%,该分析尚未考虑 SEC 对币安和 Coinbase 提起的两起诉讼。[2023/6/8 21:24:36]
这时需要A同时给100人转账1块钱
第1笔
A-1?,第1个人?1?
所以他们的余额
A99?,第1个人1?
第2笔
A-1?,第2个人?1?
BNB Greenfield测试网将于5月25日进行重置升级:5月19日消息,BNB Greenfield 测试网将于 5 月 25 日 14 时至 18 时进行重置升级,新升级版本命名为湄公河测试网(Mekong Testnet)。新版本将提供 SG GC 服务、升级到 cosmos-sdk v0.47.2 以及清理陈旧权限等。[2023/5/19 15:14:24]
所以他们的余额
A98?,第2个人1?
第3笔
A-1?,第3个人?1?
所以他们的余额
A97?,第3个人1?
以此类推
......
第100人
A-1?,第100个人?1?
所以他们的余额
特斯拉比特币持仓连续三个季度保持不变:4月20日消息,特斯拉周三下午公布的财报显示,该公司在2023年第一季度没有买卖任何比特币。截至第一季度末,特斯拉持有的数字资产价值为1.84亿美元,与2022年第四季度持平。尽管一季度末比特币价格从三个月前的16,500美元上涨至约28,500美元,但由于现行会计准则不允许计入此类收益,比特币的估值仍保持不变。特斯拉连续第三个季度没有改变其比特币持仓数量。FactSet的数据显示,特斯拉第一季度调整后每股收益(EPS)为85美分,营收为233.3亿美元。[2023/4/20 14:14:51]
A0?,第100个人1?
理论上要转账100次,而且下一次的转账都必须要先完成前一笔,不然账户余额就无法保证一致性,会混乱,有没有多转,余额够不够转出等。
理论上,随着交易笔数的增长,执行所需要的时间就越多。
SBF将于今天在纽约法院提出无罪辩护:金色财经报道,FTX创始人Sam Bankman-Fried预计将于今天在纽约市法院的美国地方法院提出无罪抗辩。他面临八项指控,包括电汇欺诈和违反竞选财务规定。[2023/1/4 9:50:44]
货币DCEP也是基于UTXO模型做的,所以这个模型必然有它的独特之处。
UTXO全称UnspentTransactionOutput,意思是“未花费交易输出”,他的模型简单说有点像日常生活中的现金体系,举个栗子:
A有一个钱包,里面有1元面值,?10元面值以及100元面值。
A要给B、C、D分别1块钱。
A有三种方式
第一种:拿出1元面值的钱给B
第二种:拿出10元面值的钱给C,找回9元
第三种:拿出100元面值的钱给D,找回99元
运动服装品牌Champion提出包括NFT在内的多项商标申请:金色财经报道,美国商标律师Mike Kondoudis在社交媒体上称,运动服装品牌Champion已经为其logo C的内衬变化提出了商标申请,计划包括:虚拟服装+运动设备、NFT+Digital Tokens、手袋+服装等。该公司在今年早些时候提交了一份相关的Web3商标申请。[2022/11/15 13:08:43]
这三种方式都可以把这次交易完成。
再回到链上,想象一下这里每一个面值的钱其实就是一个链上UTXO,具体在使用过程中的UTXO并不是在转移的,而是在不断的销毁和重建,例如:
A用第二种方式给C转钱,?10元面值的UTXO会被销毁,系统会重新印出一张1元面值和一张9元面值的UTXO,?1元的给C,?9元的还给A。
第三种方式也同理,?100元的销毁,印出1张1元面值的和一张99元面值的UTXO,?1元的给D,?99元的还给A。
这是UTXO和账户模型转账方式的不同,更牛逼的是,UTXO模型可以并行转账,因为余额是通过分散的UTXO存在的,所以每个面值其实可以同时转账给不同的人,上面三种方式是可以在一笔交易中同时完成的,因为不会涉及到账户一致性问题,每个UTXO都是单独独立计算的。
我们在对比上面的账户模型,每一笔交易都必须依托于上一笔交易的完成,这其中的性能差距可想而知。这样就理解为什么央行数字货币使用的是UTXO模型了,不然深圳怎么给5万个钱包发送1000万数字人民币?
再说回上面那个例子:
A有100?,他要给100个新开户的新人转账1元。
面值100的UTXO可以拆分成100个面值1块钱的UTXO,然后在一笔交易中直接分给100个人,瞬间完成。
总之,把UTXO的面值想象成更加灵活的现金,在链上不断的销毁和重建。
想知道这个钱包地址到底有多少钱就需要统计底下有多少个余额的UTXO并求和。
4.账户模型和UTXO的优缺点
账户模型优点:
合约以代码形式保存在Account中,并且Account拥有自身状态。这种模型具有更好的可编程性,容易开发人员理解,场景更广泛。
批量交易的成本较低。设想矿池向矿工支付手续费,UTXO中因为每个Input和Out都需要单独Witnessscript或者Lockingscript,交易本身会非常大,签名验证和交易存储都需要消耗链上宝贵的资源。而Account模型可以通过合约的方式极大的降低成本。
账户模型缺点:
Account模型交易之间没有依赖性,需要解决重放问题。Ethereum?是怎么解决的,我们清楚?Ethereum?是采用的是唯一的?Nonce?值的方法,每个交易?Tx?中有一个?Nonce?字段,对于每个用户来说,这个?Nonce?都不能重复,从而避免了重放攻击。
对于实现闪电网络/雷电网络,Plasma等,用户举证需要更复杂的Proof证明机制,子链向主链进行状态迁移需要更复杂的协议。
UTXO优点:
计算是在链外的,交易本身既是结果也是证明。节点只做验证即可,不需要对交易进行额外的计算,也没有额外的状态存储。交易本身的输出UTXO的计算是在钱包完成的,这样交易的计算负担完全由钱包来承担,一定程度上减少了链的负担。
除Coinbase交易外,交易的Input始终是链接在某个UTXO后面。交易无法被重放,并且交易的先后顺序和依赖关系容易被验证,交易是否被消费也容易被举证。
UTXO模型是无状态的,更容易并发处理。
对于P?2?SH类型的交易,具有更好的隐私性。交易中的Input是互不相关联的,可以使用CoinJoin这样的技术,来增加一定的隐私性。
UTXO缺点:
无法实现一些比较复杂的逻辑,可编程性差。对于复杂逻辑,或者需要状态保存的合约,实现难度大,且状态空间利用率比较低。
当Input较多时,见证脚本也会增多。而签名本身是比较消耗CPU和存储空间的。
账户余额
账户模型:可以简单明了的看到账户底下有多少钱。
UTXO模型:统计该地址底下有多少个UTXO,把他们汇总起来的结果才是余额。
当交易笔数指数级上升时
账户模型:会越来越吃力。
UTXO模型:天然支持高并发。
从智能合约/开发者角度出发
账户模型符合开发者的逻辑习惯,相对容易写逻辑
UTXO脚本编程较为复杂
标签:FTX比特币PUTOINBGAN Vault (NFTX)比特币市值相当于多少家银行PUT币coinbase下载app官方
12月28日消息,三箭资本创始人ZhuSu发推称,他4月份曾在巴哈马参加一场晚宴,当时FTX创始人SBF、《大空头》作者MichaelLewis、加拿大投资人KevinO''Leary和前白宫通.
1900/1/1 0:00:00Near生态多链网络OctopusNetwork创始人LouisLiu发表博客表示,OctopusNetwork核心团队将启动自愿离职计划来实现重构,大约40%的成员将通过该计划离开核心团队.
1900/1/1 0:00:00原文作者:EdFelten,OffchainLabs联合创始人?原文编译:DeFi之道Rollup协议设计者面临的一个微妙问题是如何应对延迟攻击.
1900/1/1 0:00:00ForesightNews消息,NFT市场Blur宣布将从北京时间1月3日4:00对不可变NFT系列执行最低版税,这不会影响现有的上线.
1900/1/1 0:00:00為慶祝新年的到來,幣安禮品卡將在幣安App中的禮品卡市場推出一系列幣安禮品卡盲盒活動。參與活動的用戶將有機會瓜分40,000美元等值獎池。如何參與:前往幣安App上的,點擊按鈕並進入禮品卡市場.
1900/1/1 0:00:0012月28日消息,CoinList发布《CoinList2022年度回顾》称,2022年在全球范围内增加100万名KYC用户,用户遍布170多个国家,其中东欧地区增长80%,亚洲增长20%.
1900/1/1 0:00:00