Zero Knowledge - 普拉蒂尤什·米什拉谈微型证明、折叠、低内存SNARK及其他 封面

普拉蒂尤什·米什拉谈微型证明、折叠、低内存SNARK及其他

Pratyush Mishra on Tiny Proofs, Folding, Low-Memory SNARKs and More

本集简介

在本期节目中,安娜·罗斯与尼科·莫恩布拉特与宾夕法尼亚大学计算机与信息科学助理教授普拉蒂尤什·米什拉展开对话。他们探讨了他在零知识证明研究中的多个主题,以及过去几年参与的部分工作。话题涵盖Garuda和Pari如何实现极简SNARK证明、Arc如何促进基于哈希的折叠技术、FICS与FACS的邻近证明、他在低内存SNARK领域的研究,以及零知识证明在区块链之外的场景应用。 普拉蒂尤什分享了这些理念如何相互交织——从加速证明过程到最小化证明体积,再到现实世界的应用场景。他还提及与本尼迪克特·宾兹、亚历山德罗·基耶萨等顶尖密码学家的合作,以及零知识技术如何在更广阔的计算机科学领域确立自身地位。 相关链接 Garuda与Pari:通过等效多项式承诺实现更快更小的SNARK Arc:里德-所罗门码的累加技术 FICS与FACS:通过代码切换实现快速IOPP与累加 Scribe:基于读写流式处理的低内存SNARK Coral:快速简洁的非交互式零知识CFG证明 Hekaton:通过证明聚合实现水平可扩展的zkSNARK 线性时间可编码码的查询最优IOPP 求和检查的时间空间权衡 Blendy:求和检查证明者的时间空间优化方案 无需同态的累加技术 vSQL:动态外包数据库的任意SQL查询验证 量子随机预言模型下的简洁论证 与陈彬毅探讨格密码、折叠技术与交响协议 Aztec是以隐私为核心的以太坊二层网络,支持兼具私有与公有状态及执行的智能合约。 关于Aztec的技术、研究与社区计划详情请访问aztec.network。 《零知识白板课》是由ZK Hack与Bain Capital Crypto联合制作的教育视频系列,聚焦零知识技术的构建模块。点击此处观看第三季及往季内容。 查看零知识领域最新职位:ZK播客职位板 **如果您喜欢我们的内容:** * 一键获取所有链接 @ZeroKnowledge | Linktree * 订阅播客通讯 * 关注Twitter @zeroknowledgefm * 加入Telegram社群 * YouTube频道同步更新 **支持节目:** * Patreon赞助 * ETH捐赠地址 * BTC捐赠地址 * SOL捐赠地址 * ZEC捐赠地址 阅读文字稿

双语字幕

仅展示文本字幕,不包含中文音频;想边听边看,请使用 Bayt 播客 App。

Speaker 0

欢迎来到零知识领域。

Welcome to Zero Knowledge.

Speaker 0

我是主持人安娜·罗斯。

I'm your host, Anna Rose.

Speaker 0

在本期播客中,我们将探索零知识研究和去中心化网络的最新进展,以及那些有望改变我们在线互动和交易方式的新范式。

In this podcast, we will be exploring the latest in Zero Knowledge research and the decentralized web, as well as new paradigms that promise to change the way we interact and transact online.

Speaker 0

本周,我和尼科将与宾夕法尼亚大学计算机与信息科学助理教授普拉图什·米什拉展开对话。

This week, Nico and I chat with Pratush Mishra, assistant professor of computer and information science at the University of Pennsylvania.

Speaker 0

我们与他探讨了自2021年他上次做客节目以来所取得的研究成果。

We catch up with him on the research he's produced since the last time he was on the show back in 2021.

Speaker 0

我们讨论了他正在研究的主题,比如与Garuda和Parry合作开发微型证明的SNARKs、基于哈希函数的折叠方案(ARC项目)、IOPP(即接近证明)、低内存SNARKs及其在区块链之外的SNARK应用等等。

We discussed the topics and themes that he is covering, such as working on SNARKs with tiny proofs with Garuda and Parry, folding schemes based on hash functions with his work ARC, IOPP, aka the proximity proofs work with fix and fax, low memory SNARKs, SNARK applications outside of blockchain, and much more.

Speaker 0

这些话题对节目的老听众来说会很熟悉,因为他的研究始终贯穿当今ZK研究中最前沿的课题。

A lot of these topics will be familiar to longtime listeners of the show as his work weaves in and out of some of the most cutting edge topics in ZK research today.

Speaker 0

很高兴能再次与他交流。

So it's great to catch up with him.

Speaker 0

在我们开始之前,我想分享一下我们已经推出了第三季的ZK白板研讨会。

Now before we kick off, I just wanna share that we've launched season three of the ZK Whiteboard Sessions.

Speaker 0

ZK白板研讨会由ZK Hack与Bain Capital Crypto合作制作。

The ZK Whiteboard Sessions are produced by ZK Hack in collaboration with Bain Capital Crypto.

Speaker 0

这个系列深入探讨了ZK中的一些关键概念。

This series goes deep on some of the key concepts in ZK.

Speaker 0

我已经在节目说明中添加了链接。

I've added a link in the show notes.

Speaker 0

一定要看看这些视频。

Be sure to check out these videos.

Speaker 0

它们是了解我们节目中经常讨论的ZK系统基础原理和技术的好方法。

They are a great way to learn about the fundamentals and techniques powering the ZK systems we often discuss on the show.

Speaker 0

另外,如果你想专业从事ZK领域或寻找新职位,我想向你推荐ZK招聘板。

Also, if you're looking to jump into ZK professionally or just looking for a new role, I wanted to point you towards the ZK jobs board.

Speaker 0

在那里你可以找到顶级ZK团队发布的职位信息。

There you can find job postings from top teams working in ZK.

Speaker 0

如果你是招聘团队,现在也可以在那里发布职位。

And if you're a team looking to hire, you can also post your job there today.

Speaker 0

我们听到很多团队通过这个平台找到了理想人选的好消息,希望它也能帮到你。

We've heard great things from teams who found their perfect hire through this platform and we hope it can help you as well.

Speaker 0

了解更多信息请访问 jobsboard.zeronknowledge.fm。

Find out more over at jobsboard.zeronknowledge.fm.

Speaker 0

你可以在我们的网站上找到这个链接,我也把它加到了节目备注里。

You can find this on our website, and I've added it to the show notes.

Speaker 0

现在有请Tanya简单介绍本周的赞助商。

Now Tanya will share a little bit about this week's sponsor.

Speaker 1

Aztec发明了数学算法,编写了语言,并证明了隐私确实是实现大规模应用缺失的一环。

Aztec invented the math, wrote the language, and proved the concept that privacy is in fact the missing link to mass adoption.

Speaker 1

现在Aztec正在上线主网的路上。

And now Aztec is on the road to main net.

Speaker 1

Aztec是以隐私为核心的以太坊二层网络,支持具有私有/公共状态和私有/公共执行的智能合约。

Aztec is a privacy first layer two on Ethereum, supporting smart contracts with both private and public state and private and public execution.

Speaker 1

这是目前最令人兴奋的零知识证明项目之一,我们非常期待它的上线。

It is one of the most exciting ZK projects out there, and we are excited to see it go live.

Speaker 1

参与的方式多种多样。

There are a ton of ways to get involved.

Speaker 1

你可以加入测试网络、探索Noir生态系统、成为社区一员,或关注主网上线前最后阶段的参与机会。

You can join the test net, explore the Noir ecosystem, become part of the community, or look out for ways to participate in the last steps before the upcoming main net launch.

Speaker 1

关于Aztec的技术细节、研究进展及社区项目的详细信息,请访问aztec.network。

Details about Aztec's technology, research, and community programs are available at aztec.network.

Speaker 1

现在,请收听我们的节目。

And now, here's our episode.

Speaker 0

今天,我和Nico有幸邀请到宾夕法尼亚大学计算机与信息科学助理教授Pratush Mishra。

Today, Nico and I are here with Pratush Mishra, assistant professor of computer and information science at the University of Pennsylvania.

Speaker 0

欢迎回到节目,bratush。

Welcome back to the show, Pratush.

Speaker 2

谢谢你的邀请,Anna。

Thank you, Anna, for having me.

Speaker 2

是的。

Yes.

Speaker 2

时隔许久再次回来真是太好了,我对今天的节目感到非常兴奋。

Wonderful to be back after quite a while, and I'm very excited, for today's episode.

Speaker 0

太棒了。

Very cool.

Speaker 0

这期节目,我请来了可爱的联合主持人Nico。

For this episode, I have Nico as my lovely cohost.

Speaker 0

嘿,Nico。

Hey, Nico.

Speaker 3

嘿,Anna。

Hey, Anna.

Speaker 3

嘿,Pratush。

Hey, Pratush.

Speaker 3

期待能聊聊一些有趣的SNARK研究。

Looking forward to chatting about some nice snark research.

Speaker 0

是啊。

Yeah.

Speaker 0

我很高兴有你在这里,Nico,因为我觉得在这一期节目中,我们会深入探讨很多研究论文。

And I'm happy to have you here, Nico, because I think in this episode, have the sense we're gonna go deep into a lot of research papers.

Speaker 3

我已经准备好了一整张清单。

I have a whole list ready to go.

Speaker 0

对。

Yeah.

Speaker 0

完美。

Perfect.

Speaker 0

非常酷。

Very cool.

Speaker 0

Pratush,我们上次邀请你上节目还是在2021年。

So the last time we had you on, Pratush, was back in 2021.

Speaker 0

我们当时讨论了ArcWorks库。

We covered the ArcWorks library.

Speaker 0

在那之前,我们曾邀请你参与Zexy项目。

And before that, we had you on for Zexy.

Speaker 0

但回到我们上一期节目,ArcWorks一直是ZK领域非常重要的组成部分。

But just going back to our last episode, ArcWorks, it's been a very important component of the ZK space.

Speaker 0

我只是好奇它是否仍是一个活跃的项目。

And I'm just wondering if it's still an active project.

Speaker 0

比如,你现在与它还有什么联系吗?

Like, yeah, what's your connection to it?

Speaker 2

是的。

Yeah.

Speaker 2

我现在仍然是ArcWorks的共同维护者之一。

So I'm, yeah, still a co maintainer of ArcWorks.

Speaker 2

作为博士生,我的时间肯定比过去少多了。

I definitely have less time than I used to as a PhD student.

Speaker 2

不过,我的学生们正在各处负责不同的部分,还有其他大学的一些人也在贡献代码。

But, yeah, we have my students working on various parts of it here and there and some folks from other universities also contributing.

Speaker 0

其实我还想了解一下你职业上的发展,因为上次你来节目时,我记得你还在伯克利当学生。

Actually and I wanna hear sort of what's happened with you professionally as well because last time you were on, I'm pretty sure you were still a student at Berkeley.

Speaker 0

所以,你的职业道路是怎样的?

So, yeah, what's what's been your path?

Speaker 0

现在你已经是助理教授了。

Now you're an assistant professor.

Speaker 0

告诉我这是怎么实现的。

Tell me how that happened.

Speaker 2

是的。

Yeah.

Speaker 2

没错。

Yeah.

Speaker 2

我想上次参加节目是在2021年。

So I think last time I was on was in 2021.

Speaker 2

我在9月份完成了博士学位,大概是在那期播客节目之后的几个月。

I wrapped up my PhD in September, so I think a few months after that podcast.

Speaker 2

在那之后,大约一年半的时间里,我全职担任密码学研究工程师,算是两者兼顾的工作。

And after that, for a year and a half ish, I was aliar working full time as, like, a cryptography research engineer, kind of a mix of both.

Speaker 2

但到了2023年,之后我便以助理教授的身份加入了宾夕法尼亚大学,从那时起一直工作至今。

But then in 2023, after that, I started at the University of Pennsylvania as an assistant professor, and that's where I've been since since then.

Speaker 0

酷。

Cool.

Speaker 0

那里的部门怎么样?

What's the department like there?

Speaker 0

你是某个团体的一员吗?

And is there some some sort of group you're part of?

Speaker 0

那里的零知识证明圈子是什么样的?

Like, what's the sort of ZK scene like there?

Speaker 2

是的。

Yeah.

Speaker 2

我认为宾夕法尼亚大学确实有一个相当强大的密码学和计算机安全研究团队。

I think we actually have quite a strong cryptography and computer security group here at Penn.

Speaker 2

除了我之外,还有塞巴斯蒂安·安杰尔。

So in terms of other than me, there's Sebastian Angel.

Speaker 2

他是另一位研究密码学的教授,在零知识证明的应用方面做了大量工作。

He's another professor who works on cryptography and has done a lot of work on more of the maybe applied side of, zero knowledge.

Speaker 2

是的,就是为特定应用设计新型的零知识证明方案。

So, yeah, designing new kinds of zero knowledge schemes for specific applications.

Speaker 2

我们稍后可能会提到一些我们合作过的项目。

We might touch on one work that we've done together maybe later on.

Speaker 2

我们还有塔尔·德拉宾。

And we also have Tal Drabin.

Speaker 2

她目前正在休假,但她是密码学领域的传奇人物,在门限签名等领域做出了很多贡献,这些应该也是听众会感兴趣的内容。

She's on leave right now, but she's like a kind of a legend in the field of cryptography, she's done a lot of work on threshold signing, for example, something of interest to listeners of this podcast.

Speaker 2

事实上,我们正计划在计算机安全领域广泛扩充团队。

And I think, yeah, we're actually looking to expand the group broadly in computer security.

Speaker 2

除此之外,我们系基本涵盖了计算机科学的各个研究领域。

And outside of that, the department has folks basically in every area of computer science.

Speaker 2

所以这真的非常有趣。

So it's been it's been really fun.

Speaker 0

我也注意到你多年来与Benedict有很多合作。

I've also noticed you have been doing a lot of collaborations with, like, Benedict, I feel, over the years.

Speaker 0

你还有其他合作者,比如Howard、Alessandro。

And you have some other I mean, Howard, Alessandro.

Speaker 0

我看到你和好几个人经常合作。

There's a few people I see you collaborate a lot with.

Speaker 0

你还会列出哪些合作者呢?

Who else would you list as your kind of collaborators?

Speaker 2

是的,Alessandro曾是我的导师。

So, yeah, Alessandro was my adviser.

Speaker 2

所以我们的合作完全合情合理。

So I think the collaboration there is makes complete sense.

Speaker 2

我想我们开始和Benedict合作了。

I think we started working with Benedict.

Speaker 2

当时伯克利的西蒙斯研究所有个由亚历山德罗组织的项目,我记得是关于区块链和社会去中心化之类的主题。

So there was this program at the Simon's Institute in Berkeley that Alessandro had organized, I think, blockchains and decentralizing society or something along those lines.

Speaker 2

这是个持续一学期的项目,包含一些研讨会。

It's like a semester long program with some workshops.

Speaker 2

其中一个重点是关于证明系统的。

Now one of the focuses was on proof systems.

Speaker 2

其中一场研讨会就是专门讨论证明系统的。

One of these workshops was on proof systems.

Speaker 2

我记得本尼迪克特那个学期从斯坦福过来访问。

And I think Benedict was visiting up from Stanford for that semester.

Speaker 2

就是那时我们开始了关于累加器的初步工作。

So that's when we kicked off the initial work on accumulation.

Speaker 2

我们看了halo论文后都很疑惑:这到底是怎么回事?

So we saw the halo paper, and we were like, what's going on here?

Speaker 2

我们只是试图理解它。

We just try to understand it.

Speaker 2

这就是与Benedict合作的开始。

So that's how the collaboration with Benedict got started.

Speaker 2

是的,从那以后合作就一直持续着。

And, yeah, that's been continuing since then.

Speaker 2

其他合作者。

Other collaborators.

Speaker 2

我想还有Ian Myers,就是你最近在播客里邀请的那位。

So I guess Ian Myers, I think, who you had on the podcast recently.

Speaker 2

对。

Yeah.

Speaker 2

其实与他的合作早在2016或2015年就开始了。

So collaboration with him actually started way back in 2016 or 2015 or so.

Speaker 2

他之前已经与Alessandro在Zerocash项目上合作过。

He had already worked with Alessandro on Zerocash.

Speaker 2

所以当我开始读博时,我们就开始探索Zerocash的后续研究了。

And so then we would like, when I started my PhD, we started exploring follow ups to Zerocash.

Speaker 2

我们有一篇关于微支付的论文,然后我想下一篇主要论文是Zexy。

So we had this one paper on micropayments, and then I guess the next main paper was Zexy.

Speaker 0

嗯。

Mhmm.

Speaker 2

自那以后,我们又做了几项后续工作,比如Hecaton,还有一些正在进行的研究,希望这周或近期能在预印本上发表。

And then since then, yeah, we've had a couple of, yeah, follow-up works like Hecaton, and also some ongoing work which will hopefully be on e print this week or so.

Speaker 0

哦,太棒了。

Oh, cool.

Speaker 0

也许等这期节目播出时就能看到了。

Maybe by the time this airs.

Speaker 2

是的。

Yeah.

Speaker 2

希望如此。

Hopefully.

Speaker 0

不错。

Nice.

Speaker 0

所以我想说的是,我们有很多内容要讨论。

So I think I mean, there's a lot to cover.

Speaker 0

我们在讨论准备这次节目时,Nico,你整理了一些主题。

We in discuss sort of prepping this, Nico, you kinda put together some themes.

Speaker 0

我挑选了一些论文。

I picked out some papers.

Speaker 0

我们大致把它们合并成了一个计划。

We sort of merged them into a bit of a a plan.

Speaker 0

所以我们可能会讨论你提到的这些话题。

So we're gonna probably go through some of these topics that you mentioned.

Speaker 0

当然,我们还会了解更多你在研究过程中进行的合作。

And, obviously, we're gonna hear more about the collaborations you've been doing along the way.

Speaker 0

我其实有一个问题。

I do have just one question.

Speaker 0

不知道你想怎么回答,就是,2021年之后你主要在忙什么?

I don't know how you wanna answer it, but, like, what have you been up to since 2021?

Speaker 0

你刚才简单提到了工作地点,但你觉得哪些主题对你来说特别突出?

You sort of talked a little bit about where you're working, but, like, what are the themes that you think have really stood out to you?

Speaker 0

嗯。

Yeah.

Speaker 0

你目前正在跟进哪些研究方向?

What what are the lines of research that you're following?

Speaker 2

是的。

Yeah.

Speaker 2

这是个好问题,我自己也还在摸索中。

That's a good question and something I think I'm still figuring out myself.

Speaker 2

是啊。

Yeah.

Speaker 2

总的来说,ZKP领域发展非常迅速,呈现出多样化和扩展的趋势,人们探索的方向五花八门——从协议设计到应用开发,涵盖所有中间环节。

I think in general, the ZKP space has been moving, yeah, very fast and kind of diversifying and broadening, and there's all kinds of different directions that people have been taking on, like, from protocol design to application to, like, everything in between.

Speaker 2

所以我大部分工作都集中在CKPs上。

So a lot of my work has been on CKPs.

Speaker 2

我想自从博士毕业后,我的研究范围已经超出了博士期间主要关注的椭圆曲线基础领域。

And I guess since my PhD, I've kind of broadened out beyond maybe these elliptic curve based stocks is what I really focused on during my PhD.

Speaker 2

我开始更多地研究基于哈希的SNARKs和基于纠错码的SNARKs。

And I've started to work with more hash based SNARKs and error correcting code based SNARKs.

Speaker 2

这是其中一个研究方向。

So that's been one direction.

Speaker 2

另一个方向主要是尝试研究CKPs和SNARKs在不同计算环境中的特性。

Another direction has been essentially trying to investigate properties of CKPs and SNARKs in kind different kinds of computational environments.

Speaker 2

比如当证明者内存有限时,或者当你有多台机器想要分布式证明时。

So when you have low memory for the prover or when you have, I don't know, lots of machines and you wanted to distribute it proving.

Speaker 2

基本上就是突破传统的单服务器式证明模式,探索这个领域的可能性。

So basically, moving beyond just the standard, I don't know, single server style proving, seeing what's possible in that space.

Speaker 2

除此之外,我还在研究SNARKs的应用,既包括区块链相关应用,也包括非区块链场景。

Beyond that, also, I've been looking at, like, applications of Snarks both in maybe more blockchain oriented applications, but also in kind of non blockchain settings.

Speaker 2

因为我认为SNARKs非常适合区块链应用场景,当你需要隐私属性时,SNARKs就是完美的解决方案。

Because I think, you know, Snarks are kind of a perfect fit for the blockchain application space where you have, you know, you want sometimes the privacy property and Snarks are perfect for that.

Speaker 2

有时你真正需要的是简洁的完整性属性,而简洁非交互式知识论证(Snarks)恰好完美满足这一需求。

Sometimes you want really the succinct integrity properties and Snarks are again perfect for that.

Speaker 2

但总体而言,除了区块链与简洁非交互式知识论证(CKPs)这种完美匹配外,在计算机科学的其他领域,为Snarks提供价值主张一直有些困难。

But I think in general, outside of this kind of perfect match between blockchains and CKPs, in other areas of computer science, it's been a little bit difficult to provide, like, a value proposition for Snarks.

Speaker 2

因此我一直在尝试找出计算机安全领域中那些能从Snux所提供的保证中受益的各种问题。

So I've been trying to figure out various problems in computer security which would benefit from the kinds of guarantees that Snux can give you.

Speaker 0

不错。

Nice.

Speaker 0

零知识证明(ZK)加速区块链路径这个想法,我是说,我们已经看到了一些迹象。

That idea of ZK sort of accelerating path blockchain, I I mean, we've seen hints of it.

Speaker 0

我们已经在任何与人工智能系统重叠的领域看到了这一点。

We've seen it in any sort of overlap with AI systems.

Speaker 2

嗯。

Mhmm.

Speaker 0

有时候区块链甚至完全不参与其中。

Sometimes the blockchain's just not even involved there.

Speaker 0

你觉得我的意思是,你说ZK在其他计算机科学领域找不到立足点,这很有趣。

Do you think I mean, it's it's interesting you're saying, like, we like, ZK couldn't really find its place within the other realms of computer science.

Speaker 0

但你认为ZK和SNARK的发展现在是否已经到了性能足够好,真正成为可行选择的阶段?

But do you think ZK is now and snark development, do you think it's at the point where the performance is good enough that it's actually a viable option?

Speaker 0

这就是改变的关键所在吗?

Is that what's changed, kind of?

Speaker 2

是的。

Yeah.

Speaker 2

我认为这肯定是其中一个因素。

I think that's certainly one component.

Speaker 2

如果你回顾五六年前,SNARK对于人们在电脑上运行的非简单实际软件来说实在太慢了。

If you go back five, six years ago, snarks were just too slow for kind of nontrivial real software that people ran on their computers.

Speaker 2

这方面已经有所改善。

So that's improved.

Speaker 2

我认为,虽然现在有整个产业致力于改进SNARK,但仍有很长的路要走。

I think, you know, there's still quite a ways to go when people are like, there's a massive industry now devoted to that aspect of improving SNARKs.

Speaker 2

但我认为这也是个问题:区块链之外的实际商业需求是否真的需要SNARK提供的这种保证?

But I think it's also a question of do business needs outside blockchain actually need the kinds of guarantees that SNARKs give you?

Speaker 2

在区块链领域,核心要点就是不需要信任任何人,或者说最大限度地减少对特定实体的信任。

So in blockchain, it's kind of the entire point is not to have to trust anyone or to, like, really minimize your trust in certain entities.

Speaker 2

但在现实世界——非区块链世界(说'现实世界'不太准确,因为区块链也是非常现实的)

But in the real world and, like, in in the non blockchain world not real world because blockchain is very real.

Speaker 2

不过在非区块链世界里,人们可能只需签署商业合同就满足了,觉得这样就够了。

But but in the in the non blockchain world, people are maybe okay with just signing a business contract and saying that, okay.

Speaker 2

如果你未能履行协议中的特定条款,那么你就必须支付这笔罚款。

If you don't satisfy this particular part of the the agreement, then you will have to pay this fine.

Speaker 2

或者会有某种补救程序或其他机制来处理这种情况。

Or, you know, you will have this kind of remediation procedure or some other kind of mechanism to to handle that.

Speaker 2

因此你有其他方式来强制执行这类信任要求。

So you have kind of other ways to enforce that kind of, trust requirement.

Speaker 2

所以在很多商业对商业场景中,你可能并不需要SNARK提供的这种强保证吗?

So there's a lot of cases, know, business to business where this might, you might not want the super strong guarantees that SNARKs give you.

Speaker 2

但在计算机安全领域,确实存在许多问题仍需要这类保证。

But there are plenty of problems in computer security which, you know, you still need these kinds of guarantees.

Speaker 2

所以我也说不准。

So I don't know.

Speaker 2

比如今天,如果你从网上下载并运行某个软件,实际上无法保证它不会做任何恶意行为。

Like, for example, today, if you download some software off the Internet and run it, you don't really have any guarantees that it's not gonna do anything bad.

Speaker 2

对吧?

Right?

Speaker 2

因此,如果你能证明这款软件遵循特定规范——即其行为始终处于允许范围内,那么这将成为一种保障,例如能让你开发更安全的系统、更安全地部署软件,甚至可能减少当前某些带来效率损耗的机制,比如沙盒或虚拟机之类的技术。

So if you can give a proof that this software adheres to certain kinds of you know, it only does behavior within some realm of allowed behaviors, that would be, for example, a guarantee that could allow you to develop more secure systems, to deploy software more securely, maybe reduce kind of some kinds of mechanisms that we have right now, which impose efficiency overheads, like sandboxing or virtual machines or things like that.

Speaker 2

计算机安全领域关注的一些问题,我们至今尝试用替代方案解决的,或许SNARKs的强大保障能——至少我们希望——带来某些优势。

So so there's things that you can that computer security focuses on, which so far we've tried to develop alternative solutions for where the strong guarantees of of snarks can at least we can hope that they can provide some benefits.

Speaker 2

我认为时机已至,我们正迎来可以开始探索和研究这一方向的时刻。

And I think the time is coming we're coming to a time when we can start investigating and looking into that direction.

Speaker 2

不错。

Cool.

Speaker 3

嗯。

Mhmm.

Speaker 3

我们似乎终于到了一个阶段,可以不再纠结如何改进SNARK技术,而是专注于如何应用它们。

It's almost like we're finally at a point where we can stop looking at how to make better snarks and just look at let's use these.

Speaker 3

比如,我们能在哪些领域运用这些技术?

Like, where can we use these?

Speaker 2

是的。

Yeah.

Speaker 2

某种程度上,我认为这确实是我们可以采取的一个方向或方法。

Partially, I think that's certainly one direction that we can or approach that we can take.

Speaker 2

不过我认为,遗憾的是,我们还没发展到能随便对问题扔个SNARK就能解决的程度。

I I think, unfortunately, we're not quite there that we can just, like, throw a snark at a problem and it'll just work.

Speaker 2

我认为仍有空间进行智能化的协议设计——根据应用特点分析具体工作负载特征,再反过来指导协议设计。

I think there's still room for doing, like, kind of intelligent protocol design where you take the application, look at specific characteristics of that workload, and then go back and use that to inform your protocol design.

Speaker 2

嗯。

Mhmm.

Speaker 3

你说的协议是指证明系统吗?

By protocol, you mean the proof system?

Speaker 3

是的。

Yeah.

Speaker 3

这个证明系统。

The the proof system.

Speaker 3

对。

Yeah.

Speaker 2

我认为在ZKML领域我们正看到这种现象,人们为机器学习工作负载设计专门的协议,我觉得这种方向目前仍然非常富有成效。

So I I think we're seeing this with ZKML where people are designing specialized protocols for the machine learning workloads, and I think that kind of approach is is very fruitful still.

Speaker 2

嗯。

Mhmm.

Speaker 3

我们之前半否定了改进SNARKs的想法,但这并不准确。

We semi dismissed the idea of making better snarks, but that's not true.

Speaker 3

而且Pratush一直在致力于改进SNARKs。

And Pratush has been working a lot towards making better snarks.

Speaker 3

所以我概述的一些主题包括你在制作小型证明方面的工作,

So some of the topics I have outlined is you have works on making tiny proofs,

Speaker 2

比如,我说的‘小型’是指,

like and by tiny, I

Speaker 3

比如,图16或更小的规模。

mean, like, graph 16 or smaller.

Speaker 3

你在折叠或我们称之为从哈希函数积累方面有研究工作。

You have work on folding or what we call accumulation from hash functions.

Speaker 3

在类似fry协议或承担这种功能的协议领域,还有更多哈希函数。

There's more hash functions in the land of, like, fry like protocols or protocols that take on that functionality.

Speaker 3

你在节目开始前告诉我们,实际上在这次介绍中,你研究了低内存环境下的证明方法。

You were telling us before the show that you have and actually, during this intro that work on, like, low memory environments, how do we prove.

Speaker 3

所以我认为这些是我们想要在改进SNARKs领域中涉及的主要内容。

So I think those are the main ones we want to hit in that realm of, like, improving SNARKs.

Speaker 3

Pratush,你想从哪个部分开始讨论?

Where would you like to start from, Pratush?

Speaker 2

好问题。

Good question.

Speaker 2

也许我们可以从小型证明开始,因为我觉得这部分内容可能更独立完整。

Maybe we can start off with the tiny proofs, because I think that may be more self contained.

Speaker 3

好的。

Okay.

Speaker 3

先提供些背景信息,我们使用Groth著名的Groth16证明已经有一段时间了。

So to give a bit of context, I guess, we've been using, you know, Groth's famous Groth 16 proof for a while now.

Speaker 3

如名称所示,这个证明体系可以追溯到近十年前。

As the name indicates, it dates almost from ten years ago.

Speaker 3

当时Jens Groth证明了这已经是我们能获得的最小证明——但其实也不尽然。

And back then, Jens Groth proved that, like, this was the smallest proof that we could get, except not really.

Speaker 3

对吧?

Right?

Speaker 3

你能帮我们解释下这个说法,并说明你们是如何实现更小证明的吗?

Could you help us qualify that statement and how you got to something smaller?

Speaker 2

是的。

Yeah.

Speaker 2

所以Groth 2016是我们都熟知并喜爱的传奇证明系统,至今仍支撑着许多应用。

So Groth 2016 is kind of this legendary proof system that we all know and love, and it still powers many, many applications today.

Speaker 2

是的。

Yeah.

Speaker 2

就像,是的,Jens在那篇论文中不仅给出了构建方法,还提出了这种限制,表明这可能是特定情况下的最佳方案。

So, like, yeah, Jens in that paper, he proved both the construction and also he gave this kind of barrier which said that maybe this is the best something particular barrier is the best you can do.

Speaker 2

具体来说 构建部分会有点技术性。

So, concretely, the construction, it I'll be a little bit technical.

Speaker 2

在您配对的椭圆曲线中,证明大小是两个群元素:一个g1元素和一个g2元素。

That's a size of two group elements, g one elements and one g two element in your pairing friendly elliptic curve.

Speaker 2

这个构建结果表明,在最佳情况下您只能得到一个包含一个g1元素和一个g2元素的SNARC。

And the result from so that was the the construction and the lower bound or barrier says that the best you can do is a SNARC with one g one element and one g two element.

Speaker 2

如果您受限于Groth 16证明系统所使用的构建范式。

If you are constrained to the kind of construction or construction paradigm that the Groth 16 proof system uses.

Speaker 2

因此,这种范式可以追溯到第一个或许可以说是完全高效的SNARC,即2013年的TGPR或匹诺曹(Pinocchio)系统。

So this is the kind of paradigm which goes back to the first, maybe, I would say, completely efficient SNARC, which is TGPR twenty thirteen or the Pinocchio Mhmm.

Speaker 2

构建方法。

Construction.

Speaker 2

后续还有像PCTV14这样的改进工作。

There were follow-up works like PCTV 14.

Speaker 2

但本质上,所有这些研究都遵循着一种范式——从线性概率可检查证明(LPCP)来构建SNACK。

But essentially, all of these works, they follow this paradigm called constructing a snack from a linear probabilistically checkable proof or LPCP.

Speaker 2

嗯。

Mhmm.

Speaker 2

Groth 实质上证明了,如果采用这种方法,你能达到的最佳效果是一个包含一个g1元素和一个g2元素的SNAC。

And Groth essentially showed that if you take this approach, the best you can do is a SNAC with one g one element and one g two element.

Speaker 2

这基本上是他设定的一个基准。

So that was kind of benchmark that he had set.

Speaker 2

而他的论文实际上并未达到那个障碍。

And his paper didn't actually achieve that that barrier.

Speaker 2

所以他有两个G1元素和一个G2元素。

So he had two g one elements and one g two element.

Speaker 2

因此,在这个框架下能否达到那个下界,仍然是一个开放性问题。

So it's kind of an open question to see whether by working in that framework, you could achieve, yeah, even that lower bound.

Speaker 3

嗯。

Mhmm.

Speaker 2

所以这曾经是个开放性问题,我认为现在其实仍然是个开放性问题。

So that was an open question for I I think it still actually is an open question.

Speaker 3

对。

Right.

Speaker 3

那么你提到的那篇论文,标题是《Garuda and Perry》,它没有解决这个问题吗?

So the paper you have, I think titled Garuda and Perry, does it not resolve that question?

Speaker 2

为什么它仍然是开放的?

How come it's still open?

Speaker 2

是的。

Yeah.

Speaker 2

这是个好问题。

So that's a good question.

Speaker 2

于是我们决定,好吧,这看起来是个难题。

So what we did was we said, okay, this this seems like a hard problem.

Speaker 2

嗯哼。

Uh-huh.

Speaker 2

所以我们不打算直接解决那个问题,而是通过使用我们后来发现如何应用于SNARK的工具——即在随机预言模型中工作,让事情变得简单些。

So let us not try to solve exactly that question, and we'll make our lives easier by using a tool that we've since figured out how to apply to SNARKs, which is working in this random Oracle model.

Speaker 2

嗯。

Mhmm.

Speaker 2

嗯。

Mhmm.

Speaker 2

所以今天,本质上,可能在16年之后,我们迎来了一系列工作尝试用不同方法构建证明,依靠多项式交互式预言证明和多项式承诺方案,并将这些结合起来,首先得到一个交互式论证,然后应用我们所谓的Fierce Remy变换,基本上给你一个非交互式证明。

So today, essentially, after maybe after grad 16, we got this flurry of works which try to construct proofs using a different approach, which relies on polynomial interactive Oracle proofs and polynomial commitment schemes and combines these to achieve first an interactive argument, and then you apply what we call this Fierce Remy transform, which basically gives you a non attractive proof.

Speaker 2

明白了吗?

Okay?

Speaker 2

而Fierce Remy转换的核心思想是:用哈希函数或随机预言机来生成验证者消息,以此替代交互过程。

And the Fierce Remy transform, it basically says instead of interaction, I'm just gonna derive the verifier messages using a hash function or a random oracle.

Speaker 2

这大致就是Planck(嗯)所采用的方法基础。

So this is kind of the approach underlying Planck Mhmm.

Speaker 2

Spartan、Marlin,以及目前实际应用中几乎所有的证明系统——可能除了Groth 16之外——都基于此。

Spartan, Marlin, essentially every proof system that we use in practice today, maybe outside of Groth 16.

Speaker 2

嗯。

Mhmm.

Speaker 2

每个证明系统都在某种程度上沿用了这个方向。

Every proof system uses kind of this in this direction.

Speaker 2

值得注意的是,Groth的下界并不适用于这个模型。

And the interesting thing to note is that Groth's lower bound does not apply to this model.

Speaker 2

所以一旦你开始调用随机预言机,就不再存在这个障碍了。

So once you start invoking the random oracle, you don't have this barrier anymore.

Speaker 2

我们在Garuda和Puri中的工作实际上——首先,并非一开始就旨在设计非常小的证明,这更像是一个意外收获。嗯。

So what we did in Garuda and Puri We didn't actually, first of all, set off to solve the problem of designing very small proofs that happened as a happy accident Mhmm.

Speaker 2

这个我们可以稍后再深入探讨。

Which we can dive into in in a bit.

Speaker 2

但具体来说,那篇论文里提到了两种SNARK。

But, yeah, specifically, the the there's, two snarks in that paper.

Speaker 2

Paree是那个实现更小证明尺寸的方案。

Paree is the one which achieves a smaller proof size.

Speaker 2

但它是在这个多项式IOP加上多项式承诺方案的改进模型中运作的,并且调用随机预言机来绕过这个障碍,避免那个限制。

But it works in a modification of this polynomial IOP plus polynomial commitment scheme model and invokes a random oracle to bypass this this barrier, to avoid that barrier.

Speaker 3

那么我现在很好奇,如果目标不是制作微型证明,这篇论文的目的是什么?

So I'm curious now, what was the goal of this paper if not making tiny proofs?

Speaker 3

因为当我阅读时,我就是这样理解它的。

Because that's how I, like, conceptualize it when I sort of read it.

Speaker 3

但是,没错,隐藏的目标是什么?

But, yeah, what was the hidden goal?

Speaker 3

是的。

Yeah.

Speaker 2

这篇论文的构思其实始于我在Alio工作期间,当时的动机主要是为了更好地理解自定义门电路。

So this this paper actually started I started thinking about it when I was still at Alio and kind of the motivation there was actually to understand custom gates better.

Speaker 2

因为那时候大概是2022年或2023年初左右,

Because at the time, this was like, I don't know, 2022, early twenty twenty three or so.

Speaker 2

人们开始部署自定义门电路,但总是与Plonk生态系统紧密绑定。

People were starting to deploy custom gates, but it was always very tied into the plunk ecosystem.

Speaker 2

但我觉得每个人似乎都有自己的一套变体方案,

But I I guess, like, everybody had their own variant of, like, okay.

Speaker 2

比如'我们有自定义门电路,这是我们基于Plonk风格编写的约束条件变体'。

We have our own custom gates, and here's, like, our own variant of, like, this plunkish way of writing constraints.

Speaker 2

我当时就觉得,这里面肯定有可以提炼出来的东西,找出其中正交的组成部分。

And I was like, there's gotta be something here which, you know, we can extract out and distill and figure out, like, what is kind of there must be some orthogonal component.

Speaker 2

因为在那个时期之前,大家都在用R1CS,当时还不清楚如何将自定义门电路或查找表这类新概念整合进R1CS。

Because at the time, like, before that, we really everybody was using r one CS, and it wasn't clear that, you know, this new idea of custom gates or things like lookups can be integrated into r one CS.

Speaker 2

我认为这导致人们逐渐弃用R1CS,转向更具灵活性的Plonk风格约束体系。

And I think as a as a result, people like moving away from r one CS to to towards these plunkish constraints for the more flexibility for the larger flexibility that they offered.

Speaker 2

但我想,好吧。

But I thought, okay.

Speaker 2

或许,你知道,我希望能更深入地理解并看清其中的核心所在。

Maybe there's you know, I I wanted to understand it better and see what is, like, the core there.

Speaker 2

最初我尝试在Gurudan Pari项目上开展工作,试图在Spartan或Marlin等系统中添加对自定义门的支持,本质上是想创建一个支持超越标准乘法门的更复杂门类型的r1cs版本。

So I tried to initially, I guess, the work on Gurudan Pari started off by trying to take something like Spartan or Marlin and add support for custom gates in there and basically trying to create a version of r one c s which supported, I guess, more exotic gates beyond just a standard multiplication gate.

Speaker 2

我们沿着这个研究方向进行探索,但有些想法从科研角度来说并没有带来特别令人振奋的成果。

We were investigating the line of work, and we had some ideas which didn't really give us anything particularly exciting from, I would I would say, a research perspective.

Speaker 2

嗯。

Mhmm.

Speaker 2

差不多就在那时,我记得有篇论文发表了。

And also right around that time, I think there was this paper which came out.

Speaker 3

是CCS那篇论文吗?

Is it the CCS paper?

Speaker 2

对。

Yeah.

Speaker 2

所以,我认为是Srinath、Riyadh和Justin Taylor。

So from, I think, Srinath, Riyadh, and Justin Taylor.

Speaker 2

我想Justin确实是。

I think Justin was yeah.

Speaker 2

Justin Taylor。

Justin Taylor.

Speaker 2

那篇论文发表了。

That came out.

Speaker 2

它基本上囊括了我们想在那个方向上探索的所有想法。

And it it had essentially all of the ideas that we wanted to explore on that front.

Speaker 2

本质上,是的,他们能够证明这些定制门电路和查找表并非Plonk特有。

And essentially, yeah, they were able to demonstrate that, okay, there's nothing specific to plunkish about these custom gates and lookup tables.

Speaker 2

你可以采纳这些想法,并将它们移植到R1CS的泛化版本中。

You can take those ideas and port them to work in the to a generalization of r one c s.

Speaker 2

实际上很多时候可能会获得更高效率,比如Spartan就是个非常高效的证明系统。

And oftentimes, actually, maybe get better efficiency because Spartan, for example, is a very efficient proof system.

Speaker 2

总之,我们差不多就是在这个问题上,或者说这条思路上停止了进一步的思考。

So, anyways, that that's kind of, you know, where we stopped thinking about that particular problem or, like, that line of thinking.

Speaker 2

然后我们开始研究一个稍微相关的问题,那就是:好的,

And then what we maybe started investigating was a slightly related question, which is that, okay.

Speaker 2

现在我们知道可以有一种R1CS的泛化形式,它能够支持

So now we know that you can have generalizations of r one c s, which have support which can support

Speaker 3

自定义代码、查找功能。

Custom codes, lookups.

Speaker 3

对。

Yep.

Speaker 3

没错。

Yeah.

Speaker 3

正是这样。

Exactly.

Speaker 2

同时我们也发现,像Spartan或Marlin这样的系统,可以扩展支持这类泛化的约束系统。

And then we also saw that, okay, if you have something like Spartan or Marlin or things like that, you can extend those to support this kind of generalized constraint system.

Speaker 2

但我们想做的是,或许可以采纳这个想法,并将其反馈给这些可信设置的SNARKs,看看能否设计出针对特定电路的可信设置。嗯。

But what we wanted to do was to maybe take that idea and to report it back to these trusted setup SNARKs and see if you could design trust maybe circuit specific trusted setups Mhmm.

Speaker 2

具体来说就是Snarks,看看它们是否也能被泛化以支持这些自定义门。

Snarks to be concrete, and see if those could also be generalized to support these custom gates.

Speaker 2

这就是调查决定的方向。

And that's where the investigation is decided.

Speaker 2

这最终演变成了Garuda。

This is like what ended up becoming Garuda.

Speaker 2

哦。

Oh.

Speaker 2

所以Garuda和Puri中的一种snarks。

So one of the snarks in Garuda and Puri.

Speaker 2

我们实际上能够证明,通过利用自定义门等技术,甚至对于普通的r1cs,也能得到比cross 16更快的电路计算snack。

And we were able to show that actually, yeah, you could get a snack which is even faster than cross 16 for the circuit computations by leveraging things like custom gates, but even actually for plain r one c s.

Speaker 2

因此我们能够将一些技术引入到这个针对特定电路的可信设置中。嗯。

So we were able to, like, tie in or bring in, like, some tech like techniques into this circuit specific trusted setup Mhmm.

Speaker 2

世界。

World.

Speaker 2

但这最终导致了Garuda的诞生,我们当时正沿着那个方向探索。

But that eventually led to Garuda, and we were following that direction.

Speaker 2

然后有一天,我骑车下班回家时突然想到:我们能把这篇论文里的想法推进到什么程度?

And then one day, I was cycling back from work back home, and then I was like, how far can we take these ideas in this paper?

Speaker 2

于是我就在A处停了下来,那一刻对我来说异常清晰。

And then I was like, stop at a and this is like a very vivid moment for me.

Speaker 2

我喜欢那个瞬间。

I like that.

Speaker 2

就像灵光乍现,我在红绿灯前停下时突然想到:等等...

I had like a eureka moment, but I was like, stop at like a traffic light, and I was like, wait.

Speaker 2

如果这样做会怎样?

What if you did this?

Speaker 2

摆脱多元多项式,改用单变量多项式,然后去掉一个群元素。

You moved away from multilinear polynomials, moved to univariate polynomials, and then got rid of one group element.

Speaker 2

我不知道当时脑子里在想什么,但我还是回家了。

I don't know, like, what was going on in my head at that moment, but I went home.

Speaker 2

我记得当时开始写下来,就觉得这个方案应该可行,后来这就演变成了Puri。

I think I started writing down, and I was like, this this should work, and then that became puri.

Speaker 2

这本质上让我们得到了仅含两个群元素的SNARK方案,但速度并没有比之前慢多少。

And that was essentially led us to have a snark with just two group elements and but not quite got slower than that.

Speaker 2

我们还往里面放了两个域元素。

We also had two field elements in there.

Speaker 3

这些是目前已知的最小证明吗?

Are these now the smallest proofs that we know?

Speaker 3

特指Puri方案吗?

Is it specifically puri?

Speaker 2

这是个好问题。

That's a good question.

Speaker 2

我记得Liam Egan在最近的工作中,成功进一步缩小了Puri的证明尺寸。

I think in very recent work from Liam Egan, he was able to reduce the proof size of Puri further.

Speaker 2

所以Puri方案中,我们得到两个G1元素和两个标量场元素。

So Puri, we get two g one elements and two scalar field elements.

Speaker 2

在Liam的研究中,他成功将其缩减到仅需一个场元素,这使其成为最小的SNARK证明。

I think in Liam's work, he was able to bring that down to just one field element, which makes that the smallest snark.

Speaker 0

是Glock方案吗?

Was that Glock?

Speaker 2

对。

Yeah.

Speaker 2

我想是的。

I think so.

Speaker 2

我认为。

I think.

Speaker 3

但这属于指定验证者场景吗?

But is that in the designated verifier setting?

Speaker 2

核心思想是,分析和提出的构造确实基于测试验证者场景,但该技术同样可以移植到公共验证者场景中使用。

So the core idea, like, the construction that analyzes and proposes is in the testing and verifier setting, but the technique can be ported to the public verifier setting as well.

Speaker 2

它就像是把Grod 16的理念引入Pari,从而消除了那个单一域元素的需求。

And it, like, ports in an idea from Grod 16 into Pari to to get rid of that one field element.

Speaker 2

嗯。

Mhmm.

Speaker 3

那么用非常简洁的方式来总结一下Gerudo和Pari这个话题,你能解释一下使用随机预言机如何从现有方法(如Groth 16等)中优化SNARKs的构建吗?

So in a very succinct way, just to wrap up wrap up this topic on Gerudo and Pari, could you maybe explain how using the Random Oracle benefits sort of the existing way of making SNARKs from, like, Groth 16, etcetera?

Speaker 2

对。

Yeah.

Speaker 2

大致来说,我们的思路是不再沿用Groth 16采用的线性PCP方法,而是回归到PIP加PC方案的路径。

So roughly, the idea is that we start instead of starting with the approach that Groth 16 takes, which is these linear PCPs, we go back to the PIP plus PC scheme approach.

Speaker 2

关键点在于,如果你观察Marlin和Spartan这类SNARKs,它们包含两个组件:一个用于证明r1cs矩阵向量乘法,另一个负责Hadamard乘积验证。

And one key idea is that if you look at SNARKs like Marlin and Spartan, they have two components, one which proves the r one c s matrix vector multiplication and one which does the Hadamard product check.

Speaker 2

在Groth 16中,矩阵向量乘法被编码在可信设置里,因此它具有电路特定性。

In graph 16, that matrix vector multiplication is kind of encoded in the trusted setup, which is why it's circuit specific.

Speaker 2

所以我们某种程度上将两者结合了起来。

So we kind of combine the two.

展开剩余字幕(还有 480 条)
Speaker 2

所以我们决定利用电路特定的可信设置来处理矩阵向量乘法,然后采用标准PIP来执行哈达玛积或自定义门检查。

So we say we're going to use the circuit specific trusted setup to do the matrix vector multiplication, and then we're going to use standard PIP for doing the the Hadamard product or custom gate check.

Speaker 2

这要求我们将多项式承诺推广到能够对已承诺多项式施加某些线性约束,从而引出了新型PC方案的概念。

And this required us to generalize polynomial commitments to also allow us to enforce some linear constraints on the committed polynomials and leading to, like, a new notion of PC schemes.

Speaker 2

但本质上,这就是高层次的核心技巧。嗯。

But, essentially, like, that's the the high level trick Mhmm.

Speaker 2

我们确实做到了。

Which we did.

Speaker 2

我们将两项工作结合起来,汲取了双方的精华。

We combined the two lines of work to kind of take the best from both.

Speaker 3

非常酷。

Really cool.

Speaker 0

Nico,我们该继续讨论下一个预定议题了吗?

Nico, shall we move on to our next topic that we wanted to cover?

Speaker 3

好的。

Yeah.

Speaker 3

我认为现在是时候了。

I think it's a good time to do so.

Speaker 3

清单上的下一个议题是专门关于哈希函数的折叠。

The next one on the list was folding from hash functions specifically.

Speaker 0

是的。

Yeah.

Speaker 0

用哈希函数进行折叠。

Folding with hash functions.

Speaker 0

我是说,我们刚请Binyi上过节目,和他讨论过折叠技术。

I mean, we just had Binyi on the show, and we were talking with him about folding.

Speaker 0

我们某种程度上重新定义了折叠。

We kinda did a redefinition of folding.

Speaker 0

不过在格密码的语境下。

But in the context of lattices Mhmm.

Speaker 0

我是说,格密码本身就被视为后量子安全的。

Mean, lattices build themselves as post quantum secure.

Speaker 0

我的第一个问题是,使用哈希函数的折叠技术,你们是否也能获得同样的后量子安全性,还是说安全性会有所降低?

My first question to you, using folding with hash functions, do you get that post quantum secureness as well, or is it a lesser post quantum secure?

Speaker 2

比如,怎么

Like, how

Speaker 0

比较呢?

does it compare?

Speaker 2

是的。

Yeah.

Speaker 2

所以这里你能获得的后量子安全保证,与其他基于哈希的SNUCs(如基于fry的小吃)非常相似。

So so the post quantum security guarantee that you would get here is very similar to the post quantum security guarantee that you get for other hash based SNUCs like fry based snacks.

Speaker 2

因此,这基本上是相同的安全保证。

So it's kind of exactly the same guarantee.

Speaker 2

对于基于哈希的小吃,人们已经做了大量工作来实际证明你能获得这种保证。

In the case of hash based snacks, people have done the legwork to actually prove that you do get this guarantee.

Speaker 2

我们目前还没有做到这一点,但借鉴现有工作应该不会是个巨大的挑战。

We have not done it so far, but adapting the existing work should not be like a massive lift.

Speaker 3

那么这些研究是否都重新审视了量子随机默克尔模型中的Fetchemir和默克尔树等内容?

So are these all the works that revisit things like Fetchemir and Merkle trees in the quantum random Merkle model?

Speaker 2

是的。

Yes.

Speaker 2

具体来说,我认为2019年Kieser、Manohar和Spooner的研究表明,将BCS变换应用于IOPs可以得到后量子安全的论证。

So in in particular, I think there is this work in 2019, I think, Kieser, Manohar, and Spooner, which shows that applying this BCS transform to IOPs gives you a post quantum secure argument.

Speaker 2

我怀疑同样的思路也可以推广到折叠构造上。

I suspect the same ideas can be lifted to the folding constructions as well.

Speaker 2

不过,总的来说,我们目前没有理由认为答案是否定的。

But, yes, so the high level bit is probably we don't have any reason to think the answer is no.

Speaker 0

好的。

Okay.

Speaker 0

它具体表现如何?

How does it stack up again?

Speaker 0

你们是否也在关注格密码相关的研究?

Like, are you following the Lattice stuff as well?

Speaker 2

从高层次来看。

At a high level.

Speaker 2

我对底层细节不太熟悉。

I'm not so familiar with the low level details.

Speaker 2

但我想,格点工作与基于哈希的工作之间的关键权衡或差异在于,我认为在格点环境下可能比基于哈希的累积或折叠方案获得更高的效率。

But, yeah, I think the the key trade off between or, like, the maybe difference between the lattice work and the hash based work is I suspect that you could potentially get better efficiency in the lattice based setting compared to hash based accumulation or folding.

Speaker 2

但我想这是以依赖格点假设为代价的。

But I think that this comes at the expense of relying on lattice based assumptions.

Speaker 2

嗯。

Mhmm.

Speaker 2

而在基于哈希的方案中,你只需要依赖哈希函数。

Versus in hash based setting, you're just relying on hashes.

Speaker 2

所以这里存在一个微妙的权衡。

So there's like a slight trade off there.

Speaker 2

公平地说,我并没有过多跟进格点方案,但据我所知,目前还没有基于哈希的累积或折叠方案的具体实现。

To be fair, I don't think I've not kept up with, like, the lattice based schemes too much, but at least to my knowledge, there's not been an implementation of the hash based accumulation or folding schemes.

Speaker 2

所以具体效率,我认为仍然

So the concrete efficiency, think, is still

Speaker 0

存疑。

Questionable.

Speaker 0

好的。

Okay.

Speaker 2

是的。

Yeah.

Speaker 2

尚未确定。

Up in the air.

Speaker 3

如果有人正在寻找灵感,这可能是个不错的R Quirk研究方向。

Might be a good R Quirk's inspiration, if anyone's looking for it.

Speaker 3

没错。

Yeah.

Speaker 3

其实我对这些基于哈希的方案挺好奇的。

I was actually curious with these hash based schemes.

Speaker 3

目前许多基于哈希的ZKVMs系统通过递归证明实现了类似折叠或累积的等效操作,比如证明的证明的证明

So we also have and a lot of the ZKVMs out there that are hash based do something equivalent to folding or, like, accumulation just by doing recursive proofs, so, like, a proof of a proof of

Speaker 2

一个证明。

a proof.

Speaker 3

通常折叠技术的承诺在于:我的折叠验证器比SNARK验证器工作量更少。因此当进行这种证明的证明或折叠的折叠时,在电路中的执行成本会更低。

And usually the promise with folding is my folding verifier is gonna do less work than my snark verifier, So when I do this proof of a proof or this fold of a fold, it'll be cheaper to do in a circuit.

Speaker 3

对于基于哈希的累积方案,我不确定的是:基于哈希的折叠验证器真的比SNARK验证器成本更低吗?

With hash based accumulation, I'm unsure, is it really true that the hash based folding verifier is cheaper than the the snark verifier?

Speaker 2

这是个好问题。

That's a good question.

Speaker 2

我认为这取决于你如何在系统中调整或使用累积机制。

So I think it depends on how you adapt or use accumulation inside your system.

Speaker 2

嗯。

Mhmm.

Speaker 2

目前ZKVMs实现递归的方式中,递归最昂贵的部分在于处理证明中涉及邻近性检查(或多项式承诺开启)的那部分内容。嗯。

So today, like how the ZKVMs do recursion is that really the most expensive part of the recursion is handling the part of the proof which corresponds to a proximity check or the polynomial commitment opening if you want to Mhmm.

Speaker 2

从这个角度来看。

Take that perspective.

Speaker 2

这类问题往往最终会主导递归操作的成本,至少在渐进意义上如此,我认为在实际中也是如此。

And that kind of is what oftentimes ends up dominating, at least asymptotically and I think concretely as well, the cost of doing this recursion.

Speaker 2

而如今,如果转向非常高效的邻近性证明,比如WAR(嗯)。

And today, if you move to a very efficient proximity proof, like, let's say, WAR Mhmm.

Speaker 2

那么WAR与累积多项式或邻近性声明之间的效率差距,对于多项式开放声明的处理并不会带来显著的效率提升。

Then the gap between WAR and accumulating the polynomial or the proximity claim to the polynomial opening claims will not really net you much of a efficiency benefit.

Speaker 2

嗯。

Mhmm.

Speaker 2

比如,你会从λ log log n次哈希或Merkle树路径减少到λ次Merkle树路径,大约是四倍的差距。

Like, you will go from lambda log log n hashes or Merkle tree paths to lambda Merkle tree paths, which is like a factor of four.

Speaker 2

这个差距不算小,但也不算大。

This is not small, but not Not one.

Speaker 2

是的。

Yeah.

Speaker 2

这并非微不足道,但也不至于让你重新考虑系统设计或改变实现方式。

It's not one, and it's also, like, not something which necessarily leads to you rethinking your system design and, like, changing how you implement things.

Speaker 2

这伴随着其他权衡取舍,我们稍后会讨论。

Come with other trade offs, which we can get into in a second.

Speaker 2

但另一方面,像Nova这样的方案——包括其后续的Hypernova等改进——有个显著优势。

But on the other hand, you know, if you look at things like Nova, they have this really nice Nova or Hypernova things, you know, follow-up works.

Speaker 2

它们有个绝佳特性:你只需对见证(witness)进行承诺。

They have this really nice property that all you need to do is you need to commit to the witness.

Speaker 2

即使使用非常复杂的自定义门电路,也无需承诺额外向量,避免增加证明成本。

You don't need to even if you have, like, very, like, fancy custom gates, you don't need to commit to any additional vectors which might increase your proving costs.

Speaker 2

当你从头设计系统以整合这些技术时,在递归证明中只需打开并承诺一条Merkle树路径。

Once you start going down that route and designing your system from the ground up to really just incorporate those techniques, really you will only have to open commit to an open one Merkle tree path inside inside your recursive proof.

Speaker 2

这就引出了我们在论文中描述的折叠/积累技术的两大优势:

So this kind of like leads to, I guess, maybe what we described in our papers as two benefits of accumulation of folding.

Speaker 2

一是递归验证器的规模会缩小,二是证明原始计算的工作量(不包括递归部分)也会减少。

One is that your size of your recursive verifier gets smaller, and also the work that the prover has to do just to even prove your original computation, excluding the recursive part, that also gets faster.

Speaker 2

因此你能同时获得这两方面的优势。

So you get both of these benefits.

Speaker 3

嗯。

Mhmm.

Speaker 2

现在,如果你只是试图在现有系统中加入累积机制,可能无法获得加速证明者的好处。

And now, like, if you're just trying to throw an accumulation into an existing system, you probably will not get the faster prover benefit.

Speaker 2

你仍能获得验证者规模缩小的优势。

You will get the smaller verified benefit.

Speaker 2

但正如我们讨论过的,这比起加速证明者的优势来说吸引力稍逊一筹。

But as we discussed, that is, like, a little bit less compelling than the faster prover benefit.

Speaker 2

但如果你从零开始设计整个系统来利用这些特性——或者说累积的优势——那么我推测,相比简单的递归,你能获得具体得多的速度提升。

But if you design your entire system from scratch to leverage these properties, will or like the benefits of accumulation, then you you can get concretely, I suspect, much much larger speed ups than just doing naive recursion.

Speaker 2

嗯。

Mhmm.

Speaker 0

展示这项研究的工作——至少我们注意到的是——针对里德-所罗门码的ARC累积方案。

The work that sort of showcased some of this research, at least the one that, you know, we we noticed was ARC accumulation for Reed Solomon codes.

Speaker 0

你能分享一下这方面的情况吗?比如你们发现了什么?

Can you share a little bit about that and how like, what you found?

Speaker 0

还有

And

Speaker 2

好的。

Yeah.

Speaker 2

是的。

Yeah.

Speaker 2

其实这个研究的起点要稍早一些,源于一篇名为《无需同态的累积》的论文。

So the starting point for that was actually a little bit prior, and it was this paper called Accumulation Without Homomorphism.

Speaker 2

我们最初尝试研究基于哈希的累积方法。

We tried to first investigate accumulation for, I guess, hash based accumulation.

Speaker 2

我们在那篇论文中构建的方案确实存在一些局限性。

And the scheme that we constructed in that did have some limitations.

Speaker 2

这是首个实现基于哈希累积的方案,但它有个限制:只能折叠或累积到某个固定磅数。

It it was like the first scheme which did hash based accumulation, but it had this limitation that you could only fold or accumulate up to, like, some fixed pound.

Speaker 2

当你设置系统时,你会说,好吧。

So when you set up the system, you would say, okay.

Speaker 2

我可以折叠,比方说10个snark或10个证明,然后就完成了。

I can fold, I don't know, 10 snarks or 10 proofs, and then I'm done.

Speaker 2

现在我甚至没有任何可靠性保证了。

Now I don't have any soundness guarantees even.

Speaker 2

而且,你的效率会变得更差。

And moreover, your efficiency would worsen.

Speaker 2

比如,如果你提高上限,可以从10提高到20,但现在每一步你都要付出20倍而不是10倍的代价。

Like, if you increase the bound, you could increase the bound, like, from 10 to 20, but now your every step, you're paying, like, 20 x as opposed to 10 x.

Speaker 2

这就是最初的工作。

So this was the initial work.

Speaker 2

然后ARC基本上可以说是William Wang的智慧结晶,他是纽约大学Benedict的学生。

And then so ARC is basically, I would say, really a a brainchild of William Wang, who's a student of Benedict's at NYU.

Speaker 2

关键洞见来自于研究Was it STIRR?

And the key insight came from looking at Was it STIRR?

Speaker 0

STIRR

A STIRR.

Speaker 0

Ah.

Speaker 2

是的

Yeah.

Speaker 2

本质上讲,原子同构累积中的核心问题在于我们进行这类抽样检查来验证折叠输出与输入的一致性,而在此过程中我们承受着某种随着操作次数增加而不断累积的正确性误差。

Which essentially said that, like, the the core problem in accumulation with atomomorphism was that we were doing these kinds of spot checks to check that the folded output was consistent with, like, the inputs, and we were incurring some kind of soundness error which kept growing over the number of holdings that you did.

Speaker 2

威廉(以及本尼迪克特)的关键洞见在于,他们发现可以实际运用STIR技术来完全避免这种损失,通过利用STIRR中开发的技术来规避额外的正确性误差。

And the key insight that William had was that I guess William and Benedict had was that you can actually leverage techniques from STIR to avoid that loss entirely, avoid that additional soundness error by leveraging techniques developed in in STIRR.

Speaker 2

这使得我们最终能够实现折叠方案累积的理想效果——即支持无限次数的折叠操作。

And that allowed us to get, yeah, kind of what you would want out of an accumulation of folding scheme, which is unlimited number of foldings.

Speaker 3

为满足大家的好奇心,还有一篇后续论文《线性时间累加器》,其采用了类似方法但运用了WOR中的理念。

For those that are curious, there's also a follow-up paper called Linear Time Accumulators, which kind of does the same thing, but uses ideas from WOR.

Speaker 3

因此,STIR WOR实际上是通过优化此处用于累积的具体理念,对WOR进行的改进。

So, you know, STIR WOR is an improvement on WOR by improving the exact ideas that helped here for accumulation.

Speaker 3

所以很自然地,接下来我们要做的就是,好吧。

So And the natural thing to do then was to say, like, alright.

Speaker 3

让我们在累积方案中也改进这项技术。

Let's improve that technique also in the accumulation scheme.

Speaker 2

是的。

Yeah.

Speaker 2

所以实际上有两项工作。

So there there are actually two works.

Speaker 2

所以Benedict和Alessandra有一篇论文,将ARC推向了一个方向,最终形成了这篇关于线性时间累积的WARP论文。

So one from Benedict and Alessandra, which was which took ARC in in one direction, which led to this paper WARP, which is linear time accumulation.

Speaker 2

然后我们团队——也就是我和我的学生们——也提出了另一种构建这种线性时间累积方案的方法。

And then my group here also, so my students and I, we also had an alternate way of constructing this linear time accumulation scheme.

Speaker 2

我想,从某种意义上说,ARC未完成的工作是它基于里德-所罗门码,这意味着你必须进行FFT等运算,这会带来类似时间证明的类比,并对可用字段类型产生限制——必须是FFT友好的字段。

So I guess, like, the thing that was left to do from ARC in some sense was that ARC worked with Reed Solomon codes, which mean meant that you had to do things like FFTs, which lead you to have, like, this analog and proof of time and also place constraints on the kinds of fields that you can work with in your FFT friendly fields.

Speaker 2

但最近人们开发出了这种称为线性时间可编码的代码,它能提供O(n)编码时间,而不是O(n log n)编码时间。

But recently, people have developed these things called linear time encodable codes, which offer o of n encoding time as opposed to o of n n n log n encoding time.

Speaker 2

基本上,WARP和FAX这两项工作都提出,让我们改进ARC,试图解决或弥补这个n log n的时间开销问题,通过采用线性时间可编码的代码,将其降至线性时间。

So basically, both warp and this work fax, they say, okay, let's take ARC and try to fix this or remedy this n log n, prove a time overhead, and bring it down to linear time by working for linear time encodable codes.

Speaker 2

所以,是的。

So so that yeah.

Speaker 2

只是对你的评论做些补充。

Just expanding on your comments.

Speaker 3

其实我很高兴你提到FAX,因为它也源自一篇关于FIX和FAX的论文,这几乎直接关联到我接下来想讨论的话题——你们在邻近证明方面也有研究。

Actually, I'm really happy that you mentioned facts because that also comes from a paper of fix and facts that almost does the link to the next topic I wanted to talk about is you also have works on proofs of proximity.

Speaker 3

我们聊了sturrWER,但你们还有FIX。

So we talked about sturrWER, but you have fix.

Speaker 3

我想某种程度上,我们一直在讨论这种对偶性。

And I guess in a way, we've been talking about this duality.

Speaker 3

每当一方有所改进,就能将其移植到另一方。

Every time there's an improvement on one side, you can port it to the other.

Speaker 3

所以你们会有一篇同时研究两者的论文,这很合理。

It makes sense that you would have a paper that looks at both at the same time.

Speaker 3

对吧?

Right?

Speaker 2

是的。

Yeah.

Speaker 2

没错。

Yeah.

Speaker 2

那么,我们可以顺势谈谈邻近性证明。

So, yeah, we can segue into talking about the proofs of proximity.

Speaker 2

我想我们之前大概提到过邻近性声明,以及这些如何成为SNARKs中的主要瓶颈,但只是简单带过。

So I think we've vaguely mentioned proximity claims and how these are the main bottleneck in SNARKs, but just in, like, one sentence.

Speaker 2

如今,当我构建这些基于哈希的SNARKs时,通常证明者会使用某种纠错码对其消息进行编码。

So today, like, when I construct these hash based SNARKs, usually what the prover does is it encodes its messages using some error correcting code.

Speaker 2

然后协议的一部分就是要证明这些消息实际上接近于有效的码字。

And then one part of the protocol is to prove that these messages actually are close to, like, valid code words.

Speaker 2

好的。

Okay.

Speaker 2

所以这部分被称为邻近性证明。

So this this portion is called the proximity proof.

Speaker 2

真正推动高效哈希库革命的是这个名为FRI的协议,你们在播客中多次讨论过,几乎所有人都听说过它。

And so, I guess, really what kick started the efficient hash based stock revolution was this protocol called FRI, which we have you know, you guys have talked about multiple times on the podcast, and everybody really in has heard of.

Speaker 2

这就像是首个引爆潮流的协议。

This was like the first protocol which kicked things off.

Speaker 2

然后我想说的是,我们某种程度上...

And then I would say that we kind of

Speaker 0

是的。

Yeah.

Speaker 0

我们使用过它。

We used it.

Speaker 0

它一直被持续使用。

It just kept getting used.

Speaker 0

就像被深度油炸过一样。

There was like deep fry.

Speaker 0

虽然有些许变化,但实际上只涉及were或stir这两个词。

There's a little bit of variation, but, it was really only with were or stir.

Speaker 0

哪个先出现的,Nico?

Which one came first, Nico?

Speaker 0

是WR吗?

Is it WR?

Speaker 0

STIR。

STIR.

Speaker 0

STIR。

STIR.

Speaker 0

所以是的。

So it was yeah.

Speaker 0

只有在STIR出现时,我们才真正感受到这种阶段性的变化。

It was only really with STIR where we saw this, like, step change, I feel.

Speaker 2

是的。

Yeah.

Speaker 2

确实如此。

Exactly.

Speaker 2

正如你所说,安娜。

As you said, Anna.

Speaker 2

对吧?

Right?

Speaker 2

就像,我们顺势而为。

Like, we ran with it.

Speaker 2

我们应用了它,但之后并没有真正看到太多新的构建。

We applied it, but then we didn't really see too many new constructions.

Speaker 2

然后我们在2024年引入了STIR,这让我们看到一线希望,觉得可以做得更好。

Then we had STIR in, I think, 2024, which gave us some glimmer that, okay, we can do better.

Speaker 2

但随后,我们看到在小规模验证场景下涌现了大量工作。

But then, like, we saw, like, a flurry of works in, the small small proof setting.

Speaker 2

我们看到涌现了大量关于粘贴折叠的工作。

We saw, like, a flurry of works that was paste fold.

Speaker 2

然后,最近出现的Blaze表明,其实你不必局限于只使用Reed Solomon码。

And then, like, recently, there was Blaze, which kind of showed that, okay, you don't actually have to stick to just working with these Reed Solomon codes.

Speaker 2

你可以尝试为其他类型的码做近似证明,比如小型近似证明。

You can try to do proximity proofs for, like, small proximity proofs for other kinds of codes.

Speaker 2

特别是,Blaze至少为线性时间可编码的码做到了这一点,正如我们讨论过的,它们只需要线性时间编码,而不像准线性或n log n时间的速率可解码。

And in particular, Blaze does this for at least linear time encodable codes, which as we talked about, you know, they only require linear time to encode as opposed to quasi linear or n log n time for rate solvent codes.

Speaker 2

但本质上,Blaze展示了对于特定类型的字段IOP(交互式预言近似证明或IOPP),在应用Fierce、Miehren、Merkel树等技术后,可以得到一个证明大小约为λ log² n哈希的结果。

But, like, essentially Blaze show that, okay, you can get for particular kinds of fields IOP, interactive oracle proof of proximity or IOPP, where after you apply, you know, Fierce, Miehren, Merkel trees, and all of these things, you can get something with a proof size, I think it's lambda log squared n hashes, something like that.

Speaker 3

家里的每个人都听懂了,他们心里有些主题,完全明白为什么这很好。

Everyone at home is following, and they have the there's some topics in mind, and they know exactly why this is good.

Speaker 2

所以λ是一个安全参数。

So lambda is a security parameter.

Speaker 2

不过确实。

But yeah.

Speaker 2

基本上,它是按log² n的比例缩放的。

So, basically, it's scaled with, like, log squared n.

Speaker 2

但如果你看里德-所罗门码这边,斯特恩团队成功将其降低到大约log n log log n乘以λ哈希值的水平。

If But you look at the Reed Solomon side, what Stern were able to do was to bring that down to, like like, log n log log n times lambda hashes.

Speaker 2

基本上通过这个因子实现了缩减,带来了约2-3倍的实际提升,这对于希望将这些证明部署在区块链上尤为重要。

So basically, reducing it by this factor, which led to, like, a concrete improvement of, like, two to three x, which is important when you want to, like, put these proofs hopefully on the blockchain.

Speaker 2

因此我们在FIX项目中的核心尝试就是:能否将这些优势移植到线性时间可编码的场景中?

So, essentially, what we did in FIX was try to see, can we port these same benefits over to these linear time and quotable code settings?

Speaker 2

我们采用了Blaze中提出的核心思想——代码转换技术,这项技术可能在前期的几项理论工作中也有体现。

And so what we took was this core idea which had appeared in Blaze and maybe a couple of predecessor theoretical works, which is code switching.

Speaker 2

如果大家没有其他优先问题的话,我们可以稍后详细讨论这个技术点。

And so we can talk about that in a little bit if there's not other questions that you want to go over first.

Speaker 3

我想预留些时间讨论非区块链应用,毕竟我们在节目开头提到过这些内容。

I mean, I definitely wanna keep some time for the non blockchain applications because we did tell those early in earlier in the show.

Speaker 3

不过确实想请教:能否简要说明FICS如何应用代码转换技术?

But, yeah, curious about maybe a few words on on how FICS applies code switching.

Speaker 3

FACS系统也采用这种技术吗?

Does FACS do it too?

Speaker 2

是的。

Yes.

Speaker 2

FICS和FACS都采用了代码转换技术。

So both FICS and FACS do code switching.

Speaker 2

简而言之,Reed Solomon码具有非常优良的结构特性,能让你高效实现类似fry中的折叠操作。

So, essentially, like, the summary is that Reed Solomon codes, they have this really nice structure, which allows you to do things like folding in fry very efficiently.

Speaker 2

但线性时间可编码的码通常不具备这种优良结构。

But linear time encodable codes, they generally don't have this kind of nice structure.

Speaker 2

代码转换本质上是一种技术方案,它表示:好吧,

So code switching is basically this technique which says, okay.

Speaker 2

我们确实没有这种结构。

We we don't have the structure.

Speaker 2

我们要做的就是证明我们的码字实际上接近这个码。

What we're just gonna do is kind of just prove that our code words are actually close to the code.

Speaker 2

我们将为此设计专门的证明方案。

We're going to design specialized proofs for this task.

Speaker 2

Blaze采用了一种方式实现这一点。

So Blaze does that in one way.

Speaker 2

而在fix中,我们采取了另一种方法。

And in fix, we take an alternate approach.

Speaker 2

我们设计了新的代码转换技术,并证明现有技术均可纳入统一框架,从而为广泛类别的线性时间可编码代码实现代码转换,同时继承了STORE和WOR的证明规模优势。

We design new code switching techniques and also show that existing code switching techniques can all be put in like one framework, which allows you to do code switching for a large class of linear time encodable codes and kind of brings over these proof size benefits that you got with STORE and WOR.

Speaker 2

现在这些优势也延伸到了线性时间可编码代码领域。

Also, now to these linear time encodable codes.

Speaker 2

这项研究最终在最近发布于ePrint的论文中达到顶峰,使我们甚至能消除log log n因子,实现λ log n哈希值的证明规模。

And then it's kind of culminated in this very recent work which went up on ePrint, which allowed us to kind of even get rid of the log log n factor and get proof size of, like, lambda log n hashes.

Speaker 0

那项研究是什么?

What was that work?

Speaker 2

这篇论文名为《查询最优IOPPs》。

So this is a paper called Query Optimal IOPPs.

Speaker 0

这就是IOPPs。

This is the IOPPs.

Speaker 0

好的。

Okay.

Speaker 0

交互式预言机邻近证明。

Interactive Oracle Proofs of Proximity.

Speaker 2

对。

Yeah.

Speaker 2

所以我们实际上证明了这类邻近证明能达到的最佳证明大小,因此我们称之为最优。

So so we actually show that kind of this is the best kind of proof size that you can get for these proofs of proximity, which is why we called it optimal.

Speaker 2

但目前这主要还是一项理论研究。

But it's mostly a theoretical work for now.

Speaker 2

我不认为这些想法会带来完全更优的证明大小。

I don't think the ideas would lead to completely better proof sizes.

Speaker 0

FIX和FACTS分别代表什么?

What what does FIX and FACTS stand for?

Speaker 0

看起来像是缩写词。

Like, they look like acronyms.

Speaker 2

是的。

Yeah.

Speaker 2

好问题。

Great question.

Speaker 2

我们某种程度上是从FRI这个名字获取了灵感。

We kind of took inspiration from the FRI name.

Speaker 2

所以FRI就像是快速读取所罗门IOPP。

So FRI is, like, fast, read Solomon, IOPP.

Speaker 2

嗯。

Mhmm.

Speaker 2

所以我们就是,通过代码切换实现快速IOPP,然后这就变成了

So we just were, fast IOPP via code switching, and that became

Speaker 0

我们的房子。

our house.

Speaker 0

好的。

Okay.

Speaker 0

这就是它的含义。

That's what it is.

Speaker 0

另一个则是快速

And then the other one would be fast

Speaker 2

累积。

a Accumulation.

Speaker 2

好的。

Okay.

Speaker 2

我得说这创意性不太强。

It's not too creative, I would say.

Speaker 0

缩写形式看起来挺酷的。

It looks cool in short form.

Speaker 2

是啊。

Yeah.

Speaker 2

就像'棍棒石头'对应'修正事实'的感觉。

It's like sticks and stones are like fix and facts.

Speaker 2

这大概就是我想表达的意思。

Was, like, kinda what I was going for.

Speaker 0

不错。

Nice.

Speaker 3

简单来说,你提到了代码转换,但我们为什么要

Very briefly, you talked about code switching, but why do we want

Speaker 2

进行代码转换呢?

to switch codes?

Speaker 2

所以核心理念是,我可以从一个关于基本情况的声明转换——比如这个代码词接近代码一中的内容。

So the idea is that I can go from a claim about basically, like, this code word is close to code one.

Speaker 2

我可以将其简化为另一个声明——比如这个代码词接近代码二中的某个声明。

I can reduce that to a claim about, you know, co this other code word is close to a claim in code two.

Speaker 2

现在代码二可以是更小规模的代码,也可以是像里德-所罗门码这样我们已经拥有现成IOPPs的编码。

Now code two can be either like a smaller size code or it could be something like a Reed Solomon code for which we already have existing IOPPs.

Speaker 2

因此通过实现从代码一到代码二的声明转换,我们就能通过缩小规模或调用现有工具来推动进展。

So by being able to switch, you know, claims from code one to code two, we're able to kind of make progress either by reducing the size or, you know, co being able to invoke tools that we already do.

Speaker 2

所以Fix基本上两者兼顾。

So fix kind of does both.

Speaker 2

我们通过代码转换来缩小规模,一旦足够小,就直接调用类似star或word的方法。

We use code switching to reduce size, and then once it's small enough, we directly invoke something like star or word.

Speaker 3

我明白了。

I see.

Speaker 3

这样的话,我们就不必在意使用的是里德-所罗门码,因为问题规模已经比原问题小很多了。

And so in that case, we don't care that we're doing Reed Solomon codes because the problem is already smaller than the original one.

Speaker 2

是的。

Yeah.

Speaker 2

我们调用得足够频繁。

We invoke it like enough.

Speaker 2

我们通过调用缩小规模的代码转换,将规模降至约n/log n,此时Reed Solomon码能在线性时间内处理。

We invoke the size reducing code switching to get us down to like n over log n size, and then at that point, Reed Solomon codes are linear time.

Speaker 3

总结一下关于优化简洁非交互式知识论证的话题,我之前提到的最后一点是:如何在内存受限的环境中为简洁非交互式知识论证设计证明者。

So wrapping up on our topics of making better snarks, The last one that I listed or mentioned earlier was how do we get proovers for snarks in an environment where you have, like, restricted memory.

Speaker 3

所以提到这个是因为它确实有。

So mentioned this because it has yeah.

Speaker 3

有几篇论文。

A few papers.

Speaker 3

没错。

Exactly.

Speaker 3

这种场景下有什么例子?

What's an example of that setting?

Speaker 2

是的。

Yeah.

Speaker 2

对。

Yeah.

Speaker 2

我认为这是近期人们开始关注的一个非常令人兴奋的领域。

So I think that's a very exciting area that people have been starting to focus on recently.

Speaker 2

但这实际上是由应用场景驱动的——你需要在非常受限的设备上生成证明,比如网页浏览器、手机,或者甚至更受限制的设备。

But it's really motivated by applications where you want to produce proofs on very constrained devices, like, let's say, your web browser or your phone, or maybe even more restricted than that.

Speaker 2

或许极端情况下,你可以想象在YubiKey上实现。

Maybe to the extreme, you can take it like on the YubiKey.

Speaker 2

能在YubiKey上完成验证吗?

Can you do proving on a YubiKey?

Speaker 2

嗯。

Mhmm.

Speaker 2

那会非常酷。

That would be really cool.

Speaker 2

我们还没达到那一步。

We're not there yet.

Speaker 2

但总的来说,这种低内存验证主要研究如何在验证者只有少量内存的情况下完成验证。

But, yeah, in generally kind of this low memory proving is focused on trying to do proving when your prover has only a small amount of memory.

Speaker 2

比如尝试用那点有限的内存来验证可能很庞大的计算。

Like, trying to prove maybe large computations in that small amount of memory.

Speaker 2

我认为这个方向最近变得有趣,是因为长期以来我们都专注于缩短验证时间,而现在这方面已经取得了不错进展。

I think it's become interesting recently because for a long time, were focused on improving poover time, but now we have made good progress on that.

Speaker 2

所以现在我们某种程度上被单台机器或设备的内存容量所限制。

So now we kind of end up being bottlenecked by the amount of memory on a single machine or device.

Speaker 3

对。

Right.

Speaker 3

我们之前请过Ligero的Mutu上节目,他非常自豪地宣传Ligero运行证明器时不需要太多内存。

So we've had Mutu on the show from Ligero, who very proudly advertises that Ligero doesn't need much memory to run the prover.

Speaker 3

所以我在想,这是个已解决的问题吗?还是说我们要追求越来越小的内存占用?

So I was wondering, it a solved problem, or do we wanna go smaller and smaller and smaller?

Speaker 2

是的。

Yeah.

Speaker 2

Muthu的研究基础证明系统应该是Layhatron。

So so Muthu's work, I think, is Layhatron was the underlying proof system.

Speaker 2

他们做了非常精妙的系统设计与证明系统协同设计,从而实现了这种被称为流式证明器的方案——这个我们可以稍后再详细讨论。

So they they do, like, a very clever system design and proof system co design, which allows them to get this kind of prover, which is called a streaming prover, which we can talk a little bit more about later.

Speaker 2

嗯。

Mhmm.

Speaker 2

但据我理解,这种方法的缺点在于最终会得到一个线性时间的验证器。

But I think, at least as far as I understand, the downside of that approach is that you end up with a linear time verifier.

Speaker 2

至少对于Lihero来说是这样,我不确定这是否是该方法固有的问题。

And at least for Lihero and I'm not sure if this is inherent to this approach.

Speaker 2

可能是的。

It might be.

Speaker 2

至少对Lihero而言,它还会产生平方根级别的证明大小,这对许多具体应用来说可能已经足够。

At least for Lihero, and it also gives you, like, a square root proof size, which might be fine for a lot of applications concretely.

Speaker 2

但确实意味着验证器的运行时间与原始计算规模呈线性关系。

But, yeah, it does mean that the verifier is linear time in the original size of the computation.

Speaker 2

我认为当你开始关注更小的证明尺寸和非常简洁的验证器时,这仍然是一个开放性问题,确实,包括我和我的学生们在内的许多人都在努力推进这方面的研究。

I think once you start caring about smaller proof sizes and very succinct verifiers, it's I think it's still an open open question, which, yeah, we've been like, lot of proofs have been trying to make progress on, including my students and I.

Speaker 0

有哪些突破性进展使得这种低内存SNARK结构成为可能?

What are some of the breakthroughs that have come around to allow for this low memory SNARC construction?

Speaker 2

是的。

Yeah.

Speaker 2

所以我认为,实质上我们已经知道一种非常高效的方法,那就是通过递归来实现。

So I think I mean, in substance we did already know one way to do this very efficiently, which is via recursion.

Speaker 0

好的。

Okay.

Speaker 2

如果采用递归或折叠技术,你只需为单个步骤的规模付费,而不是整个计算过程。

If you do recursion or folding, then you only ever pay for the size of one step as opposed to the entire computation.

Speaker 0

是的。

Yeah.

Speaker 0

比如,我记得MENA在早期总是...你知道的,规模一直很小。

Like, I think MENA back in the day was always kind of, you know, was very small.

Speaker 2

对。

Yeah.

Speaker 2

这样就能得到较小的证明规模。

And then that that gets you, like, small proof sizes.

Speaker 2

但缺点是,对于递归展开技术,我们在某种程度上对其安全性还没有很好的把握。

The downside is that with recursion unfolding, in general, we don't have a very good handle on the security in some sense.

Speaker 2

比如,我们的安全性证明或可靠性验证仅适用于固定步骤数的情况,而这与我们在现实世界中的使用方式不符。

Like, we're our proofs of security are only or soundness are only for, like, a constant number of steps, which is not how we use these things in the real world.

Speaker 3

是的。

Yeah.

Speaker 3

顺便说一下,这也是我们最近与Biny的节目中提到的内容。

This is also something we mentioned, by the way, on our recent episode with Biny.

Speaker 3

所以对那些想了解更多关于这些安全特性细节的人,我强烈推荐那一期节目。

So for those interested in more details about these security properties, I really recommend that episode.

Speaker 0

好的。

Yeah.

Speaker 0

我们会附上链接。

We'll link to that.

Speaker 2

对。

Yeah.

Speaker 2

没错。

Yeah.

Speaker 2

而且这也逐渐成为更受关注的问题,比如这次针对基于GTR的证明系统的攻击,哦,确实。

And it's kind of also become more of a concern, but like this attack on GTR based proof systems Oh, yeah.

Speaker 2

因为需要在电路内部使用哈希函数。

Which because you need to use hashes inside the circuit.

Speaker 2

不过无论如何,这些方法确实有效。

But anyway, so those things work.

Speaker 2

它们确实存在一些理论上的局限性。

They do have certain both theoretical limitations.

Speaker 0

还有安全方面的限制。

And security ones.

Speaker 2

以及安全方面的限制。

And security ones.

Speaker 2

是的。

Yeah.

Speaker 2

我认为,总的来说,如果你不想采用递归方法,那么这是否就是你能做到的最佳方案,这个问题也很有趣。

I think I think in general, it's also interesting to see if you don't want to go for recursion, like, is the best that you can do?

Speaker 2

你们会遇到一些障碍吗?

Are there, like, some barriers that you run into?

Speaker 2

所以我想,在这种情况下,我们(主要是我的学生们和我)不得不构建这些整体式的SNARK。

So I guess in that vein, what we've had to do, I guess my students and I, is to construct kind of these monolithic SNARKs.

Speaker 2

我们试图证明整个电路,而不是将其分割成小块分别证明。

We're just trying to prove a full circuit instead of breaking it up into chunks and proving each chunk separately.

Speaker 2

我们当时有两种方法。

And there we had two approaches.

Speaker 2

第一种方法就是这篇名为《Scribe》的论文。

The first approach is this paper called Scribe.

Speaker 2

其核心思想是:即便在许多内存有限的设备上,它们通常都拥有较大的磁盘空间。

And the idea there was that, okay, even on many devices which do have limited amount of RAM or memory, what they do often have is like a large amount of disk space.

Speaker 2

对吧?

Right?

Speaker 2

即使是入门级iPhone也有几十GB的存储空间。

Gigabytes even in like your entry level iPhone.

Speaker 2

因此,我们的设计思路是让证明程序将状态数据存储在磁盘而非内存中,并通过协议设计确保这种内存访问方式依然高效。

So what we did was design the prover where instead of storing all of the prover state in memory, we were able to store it on disk, and we made sure to design protocol in such a way that accessing that memory was efficient.

Speaker 2

通常来说,磁盘访问效率是足够高的。

So normally, ax accessing the disk was efficient.

Speaker 2

正常情况下,磁盘访问速度比内存慢得多,至少相差十倍。

So normally, accessing disk is like way slower than accessing memory, like 10 x at least.

Speaker 2

但我们设计的算法能够完全抵消这种性能开销。

But the algorithms that we designed were able to kind of completely mask the overhead.

Speaker 2

具体来说,我们在这个模型中设计了这种版本的Hyperplunk,证明者状态存储在磁盘上,但与内存证明相比,其开销仅增加了约10%。

And in particular, we designed like this version of Hyperplunk in this model where the prover state is on disk, but the overhead compared to in memory proving was like 10%.

Speaker 0

好的。

Okay.

Speaker 3

这就是你之前提到的流式证明器吗?

Is this what you described earlier as a streaming prover?

Speaker 2

是的。

Yeah.

Speaker 2

流式证明器的全称。

So streaming prover Full name.

Speaker 2

是的。

Yeah.

Speaker 2

这实际上是理论计算机科学和流算法中的一个完整研究领域。

It's actually entire area of research in theoretical computer science and streaming algorithms.

Speaker 0

不错。

Nice.

Speaker 2

但流式证明器是对此的进一步限制,它规定证明器只能拥有少量内存,并且必须通过流式方式访问见证数据和电路描述。

But a streaming prover is, yeah, a further restriction of this, which just says that this prover is only allowed to have some small amount of memory, and it can access the witness and the circuit description via stream.

Speaker 2

也就是说,它必须按顺序读取见证数据的第一位,然后丢弃它再读取下一位,依此类推。

So sequentially, it could read, like, the first bit of the witness, and then it has to throw it away and read the next bit, and so on and so forth.

Speaker 2

这是一种非常严格的模型。

This is a very restrictive model.

Speaker 2

而我们提出的方案是:你不需要丢弃这些数据。

What we said was, You don't have to throw it away.

Speaker 2

你可以直接将处理过的那部分见证数据或其他内容写回磁盘,这样将来需要时就能再次读取。

You can just write back that bit of witness or whatever you processed to disk so that if you need it again in the future, you can read it again.

Speaker 2

嗯。

Mhmm.

Speaker 2

我想流式证明者实际上比内存密集型的要慢一些。

I guess streaming provers, they actually are slower than the memory intensive ones.

Speaker 2

但通过我们的构建方法,我们能够从渐进和具体两个层面将开销降低到仅10%。

But with our construction, we were able to kind of both asymptotically and concretely bring the overhead down to just 10%.

Speaker 3

顺便问一下,这就是你们将其命名为'scribe'的原因吗?

By the way, is that why you called it scribe?

Speaker 3

因为它既是流式的,又允许写入操作?

Because it's streaming and it's also allowed to write?

Speaker 2

是的。

Yes.

Speaker 2

之所以叫scribe,正是因为它会记录下内容。

It's scribe because it writes down.

Speaker 2

不错。

Nice.

Speaker 0

第二种方法是什么?

What's the second approach?

Speaker 2

所以第二种方法实际上是坚持流式处理。

So so the second approach actually is to stick to streaming.

Speaker 2

这是另一项名为'Sumcheck的时间空间权衡'的研究。

And this was this other work called the time space trade offs for Sumcheck.

Speaker 2

Sumcheck协议现在基本上是所有高效SNARK的工作成本核心。

So the Sumcheck protocol is like kind of now the work costs of all efficient SNARKs essentially.

Speaker 2

是的。

Yeah.

Speaker 2

但我们使用的算法大致可分为两类。

But the algorithms that we use for it, they kind of fall into two categories.

Speaker 2

要么使用极小空间但会导致类似n log n的证明时间,具体表现为Sumcheck约30倍的开销。

Either you use a very small space, but then you incur like n log n proving time, which concretely translates to like a 30 x overhead for the sum check.

Speaker 2

或者你使用线性空间并采用线性时间,这已经是能达到的最佳情况了。

Or you use like a linear amount of space and you take linear time, which is the best you could hope for.

Speaker 2

因此我们试图研究,如果采取折中方案会怎样?

And so we were trying to investigate, okay, like what if you have a middle ground?

Speaker 2

比如使用中等而非极小的空间量,能否取得更好的效果?

Like you use like not tiny amount of space, like a medium amount of space, can you do better?

Speaker 2

这项研究的灵感来源于EPFL的Alessandro团队发表的Blendy论文。

And so the predecessor, like, maybe the inspiration for this was this paper called Blendy from Alessandro's group at EPFL.

Speaker 2

随后我和学生们接手了这个方向,联系了他们并达成共识:

Then my students and I kind of picked that up and, you know, we reached out to them and we were able to say, okay.

Speaker 2

Blendy的研究成果是否已经达到最优?

Are the results in Blendy the best you can do?

Speaker 2

而且那些成果仅适用于特定类别的SumCheck,与实际协议应用场景并不完全吻合。

They were also, like, only for a particular class of SumCheck, which is not actually how we use it in protocols.

Speaker 2

我们成功将其推广到协议实际应用的SumCheck场景,证明确实可以超越之前提到的两种极端方案。

So we were able to generalize that to actually how we use SumCheck in protocols and showed that, yeah, you can do better than kind of the two extremes that I'd mentioned earlier.

Speaker 2

你可以获得几乎与高内存版本一样快的性能。

You can get something which is almost as fast as the high memory version.

Speaker 2

我认为在实际应用中,速度仅慢两倍,但内存使用量在大规模情况下可能减少100倍。

Like, I think in practice only two x slower, but using, I don't know, like, 100 x less memory for large sizes.

Speaker 2

而且我认为最酷的部分是我们证明了这基本上就是你能达到的最佳状态。

And we also I think the cool part is we were able to show that kind of this is the best that you can do.

Speaker 2

如果你想使用特定数量的内存,就必须承受大约两倍的开销。

If you want to use a particular amount of memory, you must incur, let's say, this two x overhead.

Speaker 2

你无法做得比这更好,我认为这在SNARK领域是相当罕见的情况。

You can't do better than that, which I think is kind of a rare occurrence in in SNARKs.

Speaker 2

我们通常不会有这类下限约束。

We don't usually have these kinds of lower bounds.

Speaker 0

那么这两种低内存SNARK构造方案,是否与Lihero或我们节目中讨论过的其他系统有相似之处?

So these two approaches, both low memory SNARK constructions, are either of them similar to Lihero or to other systems that we've maybe talked about on the show?

Speaker 2

我认为你可以借鉴Lihero的思路应用到这里,或许能打造出更优秀的整体系统。

I would say you can take ideas from Lihero and apply them here, and maybe hope to get like a better system overall.

Speaker 2

嗯。

Mhmm.

Speaker 2

或许通过采用我们的时空权衡新算法,能够突破Lihero的一些限制。

Maybe some limitations of Lihero can be lifted by using, for example, our time space trade off, the new subject algorithm.

Speaker 2

具体来说,Lihero这类基于哈希流的SNARK系统存在一些难以逾越的障碍。

Actually, concretely, there are some barriers to what you can do with Lihero style systems where you have these hash based streaming SNARKs.

Speaker 2

我来转述一下。

I'll paraphrase.

Speaker 2

你必须在证明规模上做出妥协——要么无法实现极小的(如polylogarithmic级别)Fry式证明规模,

You must either have not small proof size, like not polylogarithmic, like tiny proof size, fry style proof size.

Speaker 2

要么就得放弃流式证明者的特性,

You can either have that or you can have streaming provers.

Speaker 2

二者不可兼得。

You can't have both at the same time.

Speaker 2

但如果采用这种scribe模型,实际上可以同时实现这两个目标。

So, like, if you take this kind of scribe model, then you can actually do both.

Speaker 2

或者说我们认为你可以两者兼得。

Or we think that you can do both.

Speaker 2

这是我们正在跟进的研究工作,我们希望证明你确实可以同时获得非常小的证明和低内存的验证者。

This is like some follow-up work that we're working on, and we're hoping to show that you can actually get both very small proofs and low memory approvers.

Speaker 2

很棒。

Cool.

Speaker 2

所以,是的,我认为这是一个值得未来探索的有趣方向。

So, yeah, I think that's like a interesting direction for people to investigate in the future.

Speaker 0

我想我们已经讨论了迄今为止的工作以及Nico你最初提出和Pratush你提到的这些主题。

So I think we've covered the work to date and some of these themes that, Nico, you first presented and Pratush, you'd brought up.

Speaker 0

还有一类你们在节目开头谈到的内容,就是非区块链领域,某种程度上偏离了我们节目主要讨论的问题空间。

There is another category that you were talking about at the beginning of the episode, which is like non blockchain, the sort of move away from, you know, the problem space that we we mostly talk about on this show.

Speaker 0

你们在那边主要做哪些工作呢?

What are the kinds of things you're doing over there?

Speaker 0

而且,是的,我猜那边应该也有一些合作在进行。

And and, yeah, I I'm assuming there's also some collaborations happening there.

Speaker 0

是的。

Yeah.

Speaker 0

也许你可以分享一些那些计划。

Maybe you can share a few of those initiatives.

Speaker 2

对。

Yeah.

Speaker 2

没错。

Yeah.

Speaker 2

我想,到目前为止我们讨论的所有内容都主要集中在SNARC构建方面。

So I guess, like, all of the things that we talked about so far are very much on the SNARC construction side.

Speaker 2

是的。

Yeah.

Speaker 2

另一方面,在应用前沿,我一直在与一些合作者研究可能不严格属于区块链应用的领域。

On, like, the other side on application front, I've been looking at with some collaborators at maybe non strictly blockchain applications.

Speaker 2

我认为它们对区块链用例也有应用价值。

I think they have applications to blockchain use cases as well.

Speaker 2

不过,是的,其中一个方向是与宾夕法尼亚大学的教授Sebastian合作,旨在证明当你有一份已提交的文件时,它确实符合某种特定结构。

But, yeah, like, one direction has been this is in collaboration with Sebastian, who's a professor at Penn, on proving that if you have some kind of committed document that it actually satisfies some kind of structure.

Speaker 2

例如,这可能是一份包含特定条目的有效JSON文档,或是一个有效的C语言文件,诸如此类。

So for example, it's a valid JSON document with a particular entry, or it's a valid c file, or something along those lines.

Speaker 2

所以任何能被上下文无关文法捕获的内容都可以。

So anything which can be captured by a context free grammar.

Speaker 0

这类似于证明某种特定语言吗?

Is it like proving a certain language?

Speaker 0

还是说这是在声明这份文件是用XYZ语言编写的?

Or like is it saying this is written in x y z?

Speaker 0

或者它的范围比这更广泛?

Or is it more general than that?

Speaker 2

是的。

Yes.

Speaker 2

总的来说,这是在证明文件符合特定文档格式的规范或结构。

In general, it's proving that it matches the specification or format of a particular document format.

Speaker 2

也就是说,看起来像一个C文件或JSON文件。

So, like, looks like a c file or looks like a JSON file.

Speaker 2

至于这项技术的应用场景,我们在论文中已经讨论过一些。

And the applications for this, you know, we discussed a few in the paper.

Speaker 2

其中一些应用与区块链相关领域密切相关。

Some of them kind of relate back to very blockchain adjacent applications.

Speaker 2

比如当前的ZK TLS技术,当你从服务器获得响应时,你只是假设它是格式正确的响应。

So, like, ZK TLS right now, when you get a response from the server, you just assume that it's a properly formatted response.

Speaker 2

而且你知道,响应中的电子邮件字段总是位于相同的位置。

And, you know, the email field in the response would always be at the same location.

Speaker 2

但如果服务器——它对你的应用一无所知——即使稍微改变了响应格式,那么你所有关于ZK TLS应用的保证可能就都失效了。

But, you know, if the server, you know, who is does not know anything about your application, changes the response format even a tiny bit, suddenly now maybe all your guarantees about your ZK TLS application go out the window.

Speaker 2

是的。

Yeah.

Speaker 2

同样适用于像ZK登录或Aptos无密钥这样的技术,它们都依赖于JWT令牌的特定格式。

Similarly for things like ZK login or Aptos keyless, which rely on, like, particular formatting of the JWT tokens.

Speaker 0

是的。

Yeah.

Speaker 0

我们可以添加一些相关链接。

We can add some links to that.

Speaker 0

我们在节目中已经和几个团队讨论过这个话题了。

We covered that on the show with a couple of those teams.

Speaker 2

因此CORAL在这里的作用是,你实际上可以获得一个证明,表明现在服务器或其他来源的响应确实与你指定的规范完全匹配。

And so where CORAL would come in here would be that you actually can get a proof that now this response from the server or whatever actually matches this exact specification that you wanted.

Speaker 2

这样你就能获得更强的保证。

So you can get like a stronger guarantee that way.

Speaker 3

它还能证明文件内容而不仅仅是格式吗?

Does it also prove statements about the contents of the file or just the formatting?

Speaker 2

是的。

Yeah.

Speaker 2

所以你可以证明它包含,我不知道,嵌套两层的电子邮件字段,其中有,我不知道,Prathyush@penn.com或任何内容,或者penn.edu的电子邮件在那里。

So you can prove that it contains, I don't know, nested two levels deep, an email field which has, I don't know, Prathyush@penn.com or whatever, or penn dot edu has the email there.

Speaker 0

这很酷。

That's cool.

Speaker 0

这项工作的标题是CORAL,快速异步非交互式零知识CFG证明。

The title of this work, CORAL, Fast Async Non Interactive Zero Knowledge, CFG Proofs.

Speaker 0

CFG是指上下文无关文法吗?

Is CFG, that's context free grammar?

Speaker 0

是这个意思吗?

Is that what that stands for?

Speaker 2

是的。

Yes.

Speaker 2

这是Sebastian团队之前关于正则表达式或正则表达式匹配证明的后续工作,人们也曾在与区块链相关的轻量级应用场景中使用过。

It's context And free it's just like a follow-up book, I guess, that Sebastian's group has done previously on reg ex or proofs of reg ex matching, which people have also used in very thin blockchain adjacent application contexts.

Speaker 3

嗯。

Yeah.

Speaker 3

我注意到论文作者中还有来自Brave的人,这让我很感兴趣。

I was interested to see authors from Brave as well on that paper.

Speaker 3

那么这家浏览器公司,他们是在研究这类ZKTLS证明吗?

So the the browser company, are they looking into these sort of ZKTLS proofs?

Speaker 3

就是说,这就是他们在这里的原因吗?

Like, is that why they're here?

Speaker 2

是的。

Yes.

Speaker 2

我想索菲亚——Brave的合著者,她和她的合作者一直在研究一些ZKTLS相关的工作。

I think Sofia, who's who's the co author from Brave, she and her collaborators have been working on some ZKTLS work.

Speaker 2

不错。

Nice.

Speaker 2

所以她建立了CORAL与现有ZKTLS协议局限性之间的联系。

So she made that connection and that link between CORAL and this limitation of existing ZKTLS protocols.

Speaker 0

听起来和他们一起探索这个会很有意思。

That sounds like that would be really fun to explore with them, actually.

Speaker 0

这就像,你知道,一个拥有用户的团队——现在是由浏览器生成ZKTLS,不像我们接触过的大多数团队,那些是ZK TLS团队主动去适配浏览器。嗯。

This is like, you know, a team with with users who are now it's like the the browser producing the ZKTLS, unlike most of the teams that we've talked to, which are ZK TLS teams kind of approaching browsers Mhmm.

Speaker 0

可能作为客户。

Potentially as customers.

Speaker 0

是啊。

Yeah.

Speaker 0

那会非常酷。

That would be really cool.

Speaker 3

你提到这是塞巴斯蒂安团队之前工作的延伸,我现在想起来有一篇叫《Reef》的论文。

So you mentioned this is an extension of previous work from Sebastian's group, and I now remember there's a paper called Reef.

Speaker 3

是正在扩展的那个吗?

Is is that the one that's being extended?

Speaker 2

是的。

Yes.

Speaker 2

所以我们称它为Cora。

That's why we called it Cora Okay.

Speaker 2

因为它推广了Reef。

Because it generalizes Reef.

Speaker 3

非常棒。

Very nice.

Speaker 3

所以它使用了Nova。

And so it uses Nova.

Speaker 3

对吧?

Right?

Speaker 3

就像,在它的底层。

Like, deep inside it.

Speaker 3

是的。

Yeah.

Speaker 3

没错。

Yeah.

Speaker 3

所以,是的,它

So, yeah, it

Speaker 2

使用了我们修改过的Nova版本。

uses, like, our modifications of Nova.

Speaker 3

我很好奇。

I'm curious.

Speaker 3

你们还研究过或正在开发哪些

What other non blockchain applications have you

Speaker 2

非区块链领域的应用?

been looking at or or working on?

Speaker 2

是啊。

Yeah.

Speaker 2

我认为一个令人兴奋且与Coral略有不同的是,我们一直在研究可验证数据库查询的证明系统,也就是用于可验证数据库查询的这套证明体系。

So I think one exciting one, slightly different from Coral, is we have been working on this proof for verifiable database queries, so this proof system for verifiable database queries.

Speaker 2

这个想法的核心在于,有一个数据库所有者提供对数据库的承诺,其中包含2包含标准数据库中应有的所有内容。

And the idea there is that you have a database owner who provides a commitment to the database, you know, which contains whatever you would have, I guess, in a standard database.

Speaker 2

然后你可以让客户端和服务器进行交互。

And then you could have client and server who interact.

Speaker 2

每当客户端想要查询数据库时,服务器现在可以提供保证,嘿,这就是数据库的查询结果。

And whenever the client wants to make a query into the database, the server can now provide a guarantee that, hey, this is the result of the database.

Speaker 2

更重要的是,这里有一个证明可以显示这个结果是正确的。

And moreover, here's a proof which shows that this result is correct.

Speaker 2

明白吗?

Okay?

Speaker 2

而且我在回答你的查询时没有作弊。

And I did not cheat in answering your query.

Speaker 2

这个验证是基于最初提供的数据库承诺进行的。

And this is verified with respect to that commitment to the database that was provided originally.

Speaker 2

所以这就像是一个高层次的应用。

So it's like the high level application.

Speaker 2

之前已经有几项关于这方面的研究。

And there's been a few works on this previously.

Speaker 2

我记得第一个是2017年左右Yupeng Zhang提出的可验证SQL。

The first one I think was this verifiable SQL back in 2017 or so from Yupeng Zhang.

Speaker 2

他现在好像在UIUC。

It's like UIUC now.

Speaker 2

不过,是的,我认为这一系列工作即使对于不算太复杂的查询和不算太大的数据库,也产生了相对较高的开销。

But, yeah, I think the line of works, they incurred relatively high overheads even for, I would say, not too complex queries and for not too large databases.

Speaker 2

所以我们正在进行这项工作,试图大幅降低这种开销。

So we have this kind of ongoing work which tries to reduce that overhead a lot.

Speaker 2

而且我认为我们已经能够实现亚分钟级别的证明,对于相当大型数据库上的复杂查询。

And I think we're able to get sub minute, I don't know, proofs for complex queries on, like, I would say fairly large databases.

Speaker 2

有意思。

Interesting.

Speaker 3

是的。

Yeah.

Speaker 3

我记得也看过Matteo Campanelli关于这个主题的论文。

Remember seeing a paper by Matteo Campanelli on on that topic as well.

Speaker 3

那么你的意思是说?

And so is this what you're saying?

Speaker 3

在某些情况下,我们是否应该主张设计更考虑应用场景的证明系统,而不是使用我们已经熟悉并喜爱的snarks?

Was we're advocating for, in some contexts, it might be better to design our proof systems with the application in mind rather than using the snarks that we already know and love?

Speaker 2

是的。

Yeah.

Speaker 2

没错。

Yeah.

Speaker 2

这正是那个观点的来源。

So that's exactly where that comment was coming from.

Speaker 2

对。

Yeah.

Speaker 2

是的。

Yeah.

Speaker 2

因为我们在这个项目中所做的,实际上是设计了高度专业化的PIOP(多项式交互式Oracle证明),专门针对核心SQL操作符。

So because what what we do for this project is actually we design very specialized op like, PIOPs essentially for the core, like, SQL operators Yeah.

Speaker 2

比如连接、选择、分组等操作。

Like joins selections and group buys and all of these things.

Speaker 2

正因如此,通过不采用电路方法,我们相比基于电路的方案配合尖端SNARK技术,能够实现数量级的加速。

And because of that, and by not going via the circuit approach, I think we're able to get like orders of magnitude speed ups compared to like a circuit based approach and throwing a state of the art snark at it.

Speaker 0

正好谈到这个技术可能的应用场景,我不确定链接是否正确,但前几期我们做过一期关于Turnkey的节目,那是个类似TEE的解决方案。

Just on the topic of where this might be used, and I don't know if this is the correct link, but a few episodes ago, we did an episode on Turnkey, which was like a TEE solution.

Speaker 0

他们提到过不信任数据库的问题。

They talked about like not trusting the database.

Speaker 2

嗯。

Mhmm.

Speaker 0

我在想类似你们的技术是否能在他们的场景中派上用场。

And I wonder if something like this could be helpful in in their situation.

Speaker 0

不知道你们是否——可能我联想得有点牵强——你们有听说过相关情况吗?

I don't know if you've like, I I I might be making a connection that isn't there, but I don't know if you've heard anything about that.

Speaker 2

我还没听那期播客。

I did not listen to that podcast episode yet.

Speaker 2

它在待办清单上。

I it's on the backlog.

Speaker 2

我认为总体来说,这项技术在很多应用场景都会很有帮助。

I think I think in general, like, there's lots of applications where this would be helpful.

Speaker 2

有一个区块链应用,我认为正在被一些行业人士探索。

There's one blockchain application, which I think is being explored by some industry folks.

Speaker 2

所以我认为拉格朗日实验室,这基本上就是他们最初尝试做的事情,哦。

So I think the Lagrange Labs, this was like what they had started off trying to do, basically Oh.

Speaker 2

试图提供这样的功能:你将历史区块链状态视为一个数据库。

Trying to provide like, you you view the historical blockchain state as a database.

Speaker 2

然后因为智能合约获取这些历史状态的访问成本很高,你就改为提供一个证明,表明这里有一个状态,并且这个状态相对于区块链的承诺(不知道是对区块还是什么的承诺)是有效的。

And then because smart contracts, it's very expensive to get them access to this historical state, You instead just give them a proof that here's a state and here's a proof that the state is valid with respect to the, I don't know, commitment to this to the blockchain, to the blocks or whatever.

Speaker 3

嗯。

Mhmm.

Speaker 3

所以这就是之前提到的协处理器概念。

So this is the whole coprocessor narrative from a while back.

Speaker 3

对吧?

Right?

Speaker 2

是的。

Yeah.

Speaker 2

算是吧。

Kind of.

Speaker 2

对。

Yeah.

Speaker 2

所以这是一个应用方向,我记得有家公司叫Space Time Labs之类的。

So that that's one application that I think space there's a company called Space Time Labs or something like Yeah.

Speaker 0

这家公司已经存在一段时间了。

That's been around for a while.

Speaker 2

是的。

Yeah.

Speaker 2

他们一直在研究这个应用。

So they've been looking at this application.

Speaker 3

还有家叫Proovably的公司。

And there's also a company called Proovably.

Speaker 3

我之前提到的Mateo论文,合著者就来自Provably公司,他们也是做这个的。

So this Mateo paper that I mentioned, I think, with coauthors from Provably, and that's also what they do.

Speaker 2

我明白了。

I see.

Speaker 2

有意思。

Interesting.

Speaker 2

是啊。

Yeah.

Speaker 2

所以我觉得这是个非常有趣的应用,因为你确实拥有非常受限的验证者。

So I think that's like a very interesting application because you do actually have very constrained verifiers.

Speaker 2

我们为这个系统考虑的另一个应用,基本上就是提供一种删除证明。

Another application that we've been thinking about for this system is basically to give you, like, a proof of deletion.

Speaker 2

比如,在非区块链环境下,像GDPR规定的那样,如果我提出一个请求...

So, like, in a non blockchain context, like, under GDPR, if I make a request Yeah.

Speaker 2

要求你删除我的数据,目前你只能相信公司的承诺,审计员需要花费高昂成本进行核查,或者只是做些抽查。

That you delete my data, right now, you have to take the company's word for it, and auditors have to do like a really expensive job of like checking this or they just, you know, do some spot checks.

Speaker 2

但现在可以让公司提供一份证明,展示这是我的数据库,这是更新后的承诺,我会公开发布让所有人看到。

But now you can have the company give you a proof that here is my database and here's the updated commitment, which I'm gonna publish for everyone to see.

关于 Bayt 播客

Bayt 提供中文+原文双语音频和字幕,帮助你打破语言障碍,轻松听懂全球优质播客。

继续浏览更多播客