当前位置: 首页 > news >正文

Stwo:基于Circle STARK和M31的下一代STARK证明系统

1. 引言

StarkWare团队和Polygon Labs团队,历时数月,构造了基于Mersenne素数域M31的Circle STARK协议,通过使用M31 over a circle,可基于任意有限域构造高效STARKs,具体见2024年2月19日论文《Circle STARKs》。

基于Circle STARK协议,StarkWare团队开发了超快的证明系统:Stwo,大幅改进了现有Stone prover(见Stone Prover:StarkWare的STARK Prover)。

Stwo开源代码见:

  • https://github.com/starkware-libs/stwo(Rust)

BabyBear域背景知识见:

  • RISC Zero的Babybear域 及其 扩域
  • 技术探秘:在RISC Zero中验证FHE——RISC Zero应用的DevOps(2)

Mersenne素数域M31背景知识见:

  • Plonky3 Mersenne素数域的Reed-Solomon codes设计
  • 基于circle group的Reed-Solomon codes

传统STARKs协议,其组成步骤要求代数结构:

  • 需要一个素数域 p p p,其 p − 1 p-1 p1可被2的大幂整除。

即传统STARKs,其所使用的域内要有一个smooth order的cyclic group。
原因在于STARKs协议中有2大核心:

  • FFT:使用FFT算法来高效插值点,并编写包含相邻行的约束。
  • FRI

这就排除了许多尺寸较小的域,尽管这些域非常适合高效计算。如,Mersenne素数域M31,其 p = 2 31 − 1 p=2^{31}-1 p=2311,而 p − 1 = 2 ( 2 30 − 1 ) p-1=2(2^{30}-1) p1=2(2301)甚至不能被 4 4 4整除。从而陷入僵局:

  • 传统STARKs协议无法与M31结合使用

数年前,曾希望让STARKs协议适用于2种主流加密曲线:secp256k1 和 secp256r1。但这2条曲线也不满足上面的要求。为此,还研究出了Elliptic Curve Fast Fourier Transform (ECFFT) Part I: Fast Polynomial Algorithms over all Finite Fields论文,其使用椭圆曲线为FFT和FRI提供了替代的结构源,在该论文中,详细介绍了将STARKs用于任意域的机制——使用某椭圆曲线的cyclic group。

为能让M31与STARKs结合使用,StarkWare团队和Polygon Labs团队合作,最终有了Circle STARKs:

  • 一种紧凑、优雅的协议,避免了ECFFT论文的重型机制。
  • 简而言之:当 p + 1 p+1 p+1可被2的大幂整除时(如M31),基于该素数域的circle curve( x 2 + y 2 = 1 x^2+y^2=1 x2+y2=1)提供了适于FFT和FRI所需的结构。

在这里插入图片描述

2. Stwo:基于Circle STARK和M31的下一代STARK证明系统

Stwo:

  • 利用 Circle STARK 和各种其他优化来带来前所未有的证明性能。

Stone(为St-one)为一代,而Stwo(S-two)为二代。已基于Stone系统构建的应用链和Starknet,都不受影响,高级Cairo将与Stwo完全兼容。当时机到来时,Stwo 已准备好推出,Starknet 生态系统(即用户和开发人员)将受益于 Stwo 的下一级别的扩展,而无需执行任何操作!Stwo 将与编写合约的高级Cairo代码兼容,也与Sierra兼容。当前基于Stone的Starknet prover(s),未来将使用Stwo。用户/构建者/dapp 也将在延迟和费用方面受益。

3. 性能对比

在《Circle STARKs》论文中,对基于M31的Circle STARKs,和,基于Babybear域的传统STARK(使用的Babybear代码为https://github.com/Plonky3/Plonky3/commit/86d13ddf269427c4788cdd41f413308a6050f9f3)做了性能对比,要快约1.4倍:
在这里插入图片描述

参考资料

[1] StarkWare 2024年3月博客 Stwo Prover: the next-gen of STARK scaling is here
[2] 2024年2月21日 Circle STARKs

相关文章:

Stwo:基于Circle STARK和M31的下一代STARK证明系统

1. 引言 StarkWare团队和Polygon Labs团队,历时数月,构造了基于Mersenne素数域M31的Circle STARK协议,通过使用M31 over a circle,可基于任意有限域构造高效STARKs,具体见2024年2月19日论文《Circle STARKs》。 基于…...

笔记本以太网集线器Hub充电可能导致网络异常(貌似是我把服务器网关写错了)

文章目录 笔记本以太网集线器(Hub)充电导致网络异常概述原理分析电源与信号干扰设备热度设备兼容性问题 解决方案升级固件提高设备散热效率选择兼容性好的设备 总结 今天用笔记本以太网直连服务器,一开始能连通,结果以太网hub插上…...

npm ERR! code ETIMEDOUT

在新建vue项目的时候报错 npm ERR! code ETIMEDOUT npm ERR! syscall connect npm ERR! errno ETIMEDOUT npm ERR! network request to https://registry.npmjs.org/vue%2fcli failed, reason: connect ETIMEDOUT 104.16.2.35:443 npm ERR! network This is a problem relate…...

动态规划(算法竞赛、蓝桥杯)--分组背包DP

1、B站视频链接&#xff1a;E16 背包DP 分组背包_哔哩哔哩_bilibili #include <bits/stdc.h> using namespace std; const int N110; int v[N][N],w[N][N],s[N]; // v[i,j]:第i组第j个物品的体积 s[i]:第i组物品的个数 int f[N][N]; // f[i,j]:前i组物品&#xff0c;能放…...

太阳能供电井盖-物联网智能井盖监测系统-旭华智能

在这个日新月异的科技时代&#xff0c;城市的每一个角落都在悄然发生变化。而在这场城市升级的浪潮中&#xff0c;智能井盖以其前瞻性的科技应用和卓越的安全性能&#xff0c;正悄然崭露头角&#xff0c;变身马路上的智能“眼睛”&#xff0c;守护城市安全。 传统的井盖监测系统…...

贪心 Leetcode 455 分发饼干

分发饼干 Leetcode 455 学习记录自代码随想录 假设你是一位很棒的家长&#xff0c;想要给你的孩子们一些小饼干。但是&#xff0c;每个孩子最多只能给一块饼干。 对每个孩子 i&#xff0c;都有一个胃口值 g[i]&#xff0c;这是能让孩子们满足胃口的饼干的最小尺寸&#xff1…...

策略开发:EMA如何计算

EMA的计算原理 EMA 是MA&#xff08;平滑移动平均线&#xff09;的另一种形式。全名“加权指数移动平均线”。 2/13就是12日移动平均线的平滑因子&#xff0c;他的意思是指&#xff1a;给予新价格 2/13的权重&#xff0c;给予过去的EMA 11/13的权重。 在计算的时候第一天的M…...

学习Android的第二十天

目录 Android Toast 吐司 常量 常用方法 例子 Android Notification 状态栏通知 Notification 的基本布局 扩展布局 Notification ( 状态栏通知 ) 相关的方法 例子&#xff1a; 参考文档 Android AlertDialog 弹出框 Android Dialog 继承图谱 AlertDialog 几种常…...

Linux技巧|centos7|重新认识和学习egrep和grep命令

前言&#xff1a; 相信提高文本检索工具&#xff0c;大家脑海里肯定有很多工具会自动跳出来&#xff0c;比如&#xff0c;grep&#xff0c;egrep&#xff0c;sed&#xff0c;cat&#xff0c;more&#xff0c;less&#xff0c;cut&#xff0c;awk&#xff0c;vim&#xff0c;vi…...

css实现背景渐变叠加

线性渐变效果图: .box{width: 100vw;height: 100vh;background:linear-gradient(to bottom,transparent,#fff 30%),linear-gradient(to right,pink,skyblue);}径像渐变效果图&#xff1a; .box{width: 100vw;height: 100vh;background:linear-gradient(to bottom,transparent,#…...

Unity(第二十四部)UI

在游戏开发中&#xff0c;用户界面&#xff08;UI&#xff09;是至关重要的一部分。它负责与玩家进行交互&#xff0c;提供信息&#xff0c;并增强游戏的整体体验。Unity 提供了强大的工具和功能来创建和管理 UI。 ui的底层就是画布&#xff0c;创建画布的时候会同时创建一个事…...

VSCode通过SSH连接Docker环境进行开发

文章目录 VSCode 插件Docker 镜像构建镜像部署环境 VSCode 连接本地Docker容器VSCode SSH连接Docker容器VSCode 打开容器内目录文件 VSCode 插件 Remote - SSH Docker 镜像 https://hub.docker.com/_/golang # Golang 镜像 docker pull golang:1.22构建镜像 Dockerfile F…...

【QT】QTableView或QTableWidget 搭配QLineEdit实现数据的搜索显示

在 Qt 中&#xff0c;QTableView 和 QTableWidget 都可以用来实现数据的搜索和显示&#xff0c;但它们的适用场景和实现方式有所不同&#xff1a; QTableView 适用场景&#xff1a;QTableView 适用于更复杂的场景&#xff0c;尤其是当需要处理大量数据或需要高度定制化的表格时…...

Apache Flink连载(三十五):Flink基于Kubernetes部署(5)-Kubernetes 集群搭建-1

🏡 个人主页:IT贫道-CSDN博客 🚩 私聊博主:私聊博主加WX好友,获取更多资料哦~ 🔔 博主个人B栈地址:豹哥教你学编程的个人空间-豹哥教你学编程个人主页-哔哩哔哩视频 目录 ​编辑...

快速幂(c++题解)

题目描述 我们通常把a的b次方记作a^b&#xff0c;为了方便&#xff0c;我们经常直接使用C内置函数pow(a,b)来完成这个工作&#xff0c;但a的b次方就是把a垒乘b次&#xff0c;时间复杂度为O(b)&#xff0c;当b值很大时&#xff0c;将会耗去大量时间&#xff0c;所以请同学们不能…...

C#单向链表实现:Append,Move,Delete,InsertAscending, InsertUnAscending,Clear

目录 一、链表定义 二、链表设计 1.先定义一个结点类&#xff08;Node&#xff09; 2.再定义链表类&#xff08;LinkedList&#xff09;并依次设计其方法 3.再实现删除方法 4.再实现Insert 的方法 5.再增加InsertAscending升序插入 6.再增加 InsertUnAscending 的方法…...

python基础-基本数据类型深入-2.1

目录 元组 什么是元组&#xff08;tuple&#xff09; 元组练习-1 元组的基本操作 元组常用内建函数 列表和元组的区别与总结 元组练习-2 元组练习-3 元组 什么是元组&#xff08;tuple&#xff09; 与列表&#xff08;list&#xff09;一样&#xff0c;元组&#xff0…...

Android LiveData Cannot add the same observer with different lifecycles

https://www.yxhuang.com/2022/05/29/livedata-add-some-observer-error/ 这篇文章已经解释的很好了。 其实在去年我写的文章&#xff0c; https://blog.csdn.net/jzlhll123/article/details/126593235 中提到了&#xff0c; 其实不论是java或者kotlin&#xff0c;不引用外部的…...

MongoDB聚合运算符:$cmp

文章目录 语法用法举例 $cmp聚合运算符返回连个值的比较结果。 语法 { $cmp: [ <expression1>, <expression2> ] }表达式可以是任何类型&#xff0c;使用标准的BSON比较顺序对不同类型的值进行比较。 用法 $cmp对两个值进行比较&#xff0c;返回&#xff1a; …...

【C++基础知识详细记录】

一、基础知识 C基础知识点的汇总涵盖了许多方面&#xff0c;包括但不限于以下内容&#xff1a; 1. 常量定义 使用#define宏定义常量&#xff1a; #define PI 3.14159265358979323846 // 宏定义一个浮点型常量PI使用const关键字定义常量&#xff1a; const int MAX_SIZE 100;…...

TDengine 快速体验(Docker 镜像方式)

简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能&#xff0c;本节首先介绍如何通过 Docker 快速体验 TDengine&#xff0c;然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker&#xff0c;请使用 安装包的方式快…...

【Linux】shell脚本忽略错误继续执行

在 shell 脚本中&#xff0c;可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行&#xff0c;可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令&#xff0c;并忽略错误 rm somefile…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

Debian系统简介

目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版&#xff…...

376. Wiggle Subsequence

376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...

IP如何挑?2025年海外专线IP如何购买?

你花了时间和预算买了IP&#xff0c;结果IP质量不佳&#xff0c;项目效率低下不说&#xff0c;还可能带来莫名的网络问题&#xff0c;是不是太闹心了&#xff1f;尤其是在面对海外专线IP时&#xff0c;到底怎么才能买到适合自己的呢&#xff1f;所以&#xff0c;挑IP绝对是个技…...