专访 Hyper Oracle:可编程的 zkOracle 打造未来世界的超算

news2024/11/25 16:53:42

图片

许多 Web3 应用在实现的过程中,常常会遇到基础设施方面的限制,包括去中心化自动化、预言机、链上信息搜索等问题。绝大部分区块链的中间件网络都是依赖于节点质押来保证节点执行的诚实性,这样的模式会产生诸多衍生问题,例如安全性依赖于冗余计算、单位操作有价值上限等。因此,在处理安全可靠的链下数据的索引和自动化方面,需要一种新型的去中心化预言机网络

应运而生的 Hyper Oracle 就是一个可编程的 zkOracle 网络,它提供了一个链下计算网络,用于处理区块链智能合约的任意计算,用以保证区块链安全和去中心化,同时使开发者能够以新的方式与区块链数据进行交互。

Hyper Oracle 项目在 2022 年 8 月正式启动,在 9 月发布了第一版 Demo。之后,Hyper Oracle 与 PolyHedra 等多个合作伙伴达成了合作;今年 1 月,宣布了由红杉中国与 dao5 领投的 Pre-Seed 轮融资;最近成功完成了以太坊官方的 KZG Ceremony Grant,同时也收到了 Compound 的 Grant。

在一年的时间内完成了许多重要的迭代与突破,让我们走近 Hyper Oracle,一同了解它是如何作为基于零知识证明的预言机/中间件网络,来保证去中心化节点的数据和计算正确性。

图片

本篇文章是「2023 TinTinLand 项目支持计划」系列项目专访的第二篇,我们邀请到了 Hyper Oracle 与大家分享其在开发与探索「零知识证明+预言机」的经验与心得。

如果您对「2023 TinTinLand 项目支持计划」感兴趣,可点击推文《「2023 TinTinLand 项目支持计划」 开启,打造下一个 Web3 新星》了解更多信息,我们欢迎所有的优质 Web3 项目团队申请加入。

🔗报名链接:https://forms.gle/p3seKq748Th3czZn6

Hyper Oracle:可编程、去中心化的预言机

Hyper Oracle 的愿景是构建一个「World Supercomputer」。其核心概念就是将所有的网络组合到一起, 实现一个世界级别的超级计算机,这样的概念比以太坊起初的世界计算机的理想或许更加宏大。在 World Supercomputer 中, Hyper Oracle 会作为计算网络, 提供高性能且去中心化的计算能力,来让整个网络具备自动化计算,甚至链上机器学习计算的能力。

要实现这样的愿景,Hyper Oracle 选择了无需信任的和安全的预言机

预言机在 Web3 世界中是相当重要的组成部分,不仅包括喂价预言机 (输入预言机),同时也有索引预言机和自动化预言机 (输出预言机与 I/O 预言机)。对于一个去中心化应用来说,预言机是不可或缺的基础设施——如果这个预言机不是去中心化的,那么整个应用都会存在安全性隐患。

相比其他的预言机和中间件,Hyper Oracle 的独特优势在于: 可编程性与去中心化

图片

可编程性

在 Hyper Oracle 中,开发者可以通过 JavaScript 等高级语言和 Subgraph 的编程模式对预言机的数据进行处理。相比 Chainlink 等预言机,灵活度高非常多,还可以自定义接口。

图片

Hyper Oracle 网络中的 「智能合约」——zkGraph,作为可自定义的链下计算,同样是可定制和可编程的

zkGraph 是类似 Subgraph 语法以及使用了 JavaScript (AssemblyScript) 的程序,熟悉去中心化应用开发的开发者可以快速地上手 zkGraph 的开发。实际上,可以编译为 wasm 的任何程序都可以成为 zkGraph,这就意味着 zkGraph 实际上可以用任何语言来编写,能让开发者获得最大的灵活度和自由度。

为了让任意的 zkGraph 语法可以执行并且生成零知识证明,Hyper Oracle 使用了 zkWASM (可以理解成类似 zkEVM)。除此之外,还编写了很多底层库来帮助开发者进行 zkGraph 的开发,在指令集层面进行了一些优化以及适配。开发者在使用 zkOracle 和开发 zkGraph 的时候只需要编写几行非常简短的程序,即可让零知识证明来保证整个计算以及基础设施的安全性。

去中心化

Hyper Oracle 所有的计算都由零知识证明来保证安全性。零知识证明的存在通过密码学的假设,取代了传统预言机的以经济学所保证的类似 Optimistic 机制的安全性。

图片

目前,zkOracle 网络使用 zkPoS 从区块链的每个区块中检索数据作为数据源,并使用运行在 zkWASM 上的可编程 zkGraph 来处理数据,以 ZK 技术为基础,所有操作都可以实现无需信任和安全性

在数据来源方面,zkPoS 的意义就在于能够完全可信地获取以太坊等区块链网络上的数据,让这些链上数据作为 zkOracle 的数据源。

选取链上数据作为 zkOracle 的数据源的原因在于,链上数据是经过共识之后产生的,已经成为了受过安全性认证的可信数据。同时,这些数据正是 Oracle 中所需要的原始数据,开发者可以通过自定义的方式来进行二次处理。zkPoS 是市面上为数不多的完全去中心化获取区块链数据的方案,以零知识证明为安全假设,可以保证数据的完全可验证性

更简单的开发环境

开发者来说,通常要构建一个零知识证明驱动的应用时,开发者需要学习非常多的密码学以及 ZK 相关的知识,包括特定的 ZK 语言和框架 (Circom, Halo2, Cairo)。这些知识的学习和认知模型的转变都有一定难度,让普通开发者难以入门。

主流的方式是使用 zkEVM 来进行构建,让一个 Solidity 合约得到 ZK 的「超能力」。但是这个方案仍然受到了智能合约这个设计模型的限制,无法完成索引、自动化、机器学习等高要求的计算

Hyper Oracle 推出的 zkGraph,则让 ZK 应用的开发进一步地降低了门槛。zkGraph Studio 是编写 zkGraph 的 Web Code Editor 以及 Studio,任何有过智能合约或者去中心化应用开发经验的开发者,都可以无门槛地直接进行 zkGraph 的开发,实现任意的计算,为开发者带来了全新的体验。

图片

纯网页端的开发环境

zkGraph Studio 可以让开发者完全在网页中进行 zkGraph 的全套流程的开发、测试和部署。从体验上来说,zkGraph Studio 像是一个单独的 Web3 App,非常易于使用。为了构建这个 Studio,Hyper Oracle 实现了网页端的多文件编译流程,以及 AssemblyScript 的编辑器的开发。

Link-compiler:混合两种编程语言

在 zkGraph 的编译流程中,不单单是类似 JavaScript 的 AssemblyScript 语言,还需要 C 语言的编译。Hyper Oracle 的工程师构建了首个 AssemblyScript-C 语言的 link compiler,能让两种语言被同时混合编译,这个突破能让 zkGraph 的性能得到巨大的提升。

整体来说,zkGraph Studio 实现了很多的底层工作以及优化,用户只需要编写基本的代码,无需担心编译、环境以及部署等「脏活累活」。

zkGraph Standard:DApp 开发的基础设施

Hyper Oracle 的产品 zkGraph Standard 提供一系列基础设施服务,供任何 DApp 开发人员使用。zkGraph Standard 由 zkIndexing 和 zkAutomation 组成,可以理解为 ERC 一样的标准。

zkIndexing 类似于 The Graph 这样的索引网络,而 zkAutomation 类似于 Gelato 这样的自动化网络。目前 Hyper Oracle 开放了测试网,开发者可以在 Web Code Editor 或者 zkGraph Template 中自行编写 zkGraph,从而使用 zkIndexing 和 zkAutomation 的服务。

使用方面,任何 DApp 都可以使用 zkIndexing 来进行据的收集以及前端展示,以及使用 zkAutomation 来建立 Keeper、Bot 等的自动化服务

应用场景方面,Hyper Oracle 目前正在构建一些小的用例 Demo,包括 Rollup TPS 的计算以及 DeFi 应用 TVL 的计算等。在 Compound 的 Grant 合作下,Hyper Oracle 近期也为 Compound 构建了一个完全去中心化的 Liquidation Keeper Bot

孵化新一代去中心化应用

Hyper Oracle 的生态建设计划主要包括两个方面:与现有协议直接合作 + 孵化新一代的去中心化应用,未来还将会开放节点的自行部署与运行,让整个网络更加去中心化。

图片

与现有协议合作

与行业内的领军人物进行交流与探索,与行业内的核心项目进行合作,以及与开发者的直接合作,可以让 Hyper Oracle 的基础设施获得直接的采用以及关注。Hyper Oracle 和许多 ZK 相关的核心研发人员进行了技术上的交流以及方案的研讨。

Hyper Oracle 团队认为,与大项目进行 Grant 形式的合作也是非常重要的,可以在早期相互绑定,因此团队也积极申请这些机会,拿到了以太坊基金会以及 Compound 的 Grant。

孵化新项目

孵化新项目则可以进一步拓展 Hyper Oracle 的应用场景,并吸引新的开发者进入其生态。目前已有 15 个以上的团队正在与 Hyper Oracle 进行密切合作,通过使用 Hyper Oracle 作为基础设施,进行项目开发。与项目的首批用户进行直接交流是一种有益的形式,因为他们的反馈对项目本身的发展也有非常大的帮助。

打造去中心化网络

Hyper Oracle 将会在今年开始推出测试网的不同阶段。在后期的计划中,项目会开放节点的自行部署与运行,让整个网络更加去中心化。

除此之外,Hyper Oracle 会更加着重于 zkDapps 叙事的构建,希望帮助更多的开发者和 Builder,在无需学习任何 ZK 知识或者特定编程语言的前提下,就可以享受 ZK 所带来的高性能以及安全性。

活跃的社区活动同样是 Hyper Oracle 联结更多优质项目的发力点。近期,Hyper Oracle 会在 SBC 期间的多个活动中进行演讲分享,包括柏林 Dappcon、EthSingapore、Token2049、DevConnect 等。

Hyper Oracle 寄语

我们有幸参加了 TinTinLand 举办的 Twitter Space 活动,社区的热情给我们留下了深刻印象。TinTinLand 专注于通过活动、研讨会、黑客马拉松等方式开展开发者教育与分享,我们期待着之后探索各种合作方式。我们认为 Web3 中最重要的资源就是开发者社区,我们推荐任何项目或者开发者关注各种机会,多多尝试。

目前「2023 TinTinLand 项目支持计划」仍在进行中,如果您也希望加入该计划,和我们一起共建 Web3,就可以将下方链接复制至浏览器中打开,立即报名联系我们哦!

👉🏻报名链接:

https://forms.gle/p3seKq748Th3czZn6

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/922778.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux centos7 sort命令的学习与训练

sort命令的功能是对文件中的各行进行排序。sort命令有许多非常实用的选项,这些选项最初是用来对数据库格式的文件内容进行各种排序操作的。实际上,sort命令可以被认为是一个非常强大的数据管理工具,用来管理内容类似数据库记录的文件。 sort…

Centos7防火墙启动失败问题

下面记录一下防火墙启动失败问题排查和解决的过程。防火墙启动失败的错误信息如下: ERROR: Exception DBusException: org.freedesktop.DBus.Error.AccessDenied: Conn...n file 比较郁闷的地方是之前防火墙是正常启动的,后面不知道服务器修改了什么配置…

[MyBatis系列②]Dao层开发的两种方式

目录 1、传统开发 1.1、代码 1.2、存在的问题 2、代理开发 2.1、开发规范 2.2、代码 ⭐mybatis系列①:增删改查 1、传统开发 传统的mybatis开发中,是在数据访问层实现相应的接口,在实现类中用"命名空间.id"的形式找到对应的映…

ARM汇编【5】:STACK AND FUNCTIONS

在这一部分中,我们将研究称为堆栈的进程的一个特殊内存区域。本章介绍了Stack的用途和相关操作。此外,我们还将介绍ARM中函数的实现、类型和差异。 STACK 一般来说,堆栈是程序/进程中的一个内存区域。这部分内存是在创建进程时分配的。…

《信息安全技术 数据安全风险评估方法》(征求意见稿)解读

8月21日,全国信息安全标准化技术委员会秘书处发布关于征求国家标准《信息安全技术 数据安全风险评估方法》(征求意见稿)意见的通知,面向社会广泛征求意见。 一、数据安全相关政策法规 此前,国家也发布了多部数据安全相…

dockerfile镜像及Harbor私有仓库搭建的应用

目录 搭建私有仓库harbordockerfile构建镜像1,先创建一个目录2,编写dockerfile3,构建4, 验证镜像5,标记镜像6,上传镜像 搭建私有仓库harbor 首先安装容器编排工具:docker compose 我使用的是离…

企业如何做好实施数字工厂管理系统前的需求分析

随着工业4.0的到来,数字工厂系统解决方案已经成为企业提高生产效率、优化资源配置和提升产品质量的重要工具。在考虑实施数字工厂管理系统之前,企业需要进行详细的需求分析,以确保系统的实施能够真正满足企业的业务需求。本文将探讨企业如何做…

基于Spark框架的新闻推荐系统的设计与实现

1.摘要 离线ALS算法,以及基于内容的推荐算法进行结合.实时计算部分,使用Spark平台上的Spark Streaming流处理技术,处理日志收集框架Flume收集的日志信息. 2.需要的技术 jieba分词工具 LDA分词处理技术 LDA(Latent Dirichlet Allocatio

Java“牵手”天猫店铺所有商品API接口数据,通过店铺ID获取整店商品详情数据,天猫API申请指南

天猫商城是一个网上购物平台,售卖各类商品,包括服装、鞋类、家居用品、美妆产品、电子产品等。天猫商品详情可以帮助消费者更好的了解宝贝信息,从而做出购买决策。同时,消费者也可以通过商品详情了解其他买家对宝贝的评价&#xf…

一些总结C++(2)

1.windwos 不推荐使用redis 强行使用的话,可以用这个 hiredis-for-windowshttps://gitee.com/yokel007/hiredis-for-windows 使用方法:编译静态库。然后将所有文件作文C 包含目录,静态库作为库目录,然后添加链接。 不要使用wi…

海思Hi3861L开发三-新建自定义项目

一、简介 上一篇文章,介绍了如何下载安装SDK,并且编译和下载。但都是基于SDK原生提供的demo。那本节我们就来介绍一下,如果创建一个自己的项目。 二、新建目录结构 先看SDK提供的目录结构,如下图: 因为是基于应用的开发,所以我们只关注app这个文件夹。可以看到…

CentOS7.9安装docker服务,配置镜像加速器

目录 一、安装docker服务 二、配置镜像加速器 三、下载系统镜像(Ubuntu、 centos ) 四、基于下载的镜像创建两个容器(容器名一个为自己名字全拼,一个为首名字字母 ) 五、容器的启动、 停止及重启操作 六、查看正在…

2023国赛数学建模思路 - 案例:随机森林

文章目录 1 什么是随机森林?2 随机深林构造流程3 随机森林的优缺点3.1 优点3.2 缺点 4 随机深林算法实现 建模资料 ## 0 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 1 什么是随机森林&#xff…

启动audit服务报错

启动centos audit服务报错 错误信息 $service auditd restart Stopping logging: [FAILED] Redirecting start to /bin/systemctl start auditd.service Job for auditd.service failed because the control process exited with error code. See “systemctl status auditd.s…

Matlab进阶绘图第26期—双向堆叠图

双向堆叠图是一种特殊的堆叠图,其通过在两个方向构建堆叠图,从而可以对两种类别的同名及综合属性进行全方位的比较。 由于Matlab中未收录双向堆叠图的绘制函数,因此需要大家自行设法解决。 本文分享一个简单的双向堆叠图的绘制方法&#xf…

Vue3二维码生成

目录 qrcode.vue 快速开始 使用 全部代码 qrcode.vue https://github.com/scopewu/qrcode.vue/blob/main/README-zh_cn.mdhttps://github.com/scopewu/qrcode.vue/blob/main/README-zh_cn.md ⚠️ 如果你正在使用 Vue 3,请升级 qrcode.vue 到 3.x; &#x1f5…

elementUI moment 年月日转时间戳 时间限制

changeStartTime(val){debuggerthis.startT val// this.startTime parseInt(val.split(-).join())this.startTime moment(val).unix() * 1000 //开始时间毫秒if(this.endTime){this.endTime moment(this.endT).unix() * 1000 //结束时间毫秒if(this.startTime - this.endTi…

上海亚商投顾:创业板指反弹大涨1.26% 核污染概念股午后全线走强

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 市场情绪 三大指数今日集体反弹,沪指午后冲高回落,创业板指盘中涨超2%,尾盘涨幅也有所收…

Jsp 解决out.print()输出多出空行

一、原因 在 JSP 中&#xff0c;HTML 标签和 JSP 指令之外的内容会被当作文本处理&#xff0c;包括空行、空格和制表符等。当 JSP 引擎解析 JSP 页面时&#xff0c;会将这些文本内容原封不动地输出到响应中。 http响应 二、解决方法 在Jsp页面最前端添加 <% page trimDir…

国标视频云服务EasyGBS国标平台与海康4200平台级联后不能播放的问题解决方法

国标视频云服务EasyGBS支持设备/平台通过国标GB28181协议注册接入&#xff0c;并能实现视频的实时监控直播、录像、检索与回看、语音对讲、云存储、告警、平台级联等功能。平台部署简单、可拓展性强&#xff0c;支持将接入的视频流进行全终端、全平台分发&#xff0c;分发的视频…