Panther Protocol
👨🚀 Glaze & Jasmine:欢迎 Kacey 的投稿
如果你喜欢本期内容,不妨在阅读后给我们点个 ❤️ ,并在下方订阅 un.Block Weekly ⬇️
在互联网未出现的几千年间,人们囿于地域、语言等因素,一直保持局部交流的状况。这也让人们的隐私信息只能在局部传播或者被收集。
在互联网出现以后,人们的个人信息暴露在互联网上。各个中心化组织和集团肆无忌惮的侵犯个人隐私。
随着密码学的发展,人们通过区块链技术抵制中心化机构对数据的侵犯和控制,但与之相对应的,人们的所有交易数据在区块链上一览无余。
一些属于私人的点对点交易被公开或围观,部分鲸鱼资金和个人账户被暴露或者监控。
在相当程度上我们可以认为人们的数据隐私控制权从中心化机构手中让渡到了黑客手中。
近年来人们也在逐步推出一些新的隐私加密产品来保障人们的基础隐私。
Panther Protocol
Panther 是一个针对数字资产的去中心化隐私保护协议。它可以兼容绝大部分公链。
Panther 协议的理论基础是密码学中的 ZKP(零知识证明)。
零知识证明最早是由 Goldwasser、Micali 和 Rackoff 在 1985 年提出的。虽然他们当时提出的方案并不具有实际性,但 ZKP 作为一种数学可能性猜想,引发了持续的研究。
ZKP(Zero-knowledge Proof)
ZKP 有以下三个特性:
可靠性:如果声明是假的,验证者将始终拒绝
完整性:如果声明是真的,验证者将始终接受
零知识:验证者除了证明的真实性之外,不学习任何额外的信息
ZKP 在实际操作中被分为交互式(ZKPs)和非交互式(NIZK)。
交互式证明在验证时需要验证者和验证者之间的交互,而非交互式零知识证明允许证明者生成和发布一个证明。这个证明可以被任何验证者验证。证明者无需每次和和验证者交互。也就是说非交互式证明只需要在证明时证明函数的大小就可以,而不需要证明者和验证者之间的几轮交互。因此非交互式零知识证明在区块链中的应用更广泛。
为了更好地说明,我们现在假设被验证者是 Yecak,验证者是 YAl。
在最简单的办法中,我们可以随机选取椭圆曲线上的两个点 $x$ 和 $y$,经过椭圆曲线函数加密之后,只需要向验证者 YAl 发送 $E(x)+E(y)$,验证者 YAl 可以很容易地通过验证 $E(x+y)$ 来验证关于 $x$ 和 $y$ 的关系是否成立。因为由于椭圆曲线加密的性质,给定 $E(x)$ 和 $E(y)$ 的值,可计算出关于 $x$ 和 $y$ 的某些加密函数值,比如 $E(x+y)$。
虽然这种方法简单易行,但是通过穷举法也可以将此加密方法进行破译。因而我们对加密方式进行了改进:给原来简单的两个数值增加一个随机偏移项 $R(x)$。随机偏移多项式已经可以处理一些简单的零知识验证,但是当需要验证的逻辑变得复杂时,一个简单的多项式就不足以处理了。
为了处理更复杂的逻辑关系下的零知识证明,我们可以再加入一个满足一定性质的秘密多项式 $P(x)$。验证者 YAl 只需要知道 $P(x)$ 满足什么性质,但不需要知道它具体是什么。
那么此时,正如之前验证 $E(x+y)$ 一样,验证者 YAl 需要证明的是以下声明:在随机为 $x$ 选取一个值 $x=s$ 时,$E(P(s)+R(s))$ 是否满足给定的性质就可以了。
但是在这个时候,验证者 YAl 将取值 $x=s$ 发送给了 Yecak,虽然函数 $P$ 是隐藏的,但是由于函数 $P$ 的性质是公开的,被验证者 Yecak 完全可以找一个满足函数性质的值发送给验证者 YAl 来骗过他。
为了解决这个问题,我们可以对这个随机值的选择 $x=s$ 也进行加密,但是这样操作之后,被验证者 Yecak 就没办法计算 $P(s),R(s)$ 及 $E(P(s)+R(s))$。
所以我们需要验证者 Yal 将 $E(x)$ 上的每一个点都发送给 Yecak,那么根据加密函数的性质(为了方便理解,正如我们之前验证 $E(x+y)$ )一样,Yecak 可以根据这些点值计算出 $E(P(s)+R(s))$。
虽然此时我们只对一个随机点 $x=s$ 验证了其满足函数的性质。但是我们知道,平面上的曲线是可能有相交点的,虽然概率很小,但是这个随机点可能会是一个满足多函数性质的交点。
为了解决这个问题,我们只需要在验证 $s$ 的同时再验证一个随机数 $k$。并且再重复上述过程,就可以解决这个问题了。
那么最后,举个例子,Yecak 进行了一笔交易,而 YAl 要验证她这笔交易。那么此时只需要 YAl 选取一个随机函数点 $s$ 和一个随机函数点 $k$。那么就会得到两串字符,$[E(1), E(s), E(s_2), …, E(s_d)]$,$[E(k), E(ks), E(ks_2), …, E(ks_d)]$。Yecak 此时使用一个随机偏移多项式 $R(x)$,以此函数计算 $E(P(s)+R(s))$ 以及 $E(kP(s)+kR(s))$ 的值并发送给YAl。
此时 YAl 只需要验证 E(P(s)+R(s)) 是否满足函数性质,以及收到的另一个函数值是否是 $E(kP(s)+kR(s))$。
那么这笔交易就做到了既没有暴露 Yecak 的任何信息,又验证了这笔交易。
这样就将一个复杂的交互式验证过程简化为了一个验证多项式的过程。虽然验证多项式已经大大简化了计算难度,但是验证函数的过程仍需要冗余的算力,这也对公链的性能和计算有所要求。
Panther Protocol 机制
在通过零知识证明解决隐私性的方法中有几种方案可供选择:智能合约、Layer1 以及 Layer2。
在基于智能合约的解决方案中,计算和验证是通过智能合约来实现的,用户将自己的资产存入智能合约当中,智能合约根据提前写好的流程进行验证,在操作结束后,用户可以将匿名资产撤回到一个新的地址。
在 Layer1 的解决方案中,我们需要通过跨链桥来实现这个操作。这种方法需要为每个交互验证都创建一个自定义的程序与 Layer1 进行链接。
而 Panther 协议采用了第三种方法:基于 Layer2 的解决方案。
下图为一个交易过程中的各方交互过程以及 Panther 协议在其中的作用。
此过程中包含 10 个参与方:
在交易过程中,用户可以自由生成一个匿名账户 A,并通过 Panther 协议构建的 zAsset 资产池中进行交易和转账,同时交易对手 B 也会拥有一个匿名账户。
在匿名过程中,用户便可以完成所有资产的交易和转账。
当用户完成交易退出时,用户可以燃烧掉 zAssets 来换取原生资产。此时 zAssets 中的验证者会基于 ZKP 证明交易的真实性。
同时在 zAssets 资产池中的交易会与信用提供商一起提供一个对外的证明,这份证明可以在钱包中查看。
通过三种方式的对比,我们可以明显地看出基于layer2的解决方案对用户的要求更低、更加便捷。
同时由于其许多事务处理都被捆绑在链外,以高度压缩的形式定期同步在链上的处理方式,增加了交易的吞吐量,节省了Gas,但同时交易的延时也上升了。
zAssets资产池的流动性
在资产池中,假设此时有 n 个池子,$P_1$ - $P_n$。每个池子都会有两个属性:
支持多种加密货币组成 ,$C_1$ - $C_p$。
每个池子最初的大小为 SP(S是一个被计算过的点集)
当用户需要进行交易时,会来选择其中一个池进行交易。每个用户都有 3 个特性:
她持有原生代币,如 BTC/ETH
她想要交易的规模为 $t_A$
内在隐私参数 $p_A$,这个参数代表用户愿意为这笔交易支付多少费用
为了确定用户的交易池选择,项目方采用了泊松博弈的似然估计方法来进行估计。
泊松博弈经常被使用在选举或者大规模拍卖以及开放式人口参与的情形下,在 1997 年,Myerson 曾证明,当参与者人数符合泊松分布时,关于参与人数的先验信息和后验信息是相等的。
关于泊松博弈在此不详加赘述。有兴趣的读者可以自行翻阅泊松博弈的假设和演算。
为了保证流动性,项目方需要确保每个池子中都有足够的 LP 质押。
对每个池子来说,有新 LP 质押时,会增加深度和流动性,同时也增加了此池对用户的吸引力。由于此池交易的增加,整个池子的总收益是上升的。但是对于此池的原有质押者来说,每个人的收益被摊薄了。
在这种矛盾之下,协议将会在每个月衡量每个质押者的边际成本,这个成本可以用一个函数 C 来表达。协议将用边际成本与质押收益做对比,以防止质押收益低于成本造成质押者离开,减少流动性。
当质押收益达到一个下界,即收益小于边际成本时,流动性提供者将离开。
为了确认这个下界,这个下界的所有数集被称为欧几里得空间中的点集 S。在开始过程中,项目方会对每个池子进行一定数量的流动性质押量的初始分配,并进行动态模拟,当流动性最终不收敛于 0 时,我们认为这个点集属于一个下界集。
此时我们可以通过不断的优化函数 C 来确认或提前计算边际成本,以便及时的调整质押收益。
在项目的后期,协议将进一步去中心化,每个池的成员可以在不同的池上进行优化。
代币经济模型
Panther 协总供应量为 10 亿ZKP,且永不增发。分配比例如下:
20% 留给团队,在3年内逐步解锁。
10% 留给私募投资者,在3年内逐步解锁。
40% 将用于储存奖励,并在 10 年内使用指数衰减曲线放出,以激励协议的早期使用者和质押者。
10% 将留给 DAO,用于社区参与和隐私采矿奖励。
在项目发展的第二阶段,ZKP 可以用于支付 DEX 的各种费用。
后期项目将交给 DAO 治理,各类决策权将从基金会转移到 DAO。
ZK 加密算法可以使用户的链上隐私被保护的更好,使得每笔交易被证明存在而不公布具体交易细节。
同时 Layer2 的协议可以支持多条公链聚合,应用范围更广。
在 LP 质押流动性方面,Panther 采用了过去在选举和大规模拍卖中被广泛采用的泊松博弈似然估计方法。并且不断通过优化边际成本函数来动态调整 LP 质押池的流动性。
Panther 协议采用了许多市场上未使用过的数学方法,这种创新性也为加密行业的项目带来了新的思考。
项目将于 12 月进行代币发售,未来的项目进展也值得关注。
📔 相关阅读:
🚏Find us
💻 Website: unblock256.com
✈️ Telegram: un.Block Weekly
🕊️ Twitter: @unBlock256
📧 Email:unblocketh@gmail.com
📤 分发渠道:知乎 | Notion | Substack | Medium | Mirror
作者:Kacey
特别鸣谢:
本文非商业目的转载授权遵循 CC BY-NC 4.0 协议
版权所有 ©️un.Block 2021