查看原文
其他

Aleo如何实现隐私的?关键组件是什么?

AleoAsia Aleo ASIA亚太组织 2023-12-19

Aleo的粉丝朋友你们好,这里是 

 AleoASIA | Aleo大中华社区

Aleo最靠谱的中文社区 

Aleo是如何实现隐私的呢?今天我们接着来看Equilibrium文章的节选,这样有助于我们对Aleo有更加全面、立体的理解和认识!

equilibrium 文章系列:(完整文章请见文末链接)

AleoL1L2

Aleo即将重启!关于隐私区块链,Aleo与其他隐私项目比较

11- Aleo 如何实现隐私?

使 Aleo 实现隐私的关键要素是:

记录模型允许加密任意数据,而不仅仅是令牌值。

承诺确保所提供的信息有效且未被篡改。

交易在链外执行并使用程序证明(证明计算正确性的 ZKP)进行验证。这避免了必须将交易数据发布到链上以便验证器能够重新执行的问题。

**记录模型

区块链中有两种主要的状态模型——UTXO(未花费的交易输出)和账户模型(由以太坊引入)。

Aleo 使用 UTXO 模型的变体 - 记录模型。该类别中的其他协议(可编程隐私) - Mina 使用私人帐户模型,而 Aztec 和 Polygon Miden 使用两者的组合

虽然帐户模型对于开发人员来说更直观,但它使用帐户地址索引全局状态。这意味着,虽然私人账户模型可以实现输入和输出的隐私,但由于账户地址无法加密,它仍然会损害用户隐私。私人帐户模型的另一个问题是缺乏并发性,因为您必须消耗整个程序状态才能更新它(一次只有一个用户可以执行此操作)。

解决这些问题有不同的方法。例如,Polygon Miden 中的账户数据存储在链外,这有助于保护隐私(网络得知某些交易是使用该账户进行的,但没有了解交易的性质)。Aleo 的记录模型使用程序 ID 作为聚类点(而不是账户地址)来提高隐私性,并使程序具有内部状态,这既提高了效率,又解决了并发问题。

记录是一种基本数据结构,可以包含任何任意有效负载,并用于对用户资产或应用程序状态进行编码。记录代表程序在全局状态中的某种状态,例如帐户余额或您的身份证件。与 Zcash 的票据模型的主要区别在于,记录还包含有关其相关程序的信息(程序 ID)。这为更复杂的逻辑打开了大门,并支持对任意有效负载(资产、应用程序状态......)进行加密,而不是仅限于简单的价值转移。

每条记录都包含有关谁拥有它、存储的值及其应用程序状态的信息

Aleo 中的记录是通过转换函数使用和创建的。一个事务可以包含多个转换,每个转换负责其各个记录的消耗和创建。这使得能够在一个事务中包含多个状态更新。每笔交易最多可包含 32 个转换,其中一个保留用于交易费用。

记录的消费和创建不需要遵循 1-2-1 关系(刻录一份,创建一份)。情况并非如此的示例包括:

不转移全部余额的贷方转移:将一条记录作为输入并输出两条记录(剩余未用余额和已转移余额)。

代币销毁:将 N 条记录作为输入,不输出任何记录

**承诺

在私有计算中,每个记录中的数据有效负载都是加密的,并且对外部观察者不可见。然而,我们仍然想让某人相信我们拥有这些信息,但又不想透露任何信息。如果您是交易的接收方,您还想确保对方履行最初的承诺。

承诺是一种加密方式,可确保所提供的信息有效且未被篡改。它们允许保护敏感信息,同时仍然支持验证和信任。承诺对于在 Aleo 上实施智能合约也至关重要,因为它们可以验证合约条件并确保合约的执行遵守指定的规则而不暴露底层数据。

生成交易涉及创建对新记录的承诺以及计算已使用记录的唯一序列号。这意味着承诺是过渡和交易级别证明生成的一部分。

**链下执行和程序证明

最后一个难题是链下执行,它解决了必须在链上发布交易数据的问题。

这是通过去中心化私有计算(DPC)实现的,它允许在不公开透露有关用户操作的详细信息的情况下证明交易的正确性。DPC结合了零知识证明和链下执行:用户在本地(链下)执行计算并将零知识证明(“程序证明”)发布到区块链上

程序证明是在程序执行时随时创建的,用于说服验证者(和第三方观察者)计算已正确完成,同时保持输入和输出的私密性。Aleo 基于 SNARK,使用 Marlin 证明算法生成程序证明。密码学和证明生成由 SnarkVM 处理。

虽然 SNARK 受益于尺寸小(“简洁”)和快速验证,但生成证明仍然比运行底层计算困难得多。特别是随着 ZK 应用变得更加先进,证明的复杂性也随之增加,因为它们需要更大的运算电路。

Aleo 程序证明目前可以由用户在本地生成委托给第三方证明者。这些涉及性能和隐私之间的权衡:

本地证明生成是最信任最小化的解决方案,因为它不需要与其他任何人共享私人输入。但是,性能仅限于您自己的硬件。

对于更复杂的证明 - 用户可能希望委托给具有专用硬件的第三方证明者。虽然外包证明生成可以带来更好的性能,但它会牺牲隐私,因为用户需要共享计算中使用的一些数据以使证明者能够计算零知识证明。

一个活跃的研究领域是如何在两者之间进行折衷。一个例子是利用多方计算(MPC)和多个证明者的网络,其中没有一个证明者看到完整的信息集。这将允许用户至少保留一些隐私,同时仍然使他们能够通过委托获得更快的证明时间的优势。

归根结底,这取决于用户的偏好。然而,选择在本地生成程序证明仍然很有价值,因为没有它,您就会迫使用户依赖第三方。这违背了 Aleo 的价值观以及区块链的一般精神(去中心化和无需许可)。

原文:https://equilibrium.co/writing/privacy-blockchains-and-aleo-deep-dive ,原文作者:Hannes ,编译:AleoAsia

 Aleo 是第 1 层区块链,为网络带来隐私 

Aleo生态|跨链桥IZAR凭什么双料冠军?

Aleo提高漏洞赏金!最高x3倍!最快5天可得!

Aleo即将重启!关于隐私区块链,Aleo与其他隐私项目比较

Aleo为什么要从头开始构建L1,而不是在以太上构建L2?

更多Aleo信息,请关注我们!重要的项目信息,将首发在VX群哦!

AleoAsia大中华社区,旨在为大中华区社区的伙伴传递最权威、最快速、最全面的项目资讯;同时协助Aleo在大中华区举办各种活动,包括宣传、会议、AMA等,扩大Aleo在大中华区的知名度,获得更多人对Aleo的认同感,从而加入到Aleo,一起为Aleo生态的繁荣努力!

加入AleoAsia大中华社区VX交流群,能更快获取信息哦!入群要求:请关注我们AleoAsia 公众号,并 转发文章至朋友圈,或点赞+点在看我们任一篇文章,联系AleoAsia即可入群啦。进群请遵守群规!

【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。DYOR!


继续滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存