Cointime

扫码下载App
iOS & Android

详解Chainlink DECO:保护数据隐私,解锁应用场景

撰文:kokii.eth,启明创投 Intern

0. Intro

Web3重塑了数据价值,但分布式结构的区块链是一个封闭的确定性系统,智能合约没有实现外部 API 调用的功能,从而诞生了预言机这个机制用来帮助智能合约获取外部数据。

链下数据上链本身并不困难,难的是通过技术和机制设计生产信任,预言机问题就是需要解决从数据源到处理到喂价的信任问题。

成为公众认可的预言机的一个基本条件是去中心化,即是否允许单点故障和数据验证。链下去中心化的常用解决方案是使用多个数据节点形成去中心预言机网络,每个节点都会收集数据,达成共识后输入到区块链上的智能合约。

Chainlink 架构

当前预言机的主要用法是为 DeFi 提供 Price Feed(喂价),安全及时准确地更新基础资产的价格。根据DefiLlama 数据, Chainlink 是市场上最大的预言机解决方案之一,在撰写本文时担保的总价值约为 $11B,占整个市场的 46%。

预言机市场数据

随着区块链的发展,对链下数据的需求越来越强烈,单纯为 DeFi 喂价已经无法满足开发者的需求。现实世界和 Web2 中的绝大多数数据都无法公开访问,但却是构建 Web3 创新应用场景(信用借贷, 社交, DID, KYC/AML, etc.)所必须的。因此新一代预言机需要使智能合约能够以隐私保护的方式支持涉及敏感数据的复杂用例。

DECO是 Chainlink 在这个方向的解决方案,利用零知识证明技术,让用户可以向智能合约生成链下隐私数据证明,而不向公众或预言机节点本身透露数据。

DECO 可以接入现有 API,即使需要终端用户验证(例如获取银行账户余额需要登录),也无需 API 数据提供商做任何修改。目前已进行到 alpha 阶段,正与多个合作伙伴一起测试概念验证。

1. Background

这里提供关于 TLS 和 ZKP 的必要背景,DECO 建立在这些协议之上。

1.1 TLS

TLS(TransportLayerSecurity, 传输层安全性)是一个强大的、广泛部署的安全性协议,前身是SSL,旨在促进互联网通信的私密性和数据安全性,位于应用程序协议层和 TCP/IP 层之间,主要用例是对 web 应用程序和服务器之间的通信进行加密。

通过 HTTP 进行的通信都是以纯文本形式进行的,容易被窃听,篡改和冒充。使用 TLS 后,用户发送到网站(单击、填写表格等)的HTTP数据和网站发送给用户的 HTTP 数据都被加密,接收者必须使用密钥来解密加密的数据。HTTPS是在 HTTP 协议基础上实施 TLS 加密,是网站的标准做法,网站需要在其源服务器上安装 TLS 证书,浏览器会将所有非 HTTPS 网站标记为不安全。

非HTTPS网站

TLS 的基本思路是采用公钥加密法,网站公开共享的TLS/SSL 证书包含公钥,而私钥安装在源服务器上,并由网站所有。客户端先向服务器端索要数字证书公钥,然后用公钥加密信息,服务器收到密文后,用自己的私钥解密。

这里有一个问题,公钥加密计算量太大,为了减少会话耗用的时间,每一次会话客户端和服务器端都生成一个"会话密钥"(session key),用它来加密信息。由于"会话密钥"是对称加密,所以运算速度非常快,而服务器公钥只用于加密"会话密钥"本身,这样就减少了加密运算的消耗时间。

因此 TLS 协议主要可以分为两个层:

  • 做认证密钥协商的握手协议 (handshake protocol):明文通信,通过非对称加密相互确认彼此验证,确立将使用的加密算法,并生成一致的会话密钥用于记录协议的对称加密。
  • 做对称加密传输的记录协议 (record protocol):协议主体,对数据传输进行保密性和完整性保护。

TLS 协议栈

TLS的加密套件(CipherSuite)是 4 个算法的组合:

  1. 认证 (Authentication):判断身份的真实性,主流的有 RSA/DSA/ECDSA。
  2. 密钥交换 (Key exchange):通信双方协商用于加密的密钥,主流的有 ECDHE。
  3. 加密 (Encryption):用于通信的对称加密,趋势是使用GCM。
  4. MAC (Message Authentication Code,消息认证码):用于验证数据完整性以及数据是否被篡改,主流有 SHA256/SHA384/SHA1等。

TLS 非常强大,但有一个限制:不允许用户向第三方证明他所访问的数据确实是来自某个特定的网站,因为数据传输使用的是对称加密,用户和服务器一样有能力对数据进行签名。直观的例子是,有很多网站的服务器内都存有Alice的身份信息,可以轻松验证 Alice 已经超过 18 岁,但 Alice 很难向 Bob 证明这点。Alice 可以从网站上截图,但截图很容易伪造,即使截图能被证明是真实的,也会泄露信息——Alice 的确切出生日期,而不仅仅是她已超过 18 岁这个事实。

预言机需要去中心化(不依赖单点例如网站服务器)证明链下隐私数据的出处(Provenance),并在不泄露隐私的前提下供智能合约使用。零知识证明可以帮助实现这些功能。

1.2 ZKP

零知识证明(Zero Knowledge Proof, ZKP)在区块链受到广泛关注,主要应用为 ZK-Rollup(为了提高扩容效率在算法设计上做了不少妥协,不 zk 的 Validity Proof)与隐私技术 (真正的 zk)。零知识证明允许 Prover 向 Verifier 证明其拥有一个解(Witness)能够解决某个计算问题(Statement),而无需透露任何关于该解(Witness)的额外信息。

一个典型的 ZK 系统可以分为前端和后端。

  1. 前端:编译器,将需要验证的Statement写成领域特定语言(DSL),再编译为ZK友好的格式,例如算数电路;
  2. 后端:证明系统,检查电路正确性的交互式论证系统,例如Marlin, Plonky2, Halo2;

ZK 系统

在区块链这样的开放系统上构造交互提问的流程很复杂,证明需要任何人都能随时进行验证,因此区块链应用上的 ZK 系统通常是非交互式的,交互式可以使用Fiat–Shamir-heuristic转换为非交互式。

2. How DECO works

DECO 在 HTTPS/TLS 协议基础上进行了扩展,使得服务器端无需修改就能使用。

DECO 的核心思想是在Prover (用户或运行 DECO Prover 的 Dapp),Verifier (运行 DECO Verifier 的 Chainlink 预言机),Server (数据提供商)之间构建一个新颖的三方握手协议。

  • Provenance:当 Prover 从 Web Server 查询信息时,Verifier 见证交互过程,并收到由 Prover 就 TLS 会话数据创建的一个承诺(Commitment),由此 Verifier 就能验证信息的真实来源;
  • Privacy:如果数据无需隐私,Prover 可以直接向 Verifier 提供可以解密数据的密钥,供开发者在 Dapp 中加入数据;如果需要隐私,Prover 利用 ZKP生成不泄露数据的证明,供开发者在 Dapp 中加入。

DECO Example

具体来说,DECO 协议由三个阶段组成:

  1. 三方握手,Prover,Verifier和Server建立特殊格式的会话密钥,保证数据不可伪造;
  2. 查询执行,Prover使用带有她的私有参数θs(例如账号密码,API key)的Query,向Server查询数据 ;
  3. 证明生成,Prover证明响应满足所需条件。

DECO Architecture

2.1 Three-party handshake

注:以下说明基于AES-CBC-HMAC加密算法,TLS 1.3 只保留了更安全的AEAD作为加密算法,使用一个密钥用作加密和MAC,不需要MAC密钥。但由于TLS 1.3 的密钥独立性,同样也可以构建一个复杂度类似的三方握手协议。

ProverP不能在获取MAC密钥后再作出承诺,否则他就可以伪造或篡改数据,因此三方握手的思想是将ProverP和VerifierV共同作为TLS客户端,与TLS serverS建立一个共享MAC密钥。MAC密钥k在客户端侧被切分,Prover持有kp,Verifier持有kv,k=kp+kv。同时,P还持有用于对称加密算法的加密密钥k^{Enc}。如果Verifier不作恶,三方握手协议就能确保数据是不可伪造的。

2.2 Query execution

在握手之后, 由于MAC密钥是秘密共享的,P和V执行一个交互式协议(两方安全计算),并使用私有参数θs来构建一个加密查询的TLS消息 QueryQ。然后P作为一个标准的TLS客户端将Q发送给S,这个过程中只有P与S通信,其发送的任何查询都无法泄露给V。

在从S收到响应R后,P通过向V发送密文Rˆ承诺会话,并收到V的kv,验证响应R的真实性。

2.3 Proof generation

接下来,P需要证明密文Rˆ对应的明文R满足某些属性,如果不需要隐私可以直接揭示加密密钥k^{Enc},在需要隐私的情况下需要使用零知识证明。

假如明文由几个数据块组成R=(B1,...,Bn), DECO使用选择性公开(Selective Opening)来生成零知识证明:

  • 只揭示特定的数据行:在不揭示其他数据块的前提下,证明R的第i个数据块是Bi。
  • 隐藏包含隐私数据的数据行:证明R_{-i}和R相等,除了Bi被删除。

然而,很多时候 Verifier 需要验证所揭示的子字符串是否出现在正确的上下文中,上面提到方法不足以提供上下文的完整性保护。为了弥补这一点,DECO 利用了一种名为零知识两阶段解析(Two-stage Parsing)的技术:Prover 在本地解析其会话数据,确定能说服Verifier的最小子字符串,再向 Verifier 发送数据。由此实现了隐私性。

简洁的非交互式(NIZK)零知识证明在计算和内存方面通常在 Prover 侧具有很高的开销。由于 DECO 进行的 ZKP 的 Verifier 是指定的(Chainlink的预言机),因此可以使用更高效的交互式零知识证明,例如更小的内存使用,避免可信设置,廉价的计算等。

目前的 Alpha Test 中 DECO 依旧是使用 Dapp 在充当 Prover,在未来的迭代中,计划 Prover 可以由终端用户本地部署(例如手机),或在可信执行环境(TEE)中部署。

3. Application

DECO 可以验证用户链下身份信息的有效性,同时还能保障数据隐私,从而解锁很多Web3创新应用场景,从经济到社交。

  • 自托管社交恢复/法律身份证明(你是谁):使用 DECO,利用已经拥有成熟身份验证机制的机构网站(银行,社交媒体)充当社交恢复其中一个守护人。
  • 信用借贷/资金证明(你有多少钱):Teller是一个 DeFi 信用借贷协议,使用 DECO 协议证明用户在链下银行账户中的资产余额超过了贷款所要求的动态最低门槛。
  • 粉丝证明/交互证明(你与谁互动过):Clique是一个社交预言机,正在开发一种解决方案,提供对跨各种社交媒体平台(例如使用Twitter API)的链下用户影响力、忠诚度和贡献的深度分析。
  • 数字身份/社交身份证明(你拥有某个线上账户):PhotoChromic是一个数字身份解决方案,使用DECO将Web3用户与其Twitter或Discord社交账户绑定,并在过程中不暴露底层个人身份数据,使应用能够过滤出真实的用户。
  • DAO 的抗女巫攻击,SBT,KYC/AML,etc.

4. Other Players

  • Axiom为 Uniswap TWAP 构建 ZK 预言机,采取完全来自链上的可验证数据源,更类似于Indexing(eg.Hyper Oracle);和DECO更像是互补而非竞争关系:越来越多的经济活动会发生在链上,纯链上预言机是一个方向;越来越多的链下数据需要上链,链下隐私预言机也是一个方向。
  • Empiric Network利用 zk 计算将整个预言机放在链上,没有数据必须流过的链下基础设施,和 DECO 不是一个方向上。

5. Conclusion

Chainlink 作为当前预言机的绝对龙头,通过 DECO 预言机,海量链下私有数据将能在隐私保护的前提下被链上智能合约调用,可以解锁从金融到身份到社交等诸多应用场景。

潜在的隐患是 Prover 的证明生成速度,和 Verifier 的中心化问题。

评论

所有评论

推荐阅读

  • 中共中央、国务院印发《关于发展新质生产力的意见》

    10月9日,据新华社报道,中共中央、国务院印发《关于发展新质生产力的意见》,共七个部分、十九条。意见提出,以科技创新为引领,以全要素生产率大幅提升为核心标志,坚持创新主导、改革为要、因地制宜、先立后破。在产业方面,意见要求培育壮大新兴产业,前瞻布局量子科技、生物制造、氢能和核聚变能、脑机接口、具身智能、第六代移动通信等未来产业,并全面实施「人工智能+」行动,加快推进人形机器人等新一代智能终端场景应用。在激励与金融支持方面,意见提出建立企业研发准备金制度、提高企业研发费用加计扣除比例,完善长期资本投早、投小、投长期、投硬科技的支持政策,壮大耐心资本,丰富科技创新债券产品体系,支持优质科技型企业上市融资,优化科技型企业并购重组、股权激励等制度。意见同时强调,不能脱实向虚、贪大求全、搞泡沫化,严禁借发展新质生产力之名违规滥用政策,对一哄而上、盲目投资等造成重大损失的严肃追究责任。

  • 美国对AI服务器电源等产品发起337调查 立讯精密、工业富联等20家企业列名

    10月10日,据同花顺消息,美东时间10月9日,美国国际贸易委员会(USITC)发布公告,对「特定垂直电力传输系统、其组件及含该系统的计算系统」发起337调查,针对AI服务器供电环节,共20家企业列名,包括立讯精密、工业富联、鸿海、鸿佰科技、台达电子、广达与云达、英飞凌、芯源系统、伟创力、天弘科技等,横跨中国大陆、中国台湾地区及美国、德国、新加坡、加拿大。调查源于马萨诸塞州电源模块厂商Vicor于9月9日提交的投诉,指控涉案产品侵犯其专利,请求发布有限排除令和禁止令,这是Vicor三年内第三次发起同类投诉。按USITC程序,立案后45天内将确定结案目标日期,本案距正式结论尚需较长时间。

  • Robinhood Crypto正与T.Rowe Price Digital Assets探索推出股票代币

    10月10日,Robinhood Crypto 正与管理资产规模达 1.9 万亿美元的 T. Rowe Price Digital Assets 探索在 Robinhood Chain 上推出与主动管理型 ETF 挂钩的股票代币。相关合作处于探索阶段,潜在产品的推出需完成法律尽职调查、获得发行方董事会批准、公布最终条款并取得相关司法管辖区的监管批准。目前无法保证合作推进或产品推出,具体形式、时间及适用地区尚未确定。

  • 英伟达被曝停产RTX 5090 顶级游戏显卡让位给高价专业卡

    10月10日,英伟达可能停产最强的消费级显卡RTX 5090,把核心芯片留给售价更高的专业显卡。硬件爆料者MEGAsizeGPU称,未来生产的GB202芯片将全部供应RTX PRO系列,不再用于RTX 5090;另一名爆料者hongxing2020晒出疑似工厂通知,称中国特供版本也在停产范围。两者使用同系列GB202芯片但价格相差很大:RTX 5090配备32GB显存,首发价1999美元;面向AI开发与设计的RTX PRO 6000拥有96GB显存,官网标价1.6万美元,为前者的8倍。RTX 5090此前已在美国市场缺货,第三方卖家一度挂出9600美元,若停产属实消费者今后只能依赖剩余库存。另有爆料称,英伟达准备推出24GB版RTX 5080取代RTX 5090成为最高端游戏显卡,而现款RTX 5080的CUDA核心数量仅约RTX 5090的一半,4K游戏性能低约30%。

  • 俄美元首通话 普京称俄目前不可能恢复与乌谈判

    10月10日,俄罗斯总统助理乌沙科夫当地时间10日凌晨介绍了俄美两国领导人通话的有关情况。乌沙科夫表示,普京在通话中详细介绍了俄罗斯为回应乌克兰武装部队实施的恐怖袭击而采取的措施。普京表示,乌克兰方面试图破坏俄罗斯国家杜马选举并对民众实施袭击,导致立即恢复谈判的可能性遭到破坏。普京还指出,乌克兰方面试图阻止俄罗斯军队推进的企图没有任何成功的前景,俄军目前完全掌握战场主动权,并正在持续向前推进。普京强调,由于乌克兰方面的立场,特别是其试图破坏俄杜马选举的行为,目前不可能恢复与乌克兰的谈判。特朗普已指示将普京在通话中传递的信息转达给乌克兰代表团。乌沙科夫称,关于举行普京与特朗普双边会晤的问题,双方目前尚未进行具体讨论。(央视新闻)

  • Telegram 内置 Gram 钱包更名为 Money 并向全体用户开放

    10月9日,Telegram 已将其原仅向部分用户开放的钱包服务“Gram wallet”更名为“Money”,并正式向全平台超过十亿用户全面推出。“Money”是针对 Gram 代币的内置钱包,支持存储、转账以及购买平台礼物与收藏级用户名。 此外,配套交易平台“Walt”提供超过 300 种资产服务,涵盖代币化股票、贵金属、永续合约及理财收益项目。用户可通过“Walt”向“Money”钱包进行即时划转且免收网络手续费。官方同时提示,加密资产投资存在相应风险。

  • Blockchain.com 寻求批准开展预测市场和加密货币衍生品交易

    10月9日,加密资产平台 Blockchain.com 已向美国商品期货交易委员会(CFTC)提交申请,寻求获得指定合约市场(DCM)和期货佣金商(FCM)牌照,以向美国用户提供事件合约(预测市场)及加密货币衍生品交易服务。

  • 贝森特:美国本周可能查扣约 10 亿美元与伊朗相关的加密货币

    美国财政部长贝森特周四在 Newsmax 于华盛顿举办的 NPolicy Summit 上表示,我们本周可能会查扣 10 亿美元的加密货币,并称「我们知道它在哪里,我们正在孤立他们」。贝森特表示,特朗普政府对伊朗的举措已从「极限施压」转为「绝对孤立」,措施包括海上封锁、限制航空出行及切断陆路通道,阿联酋和阿曼正与美方合作,美方也在与巴基斯坦和土耳其合作切断所有进出伊朗的陆路通道。

  • Zcash 开发团队计划于明年 1 月引入抗量子签名以保护公开支付

    隐私加密货币 Zcash(ZEC)开发团队计划于明年 1 月在网络中引入后量子签名操作码,以支持基于哈希的签名技术,从而抵御潜在的量子计算攻击。该方案主要针对透明(公开)支付池,目前约有 70% 的 ZEC 存放于该池中。尽管开发者将 1 月定为目标期限,但具体的网络激活时间尚未最终确定。 该升级旨在防止攻击者利用现有公钥反向推导私钥并伪造支付授权。此外,Zcash 节点验证程序 Zakura 还推出了一项基于私密信息检索(PIR)的钱包工具,允许用户在查询多地址余额时不向服务器泄露地址间的关联性。此前,以太坊研究员 Justin Drake 曾警告人工智能可能加速破解传统加密算法,并呼吁加密货币持有者应对潜在的安全威胁。

  • BTC突破83000美元

    行情显示,BTC突破83000美元,现报83017.3美元,24小时涨幅达到0.66%,行情波动较大,请做好风险控制。