0.Intro
Web3重塑了数据价值,但分布式结构的区块链是一个封闭的确定性系统,智能合约没有实现外部API调用的功能,从而诞生了预言机这个机制用来帮助智能合约获取外部数据。
链下数据上链本身并不困难,难的是通过技术和机制设计生产信任,预言机问题就是需要解决从数据源到处理到喂价的信任问题。
成为公众认可的预言机的一个基本条件是去中心化,即是否允许单点故障和数据验证。链下去中心化的常用解决方案是使用多个数据节点形成去中心预言机网络,每个节点都会收集数据,达成共识后输入到区块链上的智能合约。
Chainlink架构
当前预言机的主要用法是为DeFi提供PriceFeed,安全及时准确地更新基础资产的价格。根据DefiLlama数据,Chainlink是市场上最大的预言机解决方案之一,在撰写本文时担保的总价值约为$11B,占整个市场的46%。
预言机市场数据
随着区块链的发展,对链下数据的需求越来越强烈,单纯为DeFi喂价已经无法满足开发者的需求。现实世界和Web2中的绝大多数数据都无法公开访问,但却是构建Web3创新应用场景所必须的。因此新一代预言机需要使智能合约能够以隐私保护的方式支持涉及敏感数据的复杂用例。
加密ETF为今年表现最佳的前五名非杠杆ETF,但仅流入1200万美元:5月13日消息,2023 年表现最佳的前五名非杠杆 ETF 均与加密挂钩,其中 Valkyrie Bitcoin Miners ETF(股票代码 WGMI)以 119% 的幅度领涨,但截至目前加密 ETF 仅吸引了 1200 万美元的资金流入,与整个行业 1180 亿美元的流入资金相比只是一小部分。[2023/5/13 15:00:40]
DECO是Chainlink在这个方向的解决方案,利用零知识证明技术,让用户可以向智能合约生成链下隐私数据证明,而不向公众或预言机节点本身透露数据。DECO可以接入现有API,即使需要终端用户验证,也无需API数据提供商做任何修改。目前已进行到alpha阶段,正与多个合作伙伴一起测试概念验证。
1.Background
这里提供关于TLS和ZKP的必要背景,DECO建立在这些协议之上。
1.1TLS
TLS是一个强大的、广泛部署的安全性协议,前身是SSL,旨在促进互联网通信的私密性和数据安全性,位于应用程序协议层和TCP/IP层之间,主要用例是对web应用程序和服务器之间的通信进行加密。
通过HTTP进行的通信都是以纯文本形式进行的,容易被窃听,篡改和冒充。使用TLS后,用户发送到网站的HTTP数据和网站发送给用户的HTTP数据都被加密,接收者必须使用密钥来解密加密的数据。HTTPS?是在HTTP协议基础上实施TLS加密,是网站的标准做法,网站需要在其源服务器上安装TLS证书,浏览器会将所有非HTTPS网站标记为不安全。
Jump Crypto、Aptos Labs向Binance主导的复苏基金捐助5000万美元:金色财经报道,根据一份新闻稿,Aptos Labs和Jump Crypto宣布承诺向币安牵头的价值10亿美元的行业复苏计划 (IRI) 捐助5000万美元。Jump Crypto和新推出的Aptos区块链背后的实体Aptos Labs与风险投资公司Polygon Ventures和Animoca Brands以及GSR、Kronos和Brooker Group一起为该基金提供资金。
此前消息,Binance公布10亿美元行业复苏计划简介,需要时将增至20亿美元。[2022/11/25 8:06:20]
非HTTPS网站
TLS的基本思路是采用公钥加密法,网站公开共享的?TLS/SSL证书包含公钥,而私钥安装在源服务器上,并由网站所有。客户端先向服务器端索要数字证书公钥,然后用公钥加密信息,服务器收到密文后,用自己的私钥解密。
这里有一个问题,公钥加密计算量太大,为了减少会话耗用的时间,每一次会话客户端和服务器端都生成一个"会话密钥",用它来加密信息。由于"会话密钥"是对称加密,所以运算速度非常快,而服务器公钥只用于加密"会话密钥"本身,这样就减少了加密运算的消耗时间。
因此TLS协议主要可以分为两个层:
做认证密钥协商的握手协议(handshakeprotocol):明文通信,通过非对称加密相互确认彼此验证,确立将使用的加密算法,并生成一致的会话密钥用于记录协议的对称加密做对称加密传输的记录协议(recordprotocol):协议主体,对数据传输进行保密性和完整性保护
美FDIC下令五家加密交易平台停止“虚假或误导性陈述”:金色财经报道,美国联邦存款保险公司(FDIC)周五发出信函,要求五家公司及其管理人员、董事和雇员停止并终止就FDIC存款保险作出“虚假和误导性陈述”,并立即采取纠正措施来解决这些虚假或误导性陈述。五家公司分别为FTX US、Cryptonews、Cryptosec、SmartAsset和FDICCrypto。
FDIC涵盖联邦监管的银行账户,每个账户保额最高可达250,000美元。FDIC表示,“联邦存款保险法(FDIAct)禁止任何人陈述或暗示未投保的产品是FDIC保险的,或故意歪曲存款保险的范围和方式。FDI法进一步禁止公司通过在公司名称、广告或其他文件中使用'FDIC'来暗示他们的产品是通过FDIC投保,FDIC获得FDI法案的授权,可以对任何人执行这项禁令”。对此,FTXUS母公司FTX首席执行官Sam Bankman-Fried在推特回应,“FTX没有FDIC保险……我们合作的银行有。我们从来没有其他意思,如果有人误解了它,我们深表歉意。”[2022/8/20 12:36:49]
TLS协议栈
TLS的加密套件是4个算法的组合:
认证(Authentication)?:判断身份的真实性,主流的有RSA/DSA/ECDSA密钥交换(Keyexchange)?:通信双方协商用于加密的密钥,主流的有ECDHE加密(Encryption)?:用于通信的对称加密,趋势是使用GCMMAC(MessageAuthenticationCode,消息认证码)?:用于验证数据完整性以及数据是否被篡改,主流有SHA256/SHA384/SHA1等TLS非常强大,但有一个限制:不允许用户向第三方证明他所访问的数据确实是来自某个特定的网站,因为数据传输使用的是对称加密,用户和服务器一样有能力对数据进行签名。直观的例子是,有很多网站的服务器内都存有Alice的身份信息,可以轻松验证Alice已经超过18岁,但Alice很难向Bob证明这点。Alice可以从网站上截图,但截图很容易伪造,即使截图能被证明是真实的,也会泄露信息——Alice的确切出生日期,而不仅仅是她已超过18岁这个事实。
美联储会议纪要:“几乎没有证据”表明通胀压力正在消退:8月18日消息,美联储会议纪要显示,与会者一致认为,“几乎没有证据”表明通胀压力正在消退,需要相当长的时间才能解决问题。与会者指出,近期通胀预期读数与固守在2%的长期预期“一致”。与会者“强调”需求放缓将在降低通胀方面“发挥重要作用”。
一些与会者表示,政策利率必须达到“足够限制性”的水平,以控制通胀,并在该水平保持“一段时间”。[2022/8/18 12:32:48]
预言机需要去中心化证明链下隐私数据的出处,并在不泄露隐私的前提下供智能合约使用。零知识证明可以帮助实现这些功能。
1.2ZKP
零知识证明在区块链受到广泛关注,主要应用为ZK-Rollup与隐私技术(真正的zk)。零知识证明允许Prover向Verifier证明其拥有一个解能够解决某个计算问题,而无需透露任何关于该解的额外信息。
一个典型的ZK系统可以分为前端和后端。
前端:编译器,将需要验证的Statement写成领域特定语言,再编译为ZK友好的格式,例如算数电路;后端:证明系统,检查电路正确性的交互式论证系统,例如Marlin,Plonky2,Halo2;
ZK系统
在区块链这样的开放系统上构造交互提问的流程很复杂,证明需要任何人都能随时进行验证,因此区块链应用上的ZK系统通常是非交互式的,交互式可以使用Fiat–Shamir-heuristic转换为非交互式。
Addem Capital:预计在未来两年获1.2亿美元加密资金,支持具有债务资本的创新者:6月7日消息,拉丁美洲加密货币交易所Bitso与墨西哥债务基金Addem Capital建立合作关系,旨在为企业家提供获得资本的途径。Addem Capital表示,预计在未来两年内获得1.2亿美元的加密资金,用于支持具有债务资本的创新者。(CrowdfundInsider)[2022/6/7 4:08:16]
2.HowDECOworks
DECO在HTTPS/TLS协议基础上进行了扩展,使得服务器端无需修改就能使用。
DECO的核心思想是在Prover(用户或运行DECOProver的Dapp),Verifier(运行DECOVerifier的Chainlink预言机),Server(数据提供商)?之间构建一个新颖的三方握手协议。
Provenance:当Prover从WebServer查询信息时,Verifier见证交互过程,并收到由Prover就TLS会话数据创建的一个承诺,由此Verifier就能验证信息的真实来源;Privacy:如果数据无需隐私,Prover可以直接向Verifier提供可以解密数据的密钥,供开发者在Dapp中加入数据;如果需要隐私,Prover利用ZKP生成不泄露数据的证明,供开发者在Dapp中加入。
DECOExample
具体来说,DECO协议由三个阶段组成:
三方握手,Prover,Veri?er和Server建立特殊格式的会话密钥,保证数据不可伪造;查询执行,Prover使用带有她的私有参数?θs的Query,向Server查询数据;证明生成,Prover证明响应满足所需条件。
DECOArchitecture
2.1Three-partyhandshake
注:以下说明基于AES-CBC-HMAC加密算法,TLS1.3只保留了更安全的AEAD作为加密算法,使用一个密钥用作加密和MAC,不需要MAC密钥。但由于TLS1.3的密钥独立性,同样也可以构建一个复杂度类似的三方握手协议。
Prover?P?不能在获取MAC密钥后再作出承诺,否则他就可以伪造或篡改数据,因此三方握手的思想是将Prover?P?和Veri?er?V?共同作为TLS客户端,与TLSserver?S?建立一个共享MAC密钥。MAC密钥?k?在客户端侧被切分,Prover持有?kp,Veri?er持有?kv,k=kp+kv。同时,?P?还持有用于对称加密算法的加密密钥?k^{Enc}。如果Veri?er不作恶,三方握手协议就能确保数据是不可伪造的。
2.2Queryexecution
在握手之后,由于MAC密钥是秘密共享的,P?和?V?执行一个交互式协议,并使用私有参数?θs?来构建一个加密查询的TLS消息Query?Q。然后?P?作为一个标准的TLS客户端将?Q?发送给?S,这个过程中只有?P?与?S?通信,其发送的任何查询都无法泄露给?V?。
在从?S?收到响应?R?后,P?通过向?V?发送密文?R??承诺会话,并收到?V?的?kv?,验证响应?R?的真实性。
2.3Proofgeneration
接下来,P?需要证明密文?R??对应的明文?R?满足某些属性,如果不需要隐私可以直接揭示加密密钥?k^{Enc},在需要隐私的情况下需要使用零知识证明。
假如明文由几个数据块组成?R=(B1,...,Bn),DECO使用选择性公开来生成零知识证明:
只揭示特定的数据行:在不揭示其他数据块的前提下,证明?R?的第?i?个数据块是?Bi隐藏包含隐私数据的数据行:证明?R_{-i}?和?R?相等,除了?Bi?被删除
然而,很多时候Verifier需要验证所揭示的子字符串是否出现在正确的上下文中,上面提到方法不足以提供上下文的完整性保护。为了弥补这一点,DECO利用了一种名为零知识两阶段解析的技术:Prover在本地解析其会话数据,确定能说服Verifier的最小子字符串,再向Verifier发送数据。由此实现了隐私性。
简洁的非交互式零知识证明在计算和内存方面通常在Prover侧具有很高的开销。由于DECO进行的ZKP的Verifier是指定的,因此可以使用更高效的交互式零知识证明,例如更小的内存使用,避免可信设置,廉价的计算等。
目前的AlphaTest中DECO依旧是使用Dapp在充当Prover,在未来的迭代中,计划Prover可以由终端用户本地部署,或在可信执行环境中部署。
3.Application
DECO可以验证用户链下身份信息的有效性,同时还能保障数据隐私,从而解锁很多Web3创新应用场景,从经济到社交。
自托管社交恢复/法律身份证明:使用DECO,利用已经拥有成熟身份验证机制的机构网站充当社交恢复其中一个守护人。
信用借贷/资金证明?:Teller是一个DeFi信用借贷协议,使用DECO协议证明用户在链下银行账户中的资产余额超过了贷款所要求的动态最低门槛。
粉丝证明/交互证明:Clique是一个社交预言机,正在开发一种解决方案,提供对跨各种社交媒体平台的链下用户影响力、忠诚度和贡献的深度分析。
数字身份/社交身份证明:PhotoChromic是一个数字身份解决方案,使用DECO将Web3用户与其Twitter或Discord社交账户绑定,并在过程中不暴露底层个人身份数据,使应用能够过滤出真实的用户。DAO的抗女巫攻击,SBT,KYC/AML,etc.4.OtherPlayers
Axiom为UniswapTWAP构建ZK预言机,采取完全来自链上的可验证数据源,更类似于Indexing;和DECO更像是互补而非竞争关系:越来越多的经济活动会发生在链上,纯链上预言机是一个方向;越来越多的链下数据需要上链,链下隐私预言机也是一个方向。EmpiricNetwork?利用zk计算将整个预言机放在链上,没有数据必须流过的链下基础设施,和DECO不是一个方向上。4.Conclusion
Chainlink作为当前预言机的绝对龙头,通过DECO预言机,海量链下私有数据将能在隐私保护的前提下被链上智能合约调用,可以解锁从金融到身份到社交等诸多应用场景。潜在的隐患是Prover的证明生成速度,和Verifier的中心化问题。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。