DUN:开发者必读:从Zcash和Aleo的技术出发,理解隐私交易的设计原理_TransferChain

引言

从论文的角度看,Aleo的可编程隐私设计所采用的的隐私设计和早期的Zcash的白皮书更为相近,类似的Key结构,类似的Note结构,类似的称呼。本文是基于Zcash最新的论文和Aleo的ZEXE做的比较,虽然在具体的细节上有所不同,比如Key结构,具体使用的密码学方法;但是在high-level的设计上大体相同。除了前面所讲述的技术细节外,仍然存在一些其他的技术细节暂未涉及,比如delegateprover方案,零知识证明算法,递归/聚合方案等,有兴趣的同学可继续研究。Zcash

1.关于Zcash?

一个简短的视频了解Zcash,大概需要2分钟。https://zcash.readthedocs.io/en/latest/rtd_pages/basics.html特点:?匿名版的BTC,类UTXO模型?只能做支付场景,不具备可编程性2.主要概念

注意:Zcash经过多次协议升级,我们只关注最新版本。主要介绍Zcash里的各个核心概念。2.1Keycomponents

图片来源

ENS核心开发者:ENS定价现阶段很难改变,V神提议未考虑可访问性:9 月 11 日,本周以太坊联合创始人 Vitalik Buterin 在其个人网站发表文章讨论 ENS 域名是否应该引入基于需求的经常性费用。他认为目前 ENS 域名十分廉价,由此引发了产权强度和公平性之间的权衡问题,而且 ENS 二级市场的高度投机性也无法确保市场的有效性。

对此,ENS 核心开发者 Jeff Lau 在社交媒体上进行了回应。他指出由于想不出有什么办法,可以在不干预的情况下让定价系统自我延续,以及创造一个无法作弊的定价系统,因而 ENS 最终决定保持价格的可接受性,但对较短的域名仍收取更多费用。允许动态定价/续期可能会有帮助,但现在为时已晚。当前的 ENS 系统运行良好,定价也足够合理,能够看到一些域名到期的情况。V 神的论文更多关于域名空间的拥塞问题(可以通过子域名解决),以及更多资金给到 ENS DAO 以资助公共产品,但可访问性没有得到足够的重视。虽然 ENS 的定价被设计成可以改变,但现阶段很难改变。[2022/9/11 13:22:40]

你可以在Zcashprotocolspecification:section4.2.3,page36了解这些Key的计算方式。2.2Note

note是Zcash协议中的基本单元,类似于BTC中的UTXO;在Zcash中,所有交易的输入和输出都是notes。当然,Zcash也支持非匿名的交易,这样和BTC的交易模式一样。所以,要想更深入的了解Zcash,得先需要了解note的数据结构:

Gelato针对DEX为开发者推出限价订单库:官方消息,以太坊智能合约自动执行工具Gelato Network针对DEX为开发者推出限价订单系统“限价订单库”(Limit Order Library),以通过全新的 limit-orders-lib和limit-orders-react 组件来消除DEX开发人员的开发障碍,从而为开发人员提供简单的一站式解决方案,使得目前的 AMM DEX可以直接实现限价单挂单交易。[2021/7/2 0:22:36]

图片来源

在Zcash的协议中,因为隐私的需求,note是不能公开的,因此,需要计算对应的commitment来代表这个note,计算方式如下:

图片来源2.3Actiontransfer

一笔交易里,可能包含多个actiontransfer,每个actiontransfer会花费老的note,生成新的note,其数据结构如下:

Parity开发者Wei Tang:ETC开发者Cody Burns是导致MultiGeth等客户端脱离ETC的一部分原因:8月13日,Parity开发者Wei Tang发推称,在过去的一年中,ETC社区确实充满了性,以及一直在玩责备游戏、且社区管理不善。不确定Cody Burns(ETC开发者)是否意识到,如果ETC失败,他是一部分原因,同时他也是MultiGeth和OpenEthereum两大客户端被迫离开生态系统一部分原因。与此同时,Wei Tang还表示,虽然觉得ETC Labs也有很多问题,但至少此次他们决策是有依据的。而不像Cody Burns。Cody Burns推特听起来总是很吓人,即“如果不按照我的方式去做,让财政政策运作起来,那么我就会离开。”财政政策到底是好是坏还有待决定,但如果在讨论之前就是这种态度,那对话可能就结束了。[2020/8/13]

图片来源

2.4Actionstatement

公共输入是:

声音 | Celer Network:开发者将游戏移植到CelerX eSport上,盈利是其他模式的2-4倍:Celer Network官方在推特上回复网友时称,其第二层移动应用CelerX正在使用状态频道,Celer平台活跃用户每周增长20%以上。开发者将游戏移植到CelerX eSport游戏平台上获得的收入是其他盈利模式(如广告)的2-4倍。[2020/1/13]

隐私输入是:

证明statement为:

图片来源?花费的note的完整性,和noteplaint唯一绑定?花费的note的有效性,cmtree的存在性证明?Value承诺的完整性,和rcv,oldvalue,newvalue唯一绑定?Nullifier的完整性,防止doublespend,维护一个花费的noteset?花费的note的合法性?地址的完整性?新note的完整性?flag的合法性2.5交易结构和示例

动态 | 以太坊核心开发者会议将于今日19:00进行:据以太坊官方推特消息,以太坊核心开发者会议将于北京时间今日19:00进行。[2019/3/1]

2.5.1交易结构

图片来源整个交易结构包含四个部分:?Publicinfo(1-5)?Transparenttransactionsinfo(6-9)?Saplingtransactionsinfo(10-16)?Orchardtransactioninfo(17-25)2.5.2从transparent到shieldOrchard协议里包含两种地址,transparentaddress(TA)和shieldaddress(SA)。一般,为了执行隐私交易,需要先从TA往SA转账,此时对应的交易结构应为:?Publicinfo(1-5)?Transparenttransactionsinfo(6-9)ⅰ.tx_in_*:实际值ⅱ.tx_out_*:默认值?Saplingtransactionsinfo(10-16)ⅰ.All:默认值?Orchardtransactioninfo(17-25)ⅰ.All:实际值2.5.3从shield到shieldOrchard协议里包含两种地址,transparentaddress(TA)和shieldaddress(SA)。一般,为了执行隐私交易,需要先从TA往SA转账,此时对应的交易结构应为:?Publicinfo(1-5)?Transparenttransactionsinfo(6-9)ⅰ.All:默认值?Saplingtransactionsinfo(10-16)ⅰ.All:默认值?Orchardtransactioninfo(17-25)ⅰ.All:实际值2.5.4从shield到transparentOrchard协议里包含两种地址,transparentaddress(TA)和shieldaddress(SA)。一般,为了执行隐私交易,需要先从TA往SA转账,此时对应的交易结构应为:?Publicinfo(1-5)?Transparenttransactionsinfo(6-9)ⅰ.tx_in_*:默认值ⅱ.tx_out_*:实际值?Saplingtransactionsinfo(10-16)ⅰ.All:默认值?Orchardtransactioninfo(17-25)ⅰ.All:实际值2.6如何实现隐私?

?Unlinkable生成的note用cm表示,花费的note用nf表示,nf和cm之间无任何联系,因此,任何人都无法通过这些信息去判断任何一个被生成的note是在哪一笔交易里被花费的。?Privateⅰ.Senderaddress:交易信息里不包含sender地址且spendAuthSig为一次性签名。ⅱ.Receiveraddress:交易里不包含receiver的地址且新的Noteplaint用的是recevier的公钥加密。ⅲ.Value:用pedersencommitment形式隐藏Note,且通过bindsig来保证交易的balance属性。Aleo

1.和Zcash的异同

Zcash只能执行基于OUTX模型的隐私交易,不具备可编程性;因此,Aleo和Zcash最主要的区别是隐私可编程性;相同点是都支持隐私属性。2.AleoVSZcash

2.1Unit

和Zcash的note不同,Aleo里的基本操作单元是record,下面让我们看一下两者的主要区别:

图片来源

图片来源虽然具体参数名称不相同,但是从功能角度来看,两者之间具有对应关系:

分别对应note拥有者的地址信息,承诺相关信息,nf/sn相关信息,value相关信息。所以,两者结构基本类似;主要的区别在于record里的birthpredicate,deathpredicate。这是两个Boolean类型的函数,代表着,当一个record在birth(generate)和death(spend)阶段,分别需要满足的条件,这一块是支持user-defined,因此具有可编程性。2.2交易结构

图片来源和Zcash(2.5.1)的交易主要结构相比,仍然相似:?消费的record对应的序列号sn,在Zcash里用nf表示,都是具有全局唯一性。?新生成的record对应的承诺。?新生成record的plaint,包括拥有者信息,对应的birth/deathpredicate等。2.3Proverstatement

图片来源需要证明:?Oldrecord的有效性?Oldrecord的合法性?Newrecord的有效性?Birth/Deathpredicate的有效性3.其他

3.1为什么都是utox-based,不是account-based?

Remark2.3参考

1.(Zcash)Zcashprotocolspecification:https://zips.z.cash/protocol/protocol.pdf2.(Aleo)Zexeprotocolspecification:https://eprint.iacr.org/2018/962.pdf3.协议升级:https://z.cash/upgrade/4.zerocash:https://eprint.iacr.org/2014/349.pdf关于我们

Sin7y成立于2021年,由顶尖的区块链开发者组成。我们既是项目孵化器也是区块链技术研究团队,探索EVM、Layer2、跨链、隐私计算、自主支付解决方案等最重要和最前沿的技术。微信公众号:Sin7YGitHub|Twitter|Telegram|Medium|Mirror|HackMD|HackerNoon

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

区块博客

DOGESTRAT:从ETH期货数据窥探市场对Merge的预期_ROS

译者:Odaily星球日报Azuma 期货市场是机构、对冲者和投机者们的战场。在2021年的牛市中,随着新资金以过高的杠杆涌入市场,期货市场成为了那轮牛市冲击新高的主要催化剂之一,时间快进至20.

[0:15ms0-4:778ms