Encode AMA with Tom Brand, about Starknet and more

Share this post:


Welcome to a detailed dive into the future of Starknet with Tom Brand! In this engaging AMA session, Tom discusses the innovative aspects of Starknet, including its core technologies and strategic direction. Whether you’re a developer, investor, or just curious about the future of blockchain technologies, this conversation promises to provide deep insights into how Starknet is shaping the landscape of decentralized applications. Tune in to discover what makes Starknet a pioneering force in the industry.

Steve:

Welcome to our most recent AMA.

We’ll get started here shortly as you join us. Post it in the chat where you’re coming from all over the world. Fun to see the different time zones that are represented.

As myself, I am in Austin, Texas. We have somebody on our team as well from London, so that’s pretty cool to see.

But yeah, a little intro into it.

Welcome to our AMA with Tom Brand product manager at StarkWare.

To start off, I’ll be the MC for today’s AMA session. I’m a program manager here at Encode Club.

If you haven’t heard about us before, we’re a Web3 educational community. We put on awesome programs such as boot camps, accelerators, workshops, and amazing AMAs like this one, all with the goal in mind of education and educating developers and learners into Web3.

A little bit more about StarkWare. StarkWare is a permissionless, decentralized, ZK roll up solution. Any developer can deploy any dApp using smart contracts to achieve unlimited scale.

So a little bit about our speaker for today.

Tom Brand has been a product manager for StarkWare for about the last four years. He has a bachelor’s degree in physics from the Hebrew University of Jerusalem. After serving in the Israeli Defense Force, he got a master’s in CS, specifically research consensus mechanisms in the field of permissionless networks and cryptocurrencies. So very versed in the space here.

Thanks for joining us, Tom, how are you doing today?

Tom Brand:

I am great. Thank you for having me here and thanks for everyone who took the time and joined.

Steve:

Great. Thanks, Tom.

So we’ll get into how this will work. We’re going to do a short Q&A back and forth for the first 30 minutes from myself. If you do have questions after those 30 minutes, we’ll open it up to the public where you can raise your hand and actually ask live, or you can put in the chat and I will relay those questions.

We have Anupam from our team as well on the call, he’ll be posting links. He just waved there. As well as answering small questions in the chat if you have about the experience here.

So yeah, we’ll get right into it. Tom, thanks for joining us. How we like to start off is just a general question about yourself. When you were younger, what did you want to do and where does that look now compared to that vision?

Tom Brand:

Tough one.

Do you want to talk about validity rollups maybe? No, I’m kidding.

Steve:

Yeah.

Tom Brand:

No, no, I’m kidding. Okay.

I think I’ve always seen myself as a father. It was quite natural to me and fortunately, I have three amazing kids. Pretty young. The oldest one is four and a half years old, and I have two others. All boys. So on that front, I think I’m okay, I’ve made it.

But on other front… Yeah, I don’t know. I was always attracted to science and as you’ve said, my bachelor degree is in physics and I really spent almost six years working in that field. And then maybe we can talk about it later but at some point, I was exposed to crypto and I decided to do my master degree there and now I’m here.

Steve:

Yeah, then let’s touch on that there, Tom. That was my next question. What was the first time that you heard about Web3 and how did it plan out where you ended up making the switch into the industry?

Tom Brand:

Yeah. So I think with almost six years ago I started to look a lot into economics and I think I also started just a few courses in a master degree in economics. And I was really drawn to markets and how it affects human life.

And in one dinner with a friend of mine, I don’t know, we talked and then he said, “You must look into Bitcoin and Ethereum. It’s really interesting.” And then when I went back home and looked into it and it was like two worlds collide. On one hand, economics. On the other one is science. And it was just an instant click to me.

And back then, I did other stuff in physics as I said, but then I had the opportunity to take a year off and do a master degree in computer science. And it was the perfect opportunity to dive deep into the theoretical aspects of blockchains. And as you mentioned, consensus protocol in general. So this was how I got into it.

I would say luck, I’m not sure exactly. So I walk in the university and then I saw a door and it says, “We accept Bitcoin.” I was like, “Okay, I got to look into it.” And it was the room of Professor Eli Ben-Sasson, which is the co-founder and president of StarkWare today, which he, in his academic work, did a lot of the theoretical and mathematical work on zero-knowledge groups. So I said, “Okay, this is a very good opportunity to find an advisor because it seems like he’s into blockchains and stuff like that.”

And I got into his room and somehow convinced him to take me as his student and then we did one year of research together. And in the middle, he abandoned me and went to found StarkWare, which was again an immediate click in my opinion, because it was a very interesting company, which the way I view it back then, and I’m happy that this is actually what we’re doing today, was trying to solve the two most important problems in blockchains. One is privacy and one is scalability.

So finishing my master degree, I went to work at StarkWare and here I am today.

Steve:

Awesome. We love it.

So yeah, you touched on ZK and ZK proofs there. For our audience that isn’t as technical and maybe hasn’t heard of them in depth, could you explain in layman’s term overall what is ZK proof and ZK rollup?

Tom Brand:

Sure. So let’s start with just proof systems without the term ZK because it always comes with the term zero knowledge, but actually proof systems can be with or without zero knowledge.

So proof systems in general are a way for… It is a mathematical construction that allows two entities, a prover and verify, to do some interaction. In that interaction, the prover can convince the verifier that some computation was done correctly.

Now, the most naïve example for that is what we do every time we’re going to the restaurant where at the end of the meal the prover, which is the waitress, brings you the bill and there they prove to you that the actual, I don’t know, amount you need to pay is the sum of the things that you ate.

Now, the naïve things about STARK proofs, SNARK proofs, or any proof systems that are being used in blockchains is that they have some nice properties. And one of those nice properties is that the prover can generate a proof that can convince the verifier that some statement is correct in a very short way.

So if I did a huge computation, I don’t know, went over a huge database and made sure that my name is not on that list, then I can generate a proof to that, which is very succinct. You don’t have to re-execute all the search over the database but I still will be able to convince you that this search did not yield my name in it. And that property leads us to what are ZK rollups or validity rollups as we like to call them because they don’t have any zero-knowledge properties.

So since this proof is much, much smaller than the computation itself, the way I apply it on blockchains and the way I use it to achieve scalability is that instead of…

Let’s say you want to participate in a network. You’re a node and you want to make sure that the state of the network is correct. So what you do today in every blockchain that exists, you have to re-execute all the transactions. You have to re-do all the work that was done. And this is the only way that you can achieve trustless guarantee that the state is correct.

Now, what proof allows you to do is you can replace the re-execution by verification of proof. And since the verification is much, much the computation effort that is required by the verification is much smaller than the re-execution itself, you can achieve scalability, because you can have, I don’t know, monster machines that just execute enormous blocks, but you as a participant in the network can still keep up and verify the correctness of the system because you only verify the proof.

So we used proofs to convince that, for example, a block execution is correct, but since proof verification is much smaller than the actual computation itself, you can achieve scalability.

Steve:

Right. That makes sense.

Tom Brand:

Was that clear?

Steve:

That was.

So that leads me to why did StarkWare decide to build on Ethereum’s blockchain in particular?

Tom Brand:

It’s an easy question, because where else can you build? And to be serious, validity rollups are an L2 on top of an L1, and we use the L1 as a settlement layer, meaning the proof verification… So we are sending the proofs to L1 and then you’re making sure that all the nodes that participate in the network actually verify the proofs.

And in that sense, I think there’s no competition to Ethereum in the community, in the decentralization, in your ability to have Ethereum as a neutral L1 layer.

Especially when we started, it was, I don’t know, three and a half years ago when we decided where to launch our first product, which was StarkEx, then there was no question and I don’t think that anything changed. Ethereum is the most vibrant and at least the way I view it, maybe I don’t see it, but this is why we’re working on top of Ethereum.

Steve:

All right. And Starknet uses Cairo the programming language. What would be the benefits of using that language over others and what was the thought process of using that?

Tom Brand:

Okay. Great question. But I think let’s go a step backward and talk a bit about what is Cairo and why we had to invent it.

So Cairo was invented in StarkWare by a few of our engineers. Crazy, crazy engineers.

And the motivation for Cairo was that how do you generate a proof to a statement. It’s not that you can just take, I don’t know, a Python program and generate a proof to it. You have to translate your computation to something which is called algebraic intermediate representation, which is we name it AIR, which is basically just a set of mathematical equations.

And it’s even hard for me to say its name, but it’s much harder to construct it. So if you want to, I don’t know, take a computation and generate the mathematical equations that describes it’s possible, we did it three years ago, but it’s very hard. And it leads to a problem that not many people can write programs and then generate proof to them.

The equivalent to that is back when we wanted to, I was not alive then, but let’s say when we wanted to generate circuits to specific computations, you had to build them by hand. You had ASICs, and then the evolution of ASICs was CPU. And what CPU allowed you, it allowed you to take any program that you want and run it on the same circuit, which was the CPU architecture.

So what Cairo did was to do exactly the same, to proof systems or to STARK proof… Sorry.

Basically, we created one set of mathematical equations that describes the operation of a CPU, and then Cairo, which is a CPU error, basically allows you to write programs that then compiles to Cairo bytecode, which can then be run and proven.

And basically what it allows you, it allows anyone to write program and be able to generate a proof to it without the need to know anything about proofs or about mathematics or about equation. Nothing. You only need to know how to program.

So this is Cairo.

Sorry.

Now, Starknet indeed uses Cairo as its basic programming language. So the main thing to understand is that each program that runs on each smart contract that runs on Starknet, you need to generate a proof to its execution.

So there are few ways to attack it. One way is to just say, “Okay, write your contracts in Cairo, we know that we can prove the execution of Cairo programs, and we built Cairo in such way that it will be the most efficient CPU architecture that can be proven. This is the way we build it.”

The other option is to say, “Okay, let’s implement, there are a few ways to go at it, but let’s implement the statement which is the EVM. And then we will be able to just prove the execution of the EVM.”

The advantages to that is that there is already a lot of experience on writing things to EVM and there is a lot of tool chains around IT, infrastructure, etc., etc.

The downside to that is that you sacrifice a lot of your efficiency because as I’ve said, Cairo was built to be the most efficient language that you can prove. So there are a few orders of magnitudes in the efficiency of generating proofs if you are building it to be fully compatible with EVM or if you’re building it using Cairo.

And we had this debate internally what we should do, and eventually what we decided to do is that we said, “Okay, we want to build the best scalability solution that you can have and hopefully, the future economy of the world can run on top of that.” And if that’s the case, then few orders of magnitude matters a lot. You want to achieve very high throughput with very low cost and it’s just not negligible.

And we hope, and I think that we discuss it in few minutes, but that people will take the challenge and learn another language and start writing things for Starknet.

And I think that the last year, again, we can talk about it in a minute, but the growth in the ecosystem and developers numbers on Starknet was amazing. Part of it thanks to you, Encode, which was a huge contributor to that, but I think people understand the benefit and decided to go into it.

On a side note, we do work on a way for you to take your Solidity code, for example, and transpile it to Cairo and run it on Starknet. It’s called Warp. The first version was released three months ago and a better, much improved version is supposed to be released in either this week or next week. And this will actually allow you to take your Solidity code and just deploy it on Starknet.

But I do think that people understand the benefits of writing native apps to Starknet and writing it in Cairo and that the efficiency and what they can achieve by doing it is much greater than what they need to spend in order to learn it.

Steve:

Right. So touching on that disclaimer, we’ll have more hackathons in the future, so watch out for that. Anupam will probably post some more events and links there on any announcements. So stay up to date on that.

Did you personally, Tom… You mentioned we, as a team, talked about the Cairo as a language. Did you personally work on that as a PM or what other projects within StarkWare have you worked on?

Tom Brand:

So my first project was StarkEx. What is StarkEx?

StarkEx is a specific application that runs in a validity roll-up mode. So for example, and we started working on it back on 2019 and the first release was in June 2020.

And since then, StarkEx, the numbers are amazing, the numbers of transactions that were ran through the system, the numbers, I think that… Maybe I’m mistaken, but I don’t know, I’ll just say it and take it with a grain of salt, I think the numbers of NFTs that were minted on top of StarkEx is the largest number on any other system.

But basically what is StarkEx is a specific applications that run in a validity rollup mode. So the first application was just spot trading exchange and we launched it with DeversiFi, then we expanded it to also be able to support the NFT minting and NFT trading. And we launched this product with Immutable, it’s called Immutable X. And then we added the ability to have derivative trading and this we launched together with the dYdX. And after that…

As I said, originally StarkEx was deployed without Cairo and then when we, I don’t know, built Cairo, we basically transitioned the whole layer of StarkEx to work with Cairo.

I think this is something that we are constantly doing wherever we go. So basically, everything that we develop, we first try to put it as fast as possible to production and see how it operates.

And in that sense, Starknet in general is not something that is we just came up with an idea and we are trying to see how it’ll go. We have a live system that uses the same technology and we see what it can do. It already runs in production for two and a half years or two years. We see what it can do, we see what scalability it can achieve.

And we’re actually going to do the same with the new technology that we’re going to introduce, which is proof Recursion. So we worked on proof-

Steve:

[inaudible 00:23:05].

Tom Brand:

Yeah, exactly.

Steve:

Wow. Okay. How does that work?

Tom Brand:

So there’s actually a very good talk from, I think it was two days ago by Avihu, which is the head of product in Starknet. He gave a talk on ETH Prague on Recursion and what we’re planning to do with that.

But basically Recursion allows you to generate proofs of proofs. So you can take a very large proof, split it to many small proofs, for example, and start generating three of proofs where at the end you end up only one very small proofs, but you were able to split the work, for example, between many provers.

And the Recursion opens the worlds to many, many interesting constructions. The bottom line is that for Starknet and for StarkEx, it just reduces the cost by a lot and it reduces the latency of proof generation.

And what I wanted to say on that is that… So we built Recursion, it already runs on testnet. And the first application that we’re going to run with Recursion is StarkEx. So StarkEx gives us the ability to make sure that everything that we’re building actually holds in a production system.

Steve:

So is that the next things that are on the horizon for StarkWare? What’s the future look like for StarkWare? I know you just raised a big amount of funding. Does that come into play on the next innovations that StarkWare is looking into?

Tom Brand:

Yeah. We’re fully… How do you say it? We are working full time on Starknet, and this is, I would say, our biggest priority. So Starknet right now is we call it Starknet alpha. There is still a lot of things to do to bring it to a place where it’s permissionless, decentralized ecosystem that lives by its own and it’s in a production state. And this is one of our main goals. Recursion is a technology that also can support that and make it much more feasible.

But it’s not like we’re looking for our next project. This is our project. Starknet. And there are a lot of things to do.

We’re heads down researching what should be the decentralization protocol for sequencers and provers. We also have a very strong team working on how the governance of Starknet will look like and how it can be a thriving ecosystem that can sustain itself or very hard working on bridging the gap between the alpha state and the production state.

And on parallel, we’re also constantly working on improving our technology. Recursion is one example, but there are many, many improvements that we have in plans for the provers.

And the beautiful things about validity rollups is that it’s not like other blockchains where it’s not very clear how you improve the scalability of the system, because you can’t just increase block size because then nobody will be able to work in the system.

But on validity rollups, if you improve the sequencers and the provers, you just improve the throughput and the scalability of the system. So there’s no limit. When we reach that limit, we’re saying, “Okay, the system can’t handle more than that,” because users will always be able to verify the proofs so we just have to constantly keep improving the provers and the sequencers.

Steve:

Yeah, great.

I guess more general question here, Tom, on the industry for that leading to, where do you see that rollups and those proofs going or maybe even ZK? In the future, how it’s actually applied to everyday life? How we’ll see true implementations in society based upon what you’re working on?

Tom Brand:

So first of all, I really believe, and I believe it for a long time, and I’m very fortunate to be working at that space that blockchains and Web3 in general will be the underlying infrastructure for any value interaction in the future. And I also really believe that validity proofs or zero-knowledge proofs will be in the underlying infrastructure of every blockchain. So this is one hand.

And also, on the other hand, I think it’s an amazing technology that we are only starting to understand its potential and push its limits, and I don’t know exactly to predict what other places it can play a role because it really fits to blockchain perfectly. Blockchains. But in general, I think it can play a huge role in the digital era where you have to, I don’t know, prove a lot of things, but on the other hand you want to keep your privacy, etc., etc.

Steve:

Right. So it sounds like the true technology, the basis will be totally used in blockchain and maybe the average user won’t see what’s under the hood, but it will be under the hood everywhere kind of deal.

Tom Brand:

Yeah.

Even now when you write contracts for Starknet, you really don’t feel the proofs. It’s not like you are thinking, “How should I write this line in order for it to be the best polynomial?” You just write programs but actually, the underlying mechanics is that proofs are being generated all the time.

Steve:

Right. I think that sums up the first questions I have. I want to open it up now to the general public. I know we have some questions in the chat here and I want to make sure there’s enough time to answer everybody. So we’ll try to change gears. A lot of it, Tom, sounds like kind of strategy and let’s see, it looks like people are asking about roadmaps.

So first one was from Chris. What is the roadmap on the decentralization of prover? If you can explain a little bit about that, what you guys are working with.

Tom Brand:

Yes, of course.

So I think… Okay. The general aim for us or the goal for us is to have some first version of the decentralization protocol for Starknet, which means that both provers and sequencers will be fully permissionless and anyone will be able to participate by somewhere around Q1 next year. Maybe it’s very ambitious, but this is currently what we’re aiming for.

And I think two months ago, something like that we shared in our forum, which is called Starknet Shamans, like the Bitcoin Wizards or Ethereum Magicians, three blog posts which describes, first of all, when we want to approach this problem, what are the priorities for requirements from this protocol we see. And then we also posted two proposals.

And right now, we are, as I’ve said, really… I don’t have a better description of what will actually be chosen because we’re currently working on that. But I think that we will share more details in the coming weeks as we get more clarity on what direction we want to go.

I hope this answer your questions.

It means that everyone will be able, or maybe just it means that everyone will be able to run sequencer and anyone will be able to run approval. Those will be available to the public. If it answers questions, then great. If not, just ask again.

Steve:

Awesome. Yeah, Chris, I think that answered it there, but next one was what is one helpful GTM strategy for StarWare-

Tom Brand:

I assume it’s go to market.

Steve:

Yeah, it’s what I assume as well.

So you’ve been the PM since the inception. So I guess some insight on how you’ve guys taken the product and actually been able to go to market after.

Tom Brand:

Good question.

I am not sure if this exactly answers your question, but as I’ve mentioned, one thing that we constantly do, and I think it was very, very helpful for us, was to try and put something in production as soon as possible. It’s very tempting to work on something for a long, long time and get out the perfect system at the end.

And it’s very scary to put out something which might not be the perfect system. But I think what we did was to try and put concrete milestones, which are not far ahead, that allows us to put something in production as soon as possible.

And one example for that was our strategy with Starknet, because when we started working with Starknet, which was January last year, we really had two possibilities. One was, okay, let’s build this network and I work on it for two years, get everything right, all the specs, everything fully detailed, and then publish it to the world. And the other option, which was actually what we did was to say, “Okay, let’s just call it Starknet Alpha and allow developers and allow the ecosystem to start interacting with it as soon as possible.”

So in June last year, we published the first version of Starknet Alpha and basically, since then, we just constantly updated it every month, month and a half with the latest state of our development.

And this allowed us to first of all always get constant feedback from developers from the ecosystem that what we’re doing is in the right direction or not the right direction, and for us to also see what are the real problems, and it allowed the ecosystem to start to grow.

So I will give you just one nice example that I thought about it yesterday.

So in the next July, there’s the upcoming EthCC, Ethereum Community Conference, in Paris. And last year, I was there and we gave the first Starknet workshop before professional people started doing those workshops. So it was me and we had early 13 participants, something like that. I don’t know, 15 participants. I went out to the street and just grabbed anyone I could to make sure it is not empty.

One year later, which is next month, only one year, and there are three events which are a Starknet related and are not being organized by us. And the number of workshops that you have on Starknet is larger than the number of participants than we had back then. So we have something like 14 workshops on Starknet.

And what I want to say is that if we chose to work on Starknet and just release it, I don’t know, when it’s ready, none of that would’ve happened.

So this is a go-to market strategy that we found helpful for us to meet the production as soon as possible.

Steve:

Right. Yeah, we’re hoping us facilitating and aiding to those developers just as it goes on. I know everybody is excited about Starknet and trying to hop on it. So I think it was a great system there.

Leading to the next question from Julian, can you speak about the roadmap of parallelization of transaction processing? What are the different challenges associated with it of proving versus execution? Quite a long one here. What kind of performance benefits can we expect from each one of those?

Tom Brand:

Okay. So I think the answer to that question is very similar to what I said before. We didn’t said, “Okay, let’s plan for the next year what will be the roadmap for parallelization,” because you can plan something and then when you meet the code, you understand that, I don’t know, the problem is somewhere else entirely.

So what we chose to do is we said, “Okay, let’s define the minimal version of parallelization that we can have, the most naïve one, and just go for that. And then after we implement that, we’ll have a much better understanding on where we can go.”

So I hope it’s not a big disappointed, but the roadmap is that we are progressing a step-by-step.

Now what are the different challenges I thought between proving parallelization of proving an execution is a very good question. And they’re actually very different, and I will try to explain it briefly, because I think there are many, many other questions.

But basically execution is a sequential process. If you want to execute a 100 block, you can start executing the last block before you executed the first one because you don’t know what will be the state. So you can try and execute in parallel transactions, which does not affect the same storage. So you can take transactions which are decoupled and execute them together.

There are few ways on how you can know it in advance. For example, the way Solana is doing it with access lists or the way we’re currently approaching it with some optimistic parallelization where you try to execute them and then see if they touch. So this is execution.

But proving is a different problem. Basically, you know what is the computation. If you want to prove the execution of 100 blocks, you have the full execution trace already there. And the proof is a stateless computation meaning it says, “I prove that I moved from state A to state B.” So in that sense, I can prove 100 proofs in parallel each one of them for one single block because the computation is already known in advance.

So it is very easy to parallel proof. And this is where currently, for example, the bottleneck of the throughput of Starknet, not the provers, which I think is, I don’t know, quite surprising but the provers actually handle much greater load as you can see. For example, with the dYdX system where we handle, I don’t know, 40 TPS of very, very complex transactions. The actual bottleneck is the execution in the throughput.

And what kind of performance can we expect? High performance. We’re aiming high. So I hope that by the end of the year we’ll have something like between 40 and 80 swaps per second and… Proving is already much higher. This is not the problem. I’m talking about execution and going forward, I don’t know, let’s see.

Steve:

Awesome. I think that-

Tom Brand:

But it’s just the beginning I think.

Steve:

Great. I think that sums it up very well.

Quick question I think here. What do you think the cap of the mainnet will be lifted?

Tom Brand:

It’s a great question.

We don’t treat likely users’ funds. So we don’t want to have many users risk their funds in a system which is essentially an alpha system. So I’ll give you a few examples on what it mean alpha.

It was not audited. I really believe in our engineers, they’re amazing, but we do have bugs, I’m sure this is the nature of programs.

The system is fully upgradable by us at the moment. So there is a single key that controls the implementation of Starknet. So this is a major security risk, which as I’ve mentioned, in our transition from alpha to production, of course it won’t be the case, but currently it is the case.

So I explained why we have limitations. I didn’t say when it’ll be lifted, I don’t know.

Steve:

It’s tough.

Tom Brand:

Yeah, we’re still increasing it gradually with the main goal of allowing users and developers that want to operate on mainnet to have fees to do that. It’s not for just hold money, assets there or something like that, but when we have more clarity, we’ll communicate it.

Steve:

Great.

Next question here. Any plans on building a higher level language on Cairo? Cairo seems to be closer to assembly than a higher level language. Anything common on there, Tom?

Tom Brand:

Yeah. So Alpha Leak, just because I don’t think we said it.

So we have pretty new compiler team that rewrites the Cairo compiler to make it, as you’ve said, a more developers friendly or just a higher level language with lots of the features that are constantly being requested from developers in there. So it won’t be next week, but this is something that we are working on it and I’m pretty sure the results will be very, very good.

Steve:

Amazing. We’re excited to see it.

Tom Brand:

Yeah. Me too.

Steve:

Next one here. As a developer coming from Solidity background, you recommend learning Cairo alongside it or to get a good grasp or just go right into Cairo? Do you need that Solidity experience?

Tom Brand:

Yeah, there was one question about blockchain reset which-.

Steve:

Oh, apologies.

Tom Brand:

It’s very close to my heart because I’m in the process of writing a blog post to explain our thoughts around that.

Yeah, I think there will be a blockchain reset, but it won’t be in the far future but hopefully, in few short months and we’re working hard to allow the migration of mostly assets to be as smooth as possible. So fungible tokens is pretty easy to migrate, but we’re also working on other solutions that will hopefully make this transition as smooth as possible, but maybe it won’t. But yeah, I suspect there will be one.

Steve:

Right. [inaudible 00:44:32]-

Tom Brand:

Okay. So now to the question about Solidity.

Steve:

Yeah. Sorry for skipping over that one. Missed it.

Tom Brand:

Yeah.

So I don’t think there’s a prerequisite to know Solidity. It’s not like Cairo is highly influenced from Solidity, but I do think that a lot of the tutorials that currently we have for Cairo assumes that you are familiar with the concepts of smart contracts and blockchains in general. We still lack the educational resources that explains a Web2 developer how to go directly into Starknet.

So in that sense, it’s not necessary but we still don’t provide the required information for you to go directly into Cairo, but we do plan to change that. Many plans.

Steve:

So in short, it would help to understand the smart contract side of things to jump into Cairo.

Tom Brand:

Yeah, exactly.

Steve:

Next one here, there are mini layer twos out there. Can you tell us the strengths of Starknet compared to other projects?

Tom Brand:

Yeah. First of all, validity rollups in my opinion is the only viable way to actually scale blockchains. The use of proofs. Anything else, in my opinion, does not hold when you actually want to scale.

And specifically Starknet, I’ve just mentioned it, but we have a really, really good and vibrant and amazing ecosystem. So if you would ask me one year ago, what will be the strengths of Starknet I wouldn’t say that and I’m actually very surprised to say it today, but the ecosystem is amazing. And we’re also working…

I guess anyone will say it, but this is also true. We are also working very, very hard on it and to make it an actual system that will live by itself and will hopefully work. So this is what I do.

Steve:

Great, great.

One more question about lifting on mainnet. When will the whitelist for contracts be lifted? Maybe it’s a similar [inaudible 00:47:10].

Tom Brand:

Yeah, I think very soon.

Steve:

Very soon.

Tom Brand:

This is actually on my plate. Just remove it.

Again, one of the main purposes for us was to make sure that developers that are coming to deploy on mainnet are aware of the state of the system. So it was a way for us to make sure that they talk with us, but I think it is less necessary now and we will probably remove it sometime soon.

Steve:

Right. A lot of things on the horizon here. So stay up to date.

Tom Brand:

Yeah. Things are moving fast.

Steve:

They’re moving fast. Yeah.

A quick question. What channels do you recommend to learn about zero-knowledge proofs and Cairo in general for people wanting to develop for Starknet? Can we just go to your developer documents or is there any kind of additional?

Tom Brand:

So we have our developer’s documents. I think they’re pretty good, but not perfect but there are many, many tutorials that people have started.

So you can just go to starknet.io. It has many resources there that can give you a way to get into it. It won’t talk almost at all about zero-knowledge proofs because as I’ve said, you don’t need to understand zero-knowledge proofs in order to work on Starknet. For that, there are other resources. But it will guide you through the process of learning how to use Starknet, how to write in Cairo, etc., etc.

Steve:

Great. I don’t think we’re taking any token questions here, so we’ll move on to the next one.

When is the connection of dApps to the mainnet? I think we answered this one as well. Very soon. Things are on the horizon.

Tom Brand:

So I’m not [inaudible 00:49:10] the question, but mainnet is live and apps can deploy on it and there are actually some apps that’s running today.

Steve:

Yeah, today on the Alpha you can, there’s no limitations.

Tom Brand:

Yeah. The Alpha is running. Apart from the disclaimers that you need to know, it’s a working system.

Steve:

Right.

Let’s see. What are your thoughts on blockchain and crypto use cases in countries with high inflation and corruption? So I guess that’s more of a general crypto question.

Tom Brand:

That’s a good question. I never thought about the specific use case of countries with high corruption, but it is interesting to have more transparency with…

For example, but this is really far-fetched, but I would like to have a clear visibility or maybe even the ability to decide and influence what is being done with my tax money. At least part of it I would like to say, “Okay, this is what I want to do with it.” I have a set…

And this is actually stuff that we are thinking about for Starknet. So you as a user can have the ability to decide what will be done with your fees. You want to… Anyway. But this is just stuff that we want to add to Starknet.

And this is a good question. I don’t have [inaudible 00:50:51] thoughts on that. I can ramble along if you want, but… Maybe.

Steve:

Yeah. We’ll try to get through the next couple of questions here.

Parallelization is also optimistic. If the proof on one block in between is a bad block, then all the following proof is bad.

I’m not quite sure exactly what they’re asking there.

Tom Brand:

Yeah. I think it’s referenced to what I said about the fact that the proofs can be easily parallelized.

So I’m not sure exactly what you mean by a bad block, but when I execute a block, I can know for sure if it is a valid one or invalid one. Maybe the only caveat is if something happens on L1, maybe, I don’t know, a deep reorg or something like that but let’s leave it aside. So in that sense, when I start to generate the proof, I already know that it’s a good block.

Steve:

Right.

Tom Brand:

Yeah, I hope that answers.

What I mean is that I don’t need for the proof of the last block to be finished before I start generating the proof of the next block. So in that sense, you can imagine many processes running in parallel, but they’re not sequential. They are sequential in the execution rate, but they’re not sequential in the proof generation rate.

So I hope that answers the question. Just ping me. I don’t know. I will post my handle later and you can just ping me if not.

Steve:

Great. We’ll try to get these last couple in. I know we have only five minutes here.

What do you think about TEE confidentiality you compare with other confidentiality technologies?

Tom Brand:

I’m not sure exactly what is TEE. Is it like hardware enclave?

Steve:

Let’s see here.

Tom Brand:

I’m not sure.

If it’s hardware enclave, then I think it’ll be hacked. If it’s something else, then I don’t know what it is. Yeah.

Steve:

Yeah, that answered that. He did say yes.

Let’s see. Double question here. What does the letter O stand for in the acronym Cairo? And what is the meaning of the term proof when used TLA+ Cairo?

Tom Brand:

Okay. So I’m not sure what is the second question. I hope it’s not embarrassing that I’m not aware of what it is.

The letter O was just a way for us to make it like a meaningful name. So C is CPU, AIR is Algebraic Intermediate Representation, and O just gives us the ability to call it Cairo.

Steve:

Right. It works out. It’s pretty smart. Pretty clever.

Tom Brand:

Yeah.

Steve:

Let’s see. Do you have any plans to build custom hardware FPGA?

Tom Brand:

Yeah, I think… Yeah, if it holds benefits then at some point… The market will demand more performant provers and we’ll do it. Right now, as I’ve said, provers are not the bottleneck at all. But what we do look into now is what can be done with the GPUs, because it’s much easier. You can just buy a GPU and again, the same easiness that you use a CPU can use a GPU. So this is the first thing that we do and we’re already looking into it.

Steve:

Great.

Tom Brand:

With… Yeah.

Steve:

Last couple here.

NFTs seem like they can’t be migrated during a blockchain reset. Is this true?

Tom Brand:

No. There are nice ways to allow it where you can burn on the origin chain and mint on the destination chain and do it with proofs.

So this is what I mentioned that we’re trying to have ways for developers of NFTs or stuff like that to also be able to migrate their assets seamlessly to their users. I agree it’s much less trivial but hopefully, something feasible can be done on that front as well.

Steve:

Great.

Do we need to keep in mind all smart contracts specific attack services when designing contracts for Starknet?

Tom Brand:

Yes.

Steve:

Great.

Tom Brand:

Yeah. There might be more, but the general structure of smart contracts is exactly the same. There are always specifics to each implementation. EVM might have its own specific attacks and Cairo VM might have something else, but general attack surfaces own smart contracts still holds.

And we actually had a re-entrancy attack in one of the contracts which was discovered not in our contract, but just an application contract, which was discovered three weeks ago.

Steve:

Oh, wow. Were they able to fix that?

Tom Brand:

Yeah, it was still on testnet.

Steve:

Okay, great. Great.

Let’s see. We have a couple more here.

Where can I buy Starknet merch? Do you guys have shirts I think [inaudible 00:56:40]-

Tom Brand:

So just come to the workshops and hackathons and I can show you a photo of myself from the last Starkathon in Amsterdam in April, and I was head to bottom fully equipped with the Starknet merch. So just come to the workshops and hackathons.

Steve:

Come to the workshops and the hackathons. So sounds like next opportunity EthCC. So make it out there and you’ll be able to get some merch.

Let’s see if we have time for, I think, two more questions here, Tom, if you’re willing to stay maybe a couple minutes.

Yeah, these will be our last two questions, everybody. We do only have a couple more minutes for Tom. Thank you so much for him staying over to answer them here.

Tom Brand:

Yeah, it’s a pleasure. Those are great questions.

Steve:

Let’s see. According to… What are the advantages of account abstraction? What kind of use cases will enable?

Tom Brand:

Okay. So first of all, I think that like anything else that, and this goes back to what I said about my background, but in any place where you allow developers or people the freedom to design something, they will come up with things that I could never thought of.

So the first advantages of account abstraction is that it gives users and developers the freedom of creativity to come up with new ideas. Specifically, we already see many nice things on Starknet.

So for example, users have implemented multicall. Now the basic way to conduct transactions on Starknet are multicalls. So for example, what it allows you? It allows you to have safe ERC-20 transfers in the sense that you can set an approval, do the ERC-20 transfer, and then remove your approval. So you suddenly don’t have all the problems of infinite approvals on ERC-20s.

And I think this is just like the tip of the ice on what we can see, but it allows us to develop in parallel multiple signature schemes for account verification. We’ll introduce some of the upcoming versions fee abstractions, which will allow you to pay, for example, in any token.

We’ve seen a very nice use case for gaming from account abstraction in the Starkathon in April where a team have implemented a session key that allows you that once you connect to a gaming session, you can have a limited time key that gives the app the ability to seamlessly for you to sign transactions. So it really improves the UX of the game.

But again, this is not something that I would’ve thought of three months ago, but people just had the freedom and they came up with good ideas, which is blockchain.

Steve:

So many good ideas happening. Awesome.

Last one here. Ethereum currently has no solution for the upcoming updates and it’s not clear if it can convince everyone to stop mining. Are there potential problems with Ethereum affecting your project once this merge happens here? Affecting Starknet.

Tom Brand:

So currently, Starknet is an L2 on top of L1, which is Ethereum. The nice thing about it is that it has the same security as L1. Probably the bad thing about it is if something happens to L1, then also the current construction of Starknet might be a problem.

But the protocol itself for the way it is constructed is not assuming almost anything about L1. You assume it is some neutral public good that you can use. But we do have always the ability to use other places.

Again, I don’t think there are currently any other place which is good as Ethereum, but it is a possibility.

Steve:

Right. Awesome. Well, I think that’s it for today. Thanks so much to Tom for joining us. Amazing questions asked as well in the chat. Thanks so much for taking the time.

We’ll have this posted and recorded on YouTube later.

Let’s see. Maybe let’s post Tom’s Twitter handle here, so you can follow him, see some updates on Starknet coming up, and then just generally where StarkWare will be in conferences and workshops. But thanks again. Thanks for everybody to join and hope to see you guys here soon.

Thanks, Tom.

Tom Brand:

Steve and Anupam, thank you very much for having me here. It was a real pleasure.

Steve:

Awesome. We thoroughly enjoyed it. Thank you for your insight and in depth on what you’re doing. So it was very insightful.

Tom Brand:

Have a good day.

Steve:

Have a good one. Bye-bye.