1
00:00:00,040 --> 00:00:02,520
Welcome to Epicenter, the show, 
which talks about the 

2
00:00:02,520 --> 00:00:04,960
technologies, projects and 
people driving geese, 

3
00:00:04,960 --> 00:00:07,280
centralization and the 
blockchain revolution. 

4
00:00:07,280 --> 00:00:10,640
And then today I'm speaking with
Zach Williamson. 

5
00:00:11,000 --> 00:00:15,280
You're not going to launch this 
thing without decentralization, 

6
00:00:15,280 --> 00:00:16,239
right? 
Kind of like you want a 

7
00:00:16,239 --> 00:00:18,600
decentralized sequencer and 
provers. 

8
00:00:18,880 --> 00:00:20,920
We're not doing this out of some
moral crusade. 

9
00:00:20,920 --> 00:00:22,200
We do it. 
We're decentralized because we 

10
00:00:22,200 --> 00:00:23,600
need to be. 
We can't be centralized. 

11
00:00:23,680 --> 00:00:24,560
We'd have to build in a 
backdoor. 

12
00:00:24,560 --> 00:00:25,640
We don't want to build in a 
backdoor. 

13
00:00:25,640 --> 00:00:28,000
Backdoors are really bad. 
You want to use things that are 

14
00:00:28,000 --> 00:00:30,080
better tested as much as you 
can, right? 

15
00:00:30,080 --> 00:00:34,200
Building novel things kind of 
means having to build new 

16
00:00:34,200 --> 00:00:41,280
systems, but trying to possibly 
fall back on proven systems. 

17
00:00:41,480 --> 00:00:45,320
There's no such thing. 
We are the first astic will be 

18
00:00:45,320 --> 00:00:47,880
the fall back for future 
generations of private 

19
00:00:47,880 --> 00:00:50,320
cryptography. 
Once we get beta we believe much

20
00:00:50,320 --> 00:00:52,560
more comfortable making claims 
about its security. 

21
00:00:52,560 --> 00:00:54,200
Will be much more comfortable 
with people putting large 

22
00:00:54,200 --> 00:00:56,680
amounts of funds in. 
But until then, it's it's going 

23
00:00:56,680 --> 00:01:04,959
to be a risky protocol. 
I'm pretty honest, and today I'm

24
00:01:04,959 --> 00:01:09,720
speaking with Zach Williamson, 
Co founder and CEO of Aztec, a 

25
00:01:09,720 --> 00:01:15,920
Layer 2 network building what it
calls programmable privacy for 

26
00:01:15,920 --> 00:01:19,640
Ethereum. 
So Aztec was once known for 

27
00:01:20,040 --> 00:01:23,880
private transfers, but a couple 
of years ago, the team did 

28
00:01:23,880 --> 00:01:28,040
something that very few projects
actually dare to go through with

29
00:01:28,400 --> 00:01:31,680
they shut everything down and 
rebuild from scratch. 

30
00:01:32,800 --> 00:01:36,920
The new Aztec promises fully 
private smart contracts, not 

31
00:01:36,920 --> 00:01:40,280
just private balances, but 
private logic, computation, 

32
00:01:40,280 --> 00:01:43,840
identity, but still remaining 
compatible with Ethereum's 

33
00:01:44,200 --> 00:01:48,080
public ecosystem. 
We'll dive into all the details 

34
00:01:48,080 --> 00:01:50,600
in just a bit. 
This episode is brought to you 

35
00:01:50,600 --> 00:01:53,760
by Nosis, building the open 
Internet one block at a time. 

36
00:01:54,240 --> 00:01:57,800
Nosis was founded in 2015 and 
it's grown from 1 of Ethereum's 

37
00:01:57,800 --> 00:02:01,240
earliest projects into a 
powerful ecosystem for open user

38
00:02:01,240 --> 00:02:04,080
owned finance. 
Nosis is also the team behind 

39
00:02:04,080 --> 00:02:06,720
products that had become core to
my business and that are so many

40
00:02:06,720 --> 00:02:10,880
others like Safe and Cow Swap. 
At the center is Nosis Chain. 

41
00:02:11,360 --> 00:02:15,760
It's a low fee layer one with 0 
downtime in seven years and 

42
00:02:15,760 --> 00:02:17,760
secured by over 300,000 
validators. 

43
00:02:18,160 --> 00:02:20,840
It's the foundation for real 
world financial applications 

44
00:02:20,840 --> 00:02:25,000
like Nosis Pay and Circles. 
All of this is governed by Nosis

45
00:02:25,000 --> 00:02:27,960
Dow, a community run 
organization where anyone with a

46
00:02:28,160 --> 00:02:32,480
GNO token can vote on updates, 
fund new projects, and even run 

47
00:02:32,480 --> 00:02:35,920
a validator from home. 
So if you're building a Web 3 or

48
00:02:35,920 --> 00:02:38,240
you're just curious about what 
financial freedom can look like,

49
00:02:38,440 --> 00:02:43,280
start exploring at nosis dot IO.
Zach, thank you so much for 

50
00:02:43,280 --> 00:02:46,520
coming on again. 
Thank you so much for having me 

51
00:02:46,520 --> 00:02:47,840
on. 
It's a pleasure to be back here 

52
00:02:47,840 --> 00:02:50,320
after all these years. 
Yeah, absolutely. 

53
00:02:50,560 --> 00:02:54,760
Yeah, you, you were last on 
Epicentre when Aztec was still 

54
00:02:54,760 --> 00:03:00,000
running it's earlier version. 
Tell us what's happened since. 

55
00:03:00,000 --> 00:03:02,280
Yeah. 
So back then I think we were, we

56
00:03:02,280 --> 00:03:07,480
were on Aztec Connect, which was
a continuation of the world's 

57
00:03:07,480 --> 00:03:11,560
first fully private roll up. 
So it was a layer 2 network 

58
00:03:11,560 --> 00:03:16,120
where you could send private 
transactions and use our network

59
00:03:16,400 --> 00:03:19,000
effectively as an anonymous 
proxy into Ethereum Defy. 

60
00:03:19,000 --> 00:03:22,320
So you could talk to something 
like a Uniswap or an Ave. 

61
00:03:22,320 --> 00:03:25,200
contract and have the Aztec 
smart contract act as your 

62
00:03:25,200 --> 00:03:28,040
proxy. 
Then the result of that Defy 

63
00:03:28,040 --> 00:03:30,360
traction would come back into 
the Aztec network and then you 

64
00:03:30,360 --> 00:03:32,920
could take your claim of it 
privately. 

65
00:03:32,920 --> 00:03:35,640
So back then that was the the 
most advanced thing we could do 

66
00:03:35,640 --> 00:03:38,120
with the technology that we had 
available at the time. 

67
00:03:38,880 --> 00:03:43,800
Something we call turboplunk was
a was a was an extension of the 

68
00:03:43,800 --> 00:03:46,200
original Plunk paper that we put
out in 2019. 

69
00:03:46,200 --> 00:03:49,520
But that was the Azteca. 
That was never really the full 

70
00:03:49,520 --> 00:03:52,600
aspirations of the network. 
We built it because we wanted to

71
00:03:52,600 --> 00:03:56,240
demonstrate that privacy was 
possible and useful and needed. 

72
00:03:56,280 --> 00:04:00,040
What we've wanted to do all the 
long was create a private smart 

73
00:04:00,040 --> 00:04:03,440
contract ecosystem. 
So one where instead of just 

74
00:04:03,440 --> 00:04:06,080
doing transfers or talking to 
defy, you know, you can have a 

75
00:04:06,080 --> 00:04:08,640
sharing complete smart card 
language where you can write 

76
00:04:08,640 --> 00:04:12,080
your own states, your own state 
transition functions and 

77
00:04:12,320 --> 00:04:16,800
describe the logic of whatever 
protocol you desired, but with 

78
00:04:16,800 --> 00:04:18,560
private data as a first class 
primitive. 

79
00:04:19,880 --> 00:04:22,560
So yeah, that's what we just, 
that's what we decided to build,

80
00:04:22,560 --> 00:04:27,360
I think shortly after our first.
Conversation, why did you decide

81
00:04:27,360 --> 00:04:31,000
to kind of rebuild this 
completely instead of just 

82
00:04:31,000 --> 00:04:34,360
iterating on the old system? 
Because I mean, obviously people

83
00:04:34,360 --> 00:04:36,680
were already on there, people 
were using it that. 

84
00:04:36,680 --> 00:04:38,680
Would have been nice. 
We have, I think it was 60,000 

85
00:04:38,680 --> 00:04:41,600
multi active users. 
It was, it was and growing quite

86
00:04:41,600 --> 00:04:45,320
rapidly. 
The the challenge was that Essek

87
00:04:45,320 --> 00:04:48,880
Connect was built from scratch 
with the latest technology we 

88
00:04:48,880 --> 00:04:52,080
had at our disposal. 
No one had really built a fully 

89
00:04:52,080 --> 00:04:54,120
private rollout before. 
So we've been figuring out a lot

90
00:04:54,120 --> 00:04:56,840
from the first time, and in 
hindsight, we made a lot of 

91
00:04:56,840 --> 00:05:01,040
architectural missteps that we 
wanted to correct that really we

92
00:05:01,040 --> 00:05:04,440
didn't really have a viable path
to iteratively upgrading as tech

93
00:05:04,440 --> 00:05:06,400
connects to add programmability 
into it. 

94
00:05:06,760 --> 00:05:10,480
Everything changed. 
You know, the semantics of how 

95
00:05:10,480 --> 00:05:13,960
you, how you call create 
transactions, the cryptographic 

96
00:05:13,960 --> 00:05:17,240
proving system that you need to 
use the, the Node software and 

97
00:05:17,280 --> 00:05:20,560
its interface and its API. 
We quickly realized it was what 

98
00:05:20,560 --> 00:05:22,920
we wanted to build was 
unrecognizable compared to what 

99
00:05:22,920 --> 00:05:25,200
we already had, and that we 
needed to take those learnings 

100
00:05:25,200 --> 00:05:28,280
and that institutional knowledge
and and recast it. 

101
00:05:28,280 --> 00:05:32,040
But we we didn't see a viable 
pathway to it's a has to 

102
00:05:32,040 --> 00:05:35,200
connect, unfortunately. 
Tell me about the moment that 

103
00:05:35,200 --> 00:05:39,120
you guys realize this. 
So kind of obviously kind of as 

104
00:05:39,280 --> 00:05:43,160
a builder, as a founder, you, 
you get attached to what you've 

105
00:05:43,160 --> 00:05:45,200
built, right? 
Kind of like it's your baby and 

106
00:05:45,200 --> 00:05:50,000
kind of like the users kind of 
you, you feel close to them even

107
00:05:50,000 --> 00:05:52,680
if you don't actually know them 
personally. 

108
00:05:52,680 --> 00:05:57,000
Kind of you, you, you are 
somehow indebted to them, right?

109
00:05:57,000 --> 00:06:01,000
So kind of you, you have some 
sort of so, so tell me how that 

110
00:06:01,000 --> 00:06:02,560
went down. 
Yeah, I still feel like pain of 

111
00:06:02,560 --> 00:06:04,160
guilt whenever I talk to 
somebody and they say, hey, I 

112
00:06:04,200 --> 00:06:05,360
use SAS to connect. 
I'm like I'm. 

113
00:06:06,760 --> 00:06:13,640
I use SAS to connect. 
It was tricky. 

114
00:06:13,640 --> 00:06:16,680
You know, it started with we had
some internal conversations. 

115
00:06:16,880 --> 00:06:19,640
Basically there was, there was 
this exciting incident where we 

116
00:06:19,640 --> 00:06:22,120
made some research breakthroughs
that made the full programmable 

117
00:06:22,120 --> 00:06:23,920
version possible. 
And it was, it was an 

118
00:06:23,920 --> 00:06:27,000
evolutionary process. 
You know, a lot of others also 

119
00:06:27,000 --> 00:06:28,400
were spent maintaining there's 
no software. 

120
00:06:28,400 --> 00:06:30,960
We didn't really have the 
ability to really launch this, 

121
00:06:30,960 --> 00:06:32,560
what we were calling Aztec Free 
Project. 

122
00:06:33,160 --> 00:06:34,880
You know, some, there were some 
people we were having 

123
00:06:34,880 --> 00:06:37,360
discussions that we were like, 
hey, like maybe we need to kill 

124
00:06:37,360 --> 00:06:40,000
this. 
Then that started turning into a

125
00:06:40,400 --> 00:06:42,720
internally like quite, quite a 
quite an active discussion. 

126
00:06:42,720 --> 00:06:46,560
And yeah, like eventually it was
ended up as me and me and Jonah 

127
00:06:46,560 --> 00:06:50,880
in the coffee shop having a very
long conversation about about 

128
00:06:50,880 --> 00:06:52,480
the future, about what we wanted
to do. 

129
00:06:52,520 --> 00:06:55,200
We we we came to looking. 
But yeah, we need to there's no 

130
00:06:55,200 --> 00:06:57,880
way that we can serve both asked
to connect and asked to three. 

131
00:06:58,360 --> 00:07:01,400
One needs to go and and it 
should be asked to connect. 

132
00:07:01,960 --> 00:07:03,760
But it was it was a tough 
conversation. 

133
00:07:03,800 --> 00:07:07,360
Which one of these kids do you 
think we should kind of put up 

134
00:07:07,360 --> 00:07:08,680
for adoption? 
Sort of. 

135
00:07:08,920 --> 00:07:11,200
Yeah, you know, everyone says 
they love their children 

136
00:07:11,200 --> 00:07:14,560
equally, but maybe deep down. 
Like one of them is air 

137
00:07:14,560 --> 00:07:16,360
secretary. 
Don't want to acknowledge. 

138
00:07:17,280 --> 00:07:20,320
And then we're like yeah, OK, 
111 of our kids needs to die. 

139
00:07:23,200 --> 00:07:26,600
Prepare the sacrificial altar. 
OK, maybe, maybe let's move into

140
00:07:26,600 --> 00:07:29,440
kind of like more theory 
territory. 

141
00:07:29,440 --> 00:07:33,760
So one of the kids is somewhat 
alive again. 

142
00:07:33,760 --> 00:07:37,160
So tell, tell us kind of like 
what's what's live now and 

143
00:07:37,160 --> 00:07:39,320
what's still being built. 
We're calling ASIC now, we're 

144
00:07:39,320 --> 00:07:41,800
releasing, you know, it's not 
ASIC free anymore and it is 

145
00:07:41,880 --> 00:07:44,040
alive. 
It's on public test net, it's 

146
00:07:44,040 --> 00:07:46,680
fully decentralized. 
You can deploy contracts to it 

147
00:07:46,680 --> 00:07:50,440
today, send transactions to it. 
I think it's is it play 

148
00:07:50,440 --> 00:07:52,600
around.asic.net network I 
believe. 

149
00:07:52,960 --> 00:07:57,640
And we are currently going 
through a audit process and, you

150
00:07:57,640 --> 00:08:02,560
know, doing some last minute 
adaptations to it to get it 

151
00:08:02,560 --> 00:08:05,600
ready for Mainnet, which should 
be happening early next year. 

152
00:08:06,240 --> 00:08:09,040
Exciting. 
Very alive kicking, you know, 

153
00:08:09,080 --> 00:08:10,920
like now. 
Now we're the main focus 

154
00:08:10,920 --> 00:08:13,640
internally is basically focus on
the Dev X. 

155
00:08:14,520 --> 00:08:16,400
We, we launched the test net 
earlier this year. 

156
00:08:17,160 --> 00:08:20,040
And you know, we, we've 
basically transitioning the, the

157
00:08:20,040 --> 00:08:22,760
organization from a place where 
the goal was just get it 

158
00:08:22,760 --> 00:08:26,920
working, whatever's, whatever it
takes, just get it working to 1 

159
00:08:26,920 --> 00:08:28,720
where a mandate. 
Now we need to make it good, 

160
00:08:29,240 --> 00:08:30,880
easy to use for, easy to develop
for. 

161
00:08:31,040 --> 00:08:32,080
So that's still a work in 
progress. 

162
00:08:32,080 --> 00:08:35,880
But by the time we we hit hit 
our launch next year, that 

163
00:08:35,880 --> 00:08:38,480
should be all squared away. 
Fantastic. 

164
00:08:39,200 --> 00:08:43,400
So maybe let's talk about the 
way this thing is architected. 

165
00:08:43,400 --> 00:08:48,120
So kind of there are a couple of
core design choices that you 

166
00:08:48,120 --> 00:08:52,280
guys had to make and I think 
maybe it's easiest if we kind of

167
00:08:52,280 --> 00:08:55,520
walk through them 1 by 1. 
So kind of the first I noted 

168
00:08:55,520 --> 00:09:00,040
down as kind of decision to kind
of have a hybrid public and 

169
00:09:00,040 --> 00:09:03,200
private execution situation. 
Tell us about that for. 

170
00:09:03,400 --> 00:09:03,760
Sure. 
Yeah. 

171
00:09:03,760 --> 00:09:05,840
Well, that that came out of 
again, like I think Asterisk 

172
00:09:05,840 --> 00:09:08,240
Connect was, was is 
existentially important for us 

173
00:09:08,240 --> 00:09:10,200
because this came out of 
Asterisk Connect like a learning

174
00:09:10,200 --> 00:09:13,640
that we were like we realized, 
OK, so with private state the 

175
00:09:13,640 --> 00:09:15,520
way currently is, at least if 
you don't have FHE, we don't 

176
00:09:15,520 --> 00:09:18,960
have announced NPC like like 
TESAO stuff, which we do have, 

177
00:09:18,960 --> 00:09:20,520
but it's not yet like critical 
level. 

178
00:09:20,520 --> 00:09:23,720
At the critical level, all 
private data is encrypted and 

179
00:09:23,720 --> 00:09:27,080
you need to use a UTX survey 
states model to do that. 

180
00:09:27,120 --> 00:09:29,560
Like like Bitcoin, where instead
of having an account where you 

181
00:09:29,560 --> 00:09:32,520
have a like either balances that
can be modified, you have 

182
00:09:32,520 --> 00:09:36,160
individual discrete like objects
of state in your database. 

183
00:09:36,160 --> 00:09:39,120
And these things have owners so 
that your balance, your token 

184
00:09:39,120 --> 00:09:41,320
balance is made-up of lots of 
these different notes in your in

185
00:09:41,320 --> 00:09:42,800
your database. 
The reason you need this for 

186
00:09:42,800 --> 00:09:47,360
privacy is because if I have an 
encrypted balance and you, you 

187
00:09:47,360 --> 00:09:49,160
send a transaction that changes 
my encrypted balance. 

188
00:09:49,160 --> 00:09:52,000
Well, if that's still one, if 
that balance is just one piece 

189
00:09:52,000 --> 00:09:55,440
of data in in in the in the in 
the network database and you can

190
00:09:55,440 --> 00:09:58,800
see it change and therefore you 
can see the transaction graph. 

191
00:09:58,800 --> 00:10:01,080
You also need the entire state, 
right? 

192
00:10:01,080 --> 00:10:04,400
Because kind of like in an 
account model, you don't 

193
00:10:04,440 --> 00:10:07,760
actually have the account 
balance noted down anywhere. 

194
00:10:07,760 --> 00:10:10,920
Kind of like you actually have 
to walk through the entire 

195
00:10:11,520 --> 00:10:14,280
history of the state in order to
kind of arrive at. 

196
00:10:14,320 --> 00:10:16,240
You do but but in an account 
based model. 

197
00:10:16,240 --> 00:10:18,400
You stole in this in the state 
tree you do. 

198
00:10:18,400 --> 00:10:19,960
You do have like a state, a 
variable. 

199
00:10:20,080 --> 00:10:22,000
Yeah, a state tree will have 
your banners. 

200
00:10:22,000 --> 00:10:25,200
Finally, it might be tricky, 
but, and so when a transaction 

201
00:10:25,200 --> 00:10:27,080
changes that you can see that. 
And that's not OK if you're 

202
00:10:27,080 --> 00:10:29,160
private. 
So instead we have a, you know, 

203
00:10:29,320 --> 00:10:31,920
we have this, the model that 
that really Z Cash and Zerocoin 

204
00:10:31,960 --> 00:10:34,560
propagated where you have 
individual bits of state, 

205
00:10:34,560 --> 00:10:37,120
they're encrypted by an owner 
and they can be created or they 

206
00:10:37,120 --> 00:10:38,760
can be destroyed. 
And that's how you modify them. 

207
00:10:38,760 --> 00:10:40,720
You, you, you destroy it and 
then you create something new. 

208
00:10:41,040 --> 00:10:43,680
The reason why we do that is 
that the records have destroyed 

209
00:10:43,680 --> 00:10:46,240
notes and the records have 
created notes who use different 

210
00:10:46,240 --> 00:10:48,320
encryption algorithms for them. 
So you can't, so that an 

211
00:10:48,320 --> 00:10:51,360
observer can't link the 2. 
So if I destroy two of my notes,

212
00:10:51,440 --> 00:10:54,640
create 2 new notes, maybe one of
them is earned by you, one of 

213
00:10:54,640 --> 00:10:58,160
them is earned by me. 
Nobody, the everything observer 

214
00:10:58,160 --> 00:11:01,560
can see if they look at the 
network is that tune notes were 

215
00:11:01,560 --> 00:11:03,160
created, tune notes were 
destroyed, but they don't know 

216
00:11:03,160 --> 00:11:04,160
what they are. 
They don't know how they're 

217
00:11:04,160 --> 00:11:05,240
linked. 
Therefore it's private. 

218
00:11:05,560 --> 00:11:09,080
However, the problem there is, 
well, if that's private and it 

219
00:11:09,080 --> 00:11:13,280
was encrypted, how do you do 
global state, as in, you know, 

220
00:11:13,280 --> 00:11:16,480
take Unisop as a smart contract.
If you have an AMA liquidity 

221
00:11:16,480 --> 00:11:19,280
pool, well, you need to know 
what's in the liquidity pool so 

222
00:11:19,280 --> 00:11:23,440
that you can perform your 
liquidity calculations and like 

223
00:11:23,560 --> 00:11:25,280
a, an or a token which has a 
total supply. 

224
00:11:25,280 --> 00:11:27,440
How do you update that? 
If everything's owned by 

225
00:11:27,440 --> 00:11:30,000
somebody who holds, holds a 
description key? 

226
00:11:30,000 --> 00:11:32,720
You can do it via NBC. 
You can do it, which is very 

227
00:11:32,720 --> 00:11:36,240
challenging, or you can kind of 
skip the problem entirely by 

228
00:11:36,240 --> 00:11:38,840
having this hybrid statement 
where some information you can 

229
00:11:38,840 --> 00:11:40,720
make private and some 
information you can make public.

230
00:11:40,920 --> 00:11:44,200
So in this context, the simplest
way on asset to make an AMM is, 

231
00:11:44,200 --> 00:11:46,680
well, you make the AMM fully 
public. 

232
00:11:46,680 --> 00:11:49,320
So you can see that the, the 
token values going into the, 

233
00:11:49,320 --> 00:11:51,440
into the market. 
You can see the trades that are 

234
00:11:51,440 --> 00:11:57,120
happening, but you can't see the
identities of the of the 

235
00:11:57,120 --> 00:12:01,080
participants. 
So I could put some USDC into an

236
00:12:01,080 --> 00:12:05,520
AM, take out some ETH and people
can see what's the, the prices, 

237
00:12:05,760 --> 00:12:07,760
but they don't they can't, they 
don't know it was me in in many 

238
00:12:07,760 --> 00:12:10,000
ways, that kind of system can 
get you the best of both worlds 

239
00:12:10,000 --> 00:12:12,600
where you get privacy for the 
user, but transparency for the 

240
00:12:12,760 --> 00:12:15,080
protocol, which often can be 
very important to understand 

241
00:12:15,080 --> 00:12:17,800
that you're not, you've not 
been, you've not been cheated, 

242
00:12:17,800 --> 00:12:19,720
you've not been manipulated, but
you can. 

243
00:12:19,760 --> 00:12:21,920
Sorry, I'm rambling here a 
little bit, a little bit of 

244
00:12:21,920 --> 00:12:24,040
monologue. 
You know, with advanced NPC 

245
00:12:24,040 --> 00:12:26,120
shared state prematures like 
Tatsuya, which is present on 

246
00:12:26,120 --> 00:12:29,560
Aztec, you can create fully 
private contracts if you desire 

247
00:12:29,560 --> 00:12:32,600
it. 
It's just right now the the info

248
00:12:32,600 --> 00:12:35,600
to handle that is less built 
house than it will be in a 

249
00:12:35,600 --> 00:12:37,520
couple of years. 
I understand that there are 

250
00:12:37,720 --> 00:12:41,520
public contracts and there are 
fully private contracts. 

251
00:12:42,160 --> 00:12:46,280
Can I build something that's in 
between so kind of that I can 

252
00:12:46,280 --> 00:12:50,040
kind of share with a select 
group group of people, so kind 

253
00:12:50,040 --> 00:12:55,640
of like my own AMM pool that I 
only allow my besties to kind of

254
00:12:55,640 --> 00:12:59,000
trade on sort of thing the. 
Code for private contracts does 

255
00:12:59,000 --> 00:13:02,280
not have to be published if you.
You need the code if you're 

256
00:13:02,280 --> 00:13:05,840
going to send a transaction, but
it's not published by default. 

257
00:13:05,840 --> 00:13:11,560
So if you want, you can just 
share that code with a selected 

258
00:13:11,560 --> 00:13:13,760
group of people, have a 
whitelist so that you can 

259
00:13:13,760 --> 00:13:16,640
basically have this completely 
isolated suite of smart 

260
00:13:16,640 --> 00:13:18,960
contracts within the async 
network that nobody else knows 

261
00:13:18,960 --> 00:13:20,480
about. 
Can't remember if I did think 

262
00:13:20,480 --> 00:13:22,640
we've actually added it as a 
premise of your in our protocol,

263
00:13:22,640 --> 00:13:25,040
but it will happen in an update 
where you can encrypt smart 

264
00:13:25,040 --> 00:13:26,960
contracts so that you don't just
need the code, you need a 

265
00:13:26,960 --> 00:13:29,480
description key if you really 
want to go, go that that 

266
00:13:29,480 --> 00:13:31,200
direction. 
You can also have hybrid systems

267
00:13:31,200 --> 00:13:33,360
in another way where you can 
have a single smart contract 

268
00:13:33,360 --> 00:13:35,640
that has both public and private
functions. 

269
00:13:35,640 --> 00:13:39,200
So a canonical token contractors
like this where you can shield 

270
00:13:39,200 --> 00:13:41,040
tokens, but you can also 
unshield them and you can send 

271
00:13:41,040 --> 00:13:43,480
them, send them around publicly.
And if you want to go even 

272
00:13:43,480 --> 00:13:46,080
further, you could only share 
the private parts of your 

273
00:13:46,080 --> 00:13:48,480
contract with a select few 
people if you really wanted. 

274
00:13:48,480 --> 00:13:54,240
To, OK, walk me through, I mean,
so at the face of it's, it's 

275
00:13:54,240 --> 00:13:57,960
kind of like, it sounds very 
sensible, but kind of as an 

276
00:13:57,960 --> 00:14:02,600
engineer, it sounds tremendously
complicated to kind of construct

277
00:14:02,600 --> 00:14:06,200
something like this. 
Walk us through kind of the 

278
00:14:06,200 --> 00:14:10,000
challenges and the solutions 
that you found to them. 

279
00:14:10,000 --> 00:14:14,760
Oh. 
So many challenges because it's 

280
00:14:14,760 --> 00:14:17,000
it's not just the difficulties 
of building it, but also it's 

281
00:14:17,000 --> 00:14:20,160
creating abstraction layers that
allow building on it and for it 

282
00:14:20,160 --> 00:14:22,520
to be relatively easy and 
straightforward. 

283
00:14:22,840 --> 00:14:26,800
The goal is that for you know 
any web three engineer to be 

284
00:14:26,800 --> 00:14:28,800
able to to run into play smart 
contracts, you don't need to 

285
00:14:28,800 --> 00:14:32,000
know cryptography or weird, 
weird complicated semantics 

286
00:14:32,000 --> 00:14:34,400
around around privacy. 
I mean, I guess the very first 

287
00:14:34,400 --> 00:14:36,600
problem was just technological 
was then if you have private 

288
00:14:36,600 --> 00:14:38,560
transactions, then each 
transaction itself is a 0 

289
00:14:38,560 --> 00:14:41,360
knowledge proof. 
And so how do you make that 

290
00:14:41,360 --> 00:14:44,000
proof? 
Because you know, normally if 

291
00:14:44,000 --> 00:14:47,280
you look at things like the, the
Zexi paper and, and early 

292
00:14:47,280 --> 00:14:51,800
attempts at creating private 
transactions, they, they're very

293
00:14:51,800 --> 00:14:54,080
unintuitive to a developer or 
engineer. 

294
00:14:55,120 --> 00:14:57,600
The idea is there is that 
instead of having a, instead of 

295
00:14:57,600 --> 00:15:03,040
having code that modifies state,
you have state that is a that 

296
00:15:03,040 --> 00:15:05,440
comes attached with some code 
which defines how that state 

297
00:15:05,440 --> 00:15:06,720
variable is created or 
destroyed. 

298
00:15:07,160 --> 00:15:08,840
As you know how it used to, 
that's how it used to work. 

299
00:15:08,840 --> 00:15:12,560
And it's like it's, it's not 
intuitive, it's messy. 

300
00:15:12,880 --> 00:15:15,200
So we needed to take those 
models that that existed in the 

301
00:15:15,200 --> 00:15:17,160
literature that you could create
snark sectors for and actually 

302
00:15:17,160 --> 00:15:20,040
go, OK, no, no, no, we want 
contracts and those contracts 

303
00:15:20,040 --> 00:15:22,280
can call other contracts and, 
and these contracts can 

304
00:15:22,280 --> 00:15:24,200
manipulate a database of 
arbitrary state. 

305
00:15:24,200 --> 00:15:25,240
How do we do this? 
How do we do this? 

306
00:15:25,240 --> 00:15:27,400
So we had to, we had to come up 
with some very noble 

307
00:15:27,400 --> 00:15:31,120
cryptography to each and pull 
this off because if you have a 

308
00:15:31,120 --> 00:15:33,040
bunch of contracts all written 
by different people, they all 

309
00:15:33,040 --> 00:15:34,360
have different verification 
keys. 

310
00:15:34,600 --> 00:15:37,040
You basically one transaction 
that causes lots and lots of 

311
00:15:37,040 --> 00:15:39,360
contracts is effectively large 
numbers of 0 knowledge proofs 

312
00:15:39,360 --> 00:15:41,000
that need to be recursively 
composed together. 

313
00:15:41,000 --> 00:15:44,080
You need to hand like to handle 
large amounts of data transfer 

314
00:15:44,080 --> 00:15:46,280
between these zero knowledge 
proofs effectively. 

315
00:15:46,280 --> 00:15:49,000
You know, you've got algebraic 
circuits that you're trying to 

316
00:15:49,000 --> 00:15:53,120
pretend are iterative programs 
and, and, and creating a AZK 

317
00:15:53,120 --> 00:15:55,360
proving technology that can 
handle that is was very, very 

318
00:15:55,360 --> 00:15:57,160
challenging. 
But that was just the first step

319
00:15:57,160 --> 00:15:59,360
one. 
Then on top of that, you know, 

320
00:15:59,360 --> 00:16:01,400
we needed to cope with an Avi 
from scratch about how to 

321
00:16:01,400 --> 00:16:03,560
interpret this stuff. 
As in, you know, you have a you 

322
00:16:03,560 --> 00:16:05,960
have a private function call. 
It's got a bunch of public 

323
00:16:05,960 --> 00:16:07,600
inputs in New Zealand. 
Second, you need to interpret 

324
00:16:07,600 --> 00:16:10,040
this inputs according to some 
Avi so that your protocol level 

325
00:16:10,040 --> 00:16:12,240
circuits can figure out what to 
do. 

326
00:16:12,960 --> 00:16:15,920
We need to undertake to figure 
out how our state treats worked,

327
00:16:15,920 --> 00:16:18,360
you know, like even that was non
trivial. 

328
00:16:18,640 --> 00:16:20,440
How do you do events in an 
encrypted way? 

329
00:16:20,480 --> 00:16:22,560
How do you do state sharing 
efficiently? 

330
00:16:22,560 --> 00:16:27,240
So if I, you know, technologies 
like Zcash, I think they've made

331
00:16:27,240 --> 00:16:29,600
improvements recently, but back 
in the day, same with asked to 

332
00:16:29,600 --> 00:16:31,000
connect. 
If you wanted to sync to the 

333
00:16:31,000 --> 00:16:33,600
network, you need to, to 
download every single piece of 

334
00:16:33,600 --> 00:16:35,560
encrypted state and try to 
decrypt it yourself to see if 

335
00:16:35,560 --> 00:16:37,240
you owned it. 
That doesn't scale. 

336
00:16:37,560 --> 00:16:40,680
So how do you, how do you create
a, a world where I can send you 

337
00:16:40,680 --> 00:16:44,120
a, a note where that note 
doesn't necessarily represent 

338
00:16:44,120 --> 00:16:45,520
tokens. 
It represents arbitrary state in

339
00:16:45,520 --> 00:16:46,880
a smart contract. 
And you know that this has 

340
00:16:46,880 --> 00:16:50,200
happened and you can decrypt 
that information without having 

341
00:16:50,200 --> 00:16:53,400
to sync to the entire network 
again like that. 

342
00:16:53,400 --> 00:16:57,560
That's that's an open problem. 
It's until we have much more 

343
00:16:57,560 --> 00:16:59,960
advanced FHE solutions. 
There's always a trade off there

344
00:16:59,960 --> 00:17:03,160
in terms of privacy. 
So it's figuring out where where

345
00:17:03,160 --> 00:17:04,560
to go on that trade off was very
challenging. 

346
00:17:05,599 --> 00:17:08,200
Yeah, this is the start of it. 
You know, then there's how do 

347
00:17:08,720 --> 00:17:11,079
you even even basic things not 
associated with privacy, like 

348
00:17:11,079 --> 00:17:13,480
how do you decentralize an L2 
network? 

349
00:17:14,000 --> 00:17:16,880
That's actually, there's not a 
huge amount of work on that in 

350
00:17:16,880 --> 00:17:18,920
the public domain. 
We had to figure out all of that

351
00:17:18,920 --> 00:17:20,520
ourselves. 
You know, eventually we even 

352
00:17:20,520 --> 00:17:22,920
realized for our particular 
needs, we needed to build in a 

353
00:17:22,920 --> 00:17:27,200
very small data variability 
network into our layer 2 to in 

354
00:17:27,200 --> 00:17:29,400
order to secure certain light 
risk guarantees. 

355
00:17:29,400 --> 00:17:30,720
Yeah, it's, it's been very 
challenging. 

356
00:17:30,800 --> 00:17:32,560
There's a reason it's taken us 
so long to build this. 

357
00:17:33,880 --> 00:17:36,880
One thing that kind of we 
haven't yet touched on or you 

358
00:17:36,880 --> 00:17:42,240
very briefly kind of glossed 
over just now is that not only 

359
00:17:42,440 --> 00:17:46,320
kind of didn't did you not want 
to make compromises in the 

360
00:17:46,320 --> 00:17:50,320
privacy RAM? 
You also told me back kind of 

361
00:17:50,320 --> 00:17:53,840
like when I last said you on 
you're not going to launch this 

362
00:17:53,840 --> 00:17:56,800
thing without decentralization, 
right? 

363
00:17:56,800 --> 00:17:59,440
Kind of like you want to 
decentralize sequencer and and 

364
00:17:59,440 --> 00:18:03,240
proofers, even if you kind of 
look at L2 beat now, even the 

365
00:18:03,240 --> 00:18:08,280
non encrypted L twos haven't 
come a very long way there, 

366
00:18:08,440 --> 00:18:10,720
right? 
So tell us what you learned on 

367
00:18:10,720 --> 00:18:11,960
that. 
Again, it's all about 

368
00:18:11,960 --> 00:18:13,640
fundamental incentives. 
You know, we're not doing this 

369
00:18:13,800 --> 00:18:16,240
out of some moral crusade. 
We do it decentralized because 

370
00:18:16,240 --> 00:18:18,160
we need to be. 
For the same reason why if you 

371
00:18:18,160 --> 00:18:21,560
take the Internet and HTTPS, you
know, where now all, all 

372
00:18:21,560 --> 00:18:24,840
requests to, to, to, to website,
to a server, they're all made 

373
00:18:24,840 --> 00:18:26,480
encrypted. 
They're all encrypted. 

374
00:18:26,480 --> 00:18:28,960
The responses are encrypted if 
all that traffic flow through 

375
00:18:28,960 --> 00:18:32,440
one company and one company's 
servers, they would be the most 

376
00:18:32,720 --> 00:18:35,480
over regulated company in 
existence. 

377
00:18:35,840 --> 00:18:38,320
You know because everybody every
every government agency we go to

378
00:18:38,320 --> 00:18:40,400
them going hello, I would like 
all your information please and 

379
00:18:40,400 --> 00:18:42,960
thank you the Easter cryptador 
the same reason for Aztec we 

380
00:18:42,960 --> 00:18:45,480
can't be centralized not without
we'd have to build in a backdoor

381
00:18:45,480 --> 00:18:47,160
and we don't want to build in a 
backdoor Backdoors are really 

382
00:18:47,160 --> 00:18:49,400
bad. 
So we need to be decentralized 

383
00:18:49,680 --> 00:18:52,800
where it is a genuine 
distributed network made-up of 

384
00:18:53,040 --> 00:18:55,960
thousands of different 
participants that that are all 

385
00:18:56,000 --> 00:18:57,880
collaboratively participating in
this network. 

386
00:18:57,880 --> 00:19:00,600
And so one of the few networks 
that generally has an incentive 

387
00:19:00,600 --> 00:19:03,480
to to decentralize most layer 
twos. 

388
00:19:03,480 --> 00:19:05,840
Decentralization is actually 
corrosive to their interests, 

389
00:19:05,840 --> 00:19:10,040
because if you're an EVM, either
AZK one or an optimistic one, 

390
00:19:10,080 --> 00:19:14,400
your unique value proposition is
price and throughput and 

391
00:19:14,400 --> 00:19:16,320
latency. 
Basically cheap transactions, 

392
00:19:16,520 --> 00:19:21,200
lots of them, instantly. 
I would, I would kind of, I 

393
00:19:21,200 --> 00:19:24,560
would contest that. 
I think so kind of in kind of 

394
00:19:24,760 --> 00:19:29,640
because in the failure case that
kind of kind of like someone, 

395
00:19:29,640 --> 00:19:33,200
God forbid compromise the one 
multi sick that you kind of use 

396
00:19:33,200 --> 00:19:38,680
to kind of govern URL to kind of
all that value that's kind of 

397
00:19:38,680 --> 00:19:42,400
protected and there's is 
potentially gone right you're. 

398
00:19:42,600 --> 00:19:45,400
Talking about security, which is
not a value proposition. 

399
00:19:45,400 --> 00:19:48,600
It's it's basically it's a 
protective technology and to be 

400
00:19:48,600 --> 00:19:51,040
very cynical from it, if you 
look into traditional Web 2, 

401
00:19:51,040 --> 00:19:55,480
traditional software, how often 
do companies invest in better 

402
00:19:55,480 --> 00:19:57,200
security? 
Like not, not Barry, if you can 

403
00:19:57,200 --> 00:19:59,600
spend money to make money or you
can spend money to potentially 

404
00:19:59,600 --> 00:20:02,080
not lose money in the future, 
You know, the, the, the monkey 

405
00:20:02,080 --> 00:20:04,920
brain goes, we make the money. 
We don't, we don't, we don't 

406
00:20:04,920 --> 00:20:06,720
protect our, we don't protect 
the future. 

407
00:20:06,720 --> 00:20:07,920
I'm not saying we have this 
culture. 

408
00:20:08,000 --> 00:20:09,480
I'm just saying that this is 
very common. 

409
00:20:09,480 --> 00:20:11,680
So, but you're right that there 
is there is a desire to 

410
00:20:11,680 --> 00:20:13,880
decentralize for that security 
reason, but it's but it's 

411
00:20:13,880 --> 00:20:16,320
corrosive to the bottom line 
for. 100%, yeah. 

412
00:20:16,560 --> 00:20:19,600
I mean, basically best, best 
business models being AWS, yeah.

413
00:20:22,720 --> 00:20:25,360
Yeah, how do you centralized are
you if all your decentralized 

414
00:20:25,360 --> 00:20:28,680
nodes are running on AWS, this 
is a genuine thing we it's 

415
00:20:28,680 --> 00:20:31,160
covering and wrestling with but 
yeah like you know if you're at 

416
00:20:31,160 --> 00:20:34,400
ZKL 2, decentralizing makes your
costs go up, right? 

417
00:20:34,400 --> 00:20:37,200
Your transaction latency 
increases your the throughput 

418
00:20:37,200 --> 00:20:39,800
like the network throughput 
decreases, the GPS low goes down

419
00:20:39,800 --> 00:20:41,920
and so there's really low design
to actually make it happen 

420
00:20:41,920 --> 00:20:44,000
whereas for us, we need to make 
it happen. 

421
00:20:44,000 --> 00:20:46,760
We can't survive without it. 
And so we discovered a few 

422
00:20:46,760 --> 00:20:50,600
things like even our it's 
protocol to select sequences is 

423
00:20:50,600 --> 00:20:52,400
somewhat novel. 
You know, there wasn't anything 

424
00:20:52,400 --> 00:20:54,600
off the shuffle that we could 
take and you'd think you'd do 

425
00:20:54,600 --> 00:20:55,560
that wouldn't be figured out by 
now. 

426
00:20:55,560 --> 00:20:58,600
You know, you've got, you have a
bunch of LL people who want to 

427
00:20:58,680 --> 00:21:01,960
produce blocks on an L2. 
They're sticking on L1. 

428
00:21:02,000 --> 00:21:05,280
You know how they selected you 
do that, get sorted, but it's 

429
00:21:05,280 --> 00:21:08,000
not well, there's many, there's 
many different views. 

430
00:21:08,000 --> 00:21:09,880
Then there's just, you know, 
we've had to do a lot of work on

431
00:21:09,880 --> 00:21:12,320
the peer-to-peer networking 
side, which again, it's a bit 

432
00:21:12,320 --> 00:21:13,880
surprising we couldn't use 
anything completely 

433
00:21:13,880 --> 00:21:15,440
out-of-the-box, which do a lot 
ourselves. 

434
00:21:15,800 --> 00:21:18,280
But the, the most interesting 
one for us was a unique 

435
00:21:18,280 --> 00:21:21,080
characteristic of a stick, which
is that ASIC transactions, an 

436
00:21:21,080 --> 00:21:23,520
individual user transaction 
contains within A to 0 knowledge

437
00:21:23,520 --> 00:21:25,800
proof, right? 
You have your, your, your 

438
00:21:25,800 --> 00:21:28,280
transaction data, which 
describes what you want to do, 

439
00:21:28,640 --> 00:21:30,560
which will it'll be encrypted, 
but that's, it's fundamentally 

440
00:21:30,560 --> 00:21:32,240
still there. 
But then you have the proof that

441
00:21:32,240 --> 00:21:34,560
comes along with it going, my 
state transitions are all 

442
00:21:34,600 --> 00:21:35,760
correct. 
I've followed the rules of your 

443
00:21:35,760 --> 00:21:38,880
critical and in our roll up 
blocks, we effectively swallow 

444
00:21:38,880 --> 00:21:41,800
that proof data, right. 
If if you're making a proof of a

445
00:21:42,240 --> 00:21:45,760
Aztec block, you are inside your
ZPA circuit, you're verifying 

446
00:21:45,760 --> 00:21:47,840
all of the individual 
transaction proofs, which means 

447
00:21:47,840 --> 00:21:50,400
when you publish the roll up 
block, you don't need the proofs

448
00:21:50,400 --> 00:21:53,160
anymore, but you need the proofs
to make the block to make the 

449
00:21:53,160 --> 00:21:55,760
block proof. 
And we had this dilemma because 

450
00:21:55,760 --> 00:21:59,320
we did not want to publish the 
the transaction proof data onto 

451
00:21:59,320 --> 00:22:02,160
L1 because it's, it's large and 
that's expensive. 

452
00:22:02,560 --> 00:22:06,720
And I'm thinking, well, we don't
need to publish it if every 

453
00:22:06,720 --> 00:22:09,000
block comes with proof. 
The only challenge is you need, 

454
00:22:09,000 --> 00:22:11,480
you need your prover. 
So, so you have a statistic to 

455
00:22:11,480 --> 00:22:13,160
read block producers and block 
prover's right, The block 

456
00:22:13,160 --> 00:22:15,040
producers are making the block. 
If they're not publishing the, 

457
00:22:15,200 --> 00:22:18,000
the user transaction data onto 
L1, you need to guarantee that 

458
00:22:18,000 --> 00:22:22,400
data exists for about 20 minutes
so that a block prover can still

459
00:22:22,480 --> 00:22:25,200
make that block. 
And so we're like, oh, oh God, 

460
00:22:25,200 --> 00:22:27,200
we need, we need ADA layer to 
make this happen. 

461
00:22:27,200 --> 00:22:28,600
Like we need a 20 minute DA 
layer. 

462
00:22:29,360 --> 00:22:30,680
It's not the most impressive 
thing in the world. 

463
00:22:31,160 --> 00:22:33,560
It uses some basic economic 
consensus, but we had to build 

464
00:22:33,560 --> 00:22:36,160
that out to to make our L2A 
reality, and that was an 

465
00:22:36,160 --> 00:22:38,000
interesting detour we weren't 
expecting. 

466
00:22:38,840 --> 00:22:42,600
So what we've kind of tried to 
cover and mostly glossed over 

467
00:22:42,600 --> 00:22:46,320
because there's a lot of it is 
incredibly high level, right? 

468
00:22:46,320 --> 00:22:49,320
So kind of maybe let's kind of 
take it down to notches. 

469
00:22:49,320 --> 00:22:54,520
So imagine I'm an entrepreneur 
building on Aztec. 

470
00:22:55,160 --> 00:22:59,520
So what choices do I have to 
make that differ from building 

471
00:22:59,520 --> 00:23:04,600
on a more standard roll up like 
Base or Arbitrum? 

472
00:23:04,600 --> 00:23:05,760
Yeah. 
So if you're building on Aztec, 

473
00:23:05,840 --> 00:23:08,400
I think there's going to be an 
assumption that you desire some 

474
00:23:08,400 --> 00:23:11,520
kind of privacy in your app or 
you want to interact with 

475
00:23:11,520 --> 00:23:13,200
private accounts. 
What different choices are you 

476
00:23:13,200 --> 00:23:15,520
going to make? 
Well, we do have to learn a 

477
00:23:15,560 --> 00:23:17,800
different programming language 
in a different technical stack. 

478
00:23:17,800 --> 00:23:22,560
We figured the the semantics 
around privacy on a blockchain 

479
00:23:22,560 --> 00:23:27,080
are sufficiently, I think that 
we needed to go the route of 

480
00:23:27,120 --> 00:23:29,840
creating our own language to 
make it to basic so that we 

481
00:23:29,840 --> 00:23:31,760
could create the abstraction 
layers that we thought would be 

482
00:23:31,760 --> 00:23:34,760
appropriate to, to minimize the 
complexities of this. 

483
00:23:35,080 --> 00:23:39,840
It's called Noir and it's, it's 
basically it's heavily inspired 

484
00:23:39,840 --> 00:23:42,880
by Rust. 
So if you know Rust, it'll be 

485
00:23:42,880 --> 00:23:44,640
very intuitive. 
If you don't know Rust, it's 

486
00:23:44,640 --> 00:23:45,920
still pretty, it's still easy to
pick up. 

487
00:23:45,920 --> 00:23:48,880
You know, it's, it's, it's like 
a any, any low level programming

488
00:23:48,880 --> 00:23:50,720
language. 
There's going to be a certain 

489
00:23:51,320 --> 00:23:54,320
custom well, as I said, 
semantics keywords that you have

490
00:23:54,320 --> 00:23:58,080
to learn in terms of, you know, 
how this how status, how to how 

491
00:23:58,080 --> 00:24:00,000
to create the state right 
storage slots, how to how to how

492
00:24:00,000 --> 00:24:02,560
to manipulate them when a 
particular when it comes to 

493
00:24:02,560 --> 00:24:04,720
private stuff. 
But you know our docs are 

494
00:24:04,720 --> 00:24:07,000
constantly improving. 
I think hopefully by the time 

495
00:24:07,000 --> 00:24:09,560
that this is broadcast, they'll 
be our latest docs will be, 

496
00:24:09,840 --> 00:24:11,400
we're going through a 
documentation revamp, so 

497
00:24:11,400 --> 00:24:12,680
hopefully it'll be done by then.
Yeah. 

498
00:24:12,680 --> 00:24:16,080
So, so, you know, but the, the 
forms of what you're doing 

499
00:24:16,080 --> 00:24:18,560
should be very familiar. 
You know, there is a node that 

500
00:24:18,560 --> 00:24:20,600
you can install to send 
transactions to. 

501
00:24:20,600 --> 00:24:23,560
That node has an API that you 
can interact with. 

502
00:24:24,400 --> 00:24:26,480
You know, you can write 
contracts and there's contracts,

503
00:24:26,520 --> 00:24:29,920
you can define an API that's 
your node uses to get data and 

504
00:24:29,920 --> 00:24:33,160
you can connect this all to you.
Can I communicate all of this 

505
00:24:33,160 --> 00:24:35,840
with a JavaScript wrapper if you
want, so that you can write a 

506
00:24:35,840 --> 00:24:38,600
web application. 
So the, the, the, the forms of 

507
00:24:38,600 --> 00:24:41,280
it all are very similar. 
The the details will be slightly

508
00:24:41,280 --> 00:24:43,920
different because the, the state
model is different. 

509
00:24:43,920 --> 00:24:46,360
You know, like we have public 
and private keywords in our 

510
00:24:46,360 --> 00:24:49,240
contracts, which mean they're 
not visibility specifiers like 

511
00:24:49,240 --> 00:24:50,760
normal in a regular programming 
language. 

512
00:24:50,760 --> 00:24:53,240
They really mean like this. 
This can be, this can be seen by

513
00:24:53,240 --> 00:24:55,160
the by observers, or it can't be
seen. 

514
00:24:55,920 --> 00:24:57,640
And then, you know, these cut 
functions can call other 

515
00:24:57,640 --> 00:25:00,240
functions and you commit events.
You can, you know, do do all the

516
00:25:00,240 --> 00:25:02,840
similar stuff you you expect 
from a contract ecosystem. 

517
00:25:02,840 --> 00:25:05,160
This is a few more, a few more 
keywords that you have to think 

518
00:25:05,160 --> 00:25:06,880
about because of the public, 
private thing. 

519
00:25:07,080 --> 00:25:09,000
OK. 
But so kind of the way that I 

520
00:25:09,000 --> 00:25:14,680
should think about contracts and
gas and wallets and user 

521
00:25:14,680 --> 00:25:17,760
interactions and so on, that 
doesn't really change. 

522
00:25:18,160 --> 00:25:19,320
That doesn't change at all, 
okay. 

523
00:25:19,320 --> 00:25:21,880
It's all the same. 
We have Delta gas, recall it's a

524
00:25:22,000 --> 00:25:25,200
the juice. 
Yeah, we have wallets in 

525
00:25:25,200 --> 00:25:27,600
production. 
The idea is to basically mirror 

526
00:25:27,840 --> 00:25:30,280
all of the concepts one would be
familiar with already in Web 3. 

527
00:25:30,320 --> 00:25:35,360
Seeing that kind of I have to 
learn a new contract language 

528
00:25:35,360 --> 00:25:37,320
that doesn't particularly dawn 
me. 

529
00:25:37,320 --> 00:25:40,040
So I'm a physicist by training, 
which means kind of I'm a 

530
00:25:40,040 --> 00:25:43,040
terrible programmer, but I'm a 
terrible programmer in many 

531
00:25:43,040 --> 00:25:46,960
languages so that I'm I'm not 
put up, put off by this. 

532
00:25:46,960 --> 00:25:51,960
What kind of application do you 
think it would make sense for me

533
00:25:51,960 --> 00:25:55,560
to build first? 
So kind of which ones do you see

534
00:25:55,560 --> 00:26:01,480
where kind of privacy is 
actually a cool feature rather 

535
00:26:01,480 --> 00:26:04,200
than an afterthought and kind of
I think what, what I'd like to 

536
00:26:04,200 --> 00:26:06,040
talk about next is kind of 
performance. 

537
00:26:06,040 --> 00:26:08,800
So kind of like the trade-offs 
you kind of make for this. 

538
00:26:09,120 --> 00:26:12,200
So yeah, I'm I'm also I'm also 
an ex physicist so I can relate.

539
00:26:12,840 --> 00:26:15,840
Hopefully over the years I've 
become better at certain briga. 

540
00:26:15,960 --> 00:26:19,120
Maybe when licensing it cope for
Aztec. 

541
00:26:19,480 --> 00:26:21,320
What do you mean I can't do this
in Python? 

542
00:26:21,560 --> 00:26:27,000
Can do everything in Python. 
Yeah, well, my case. 

543
00:26:27,040 --> 00:26:27,840
Fortran. 
Oh my God. 

544
00:26:29,640 --> 00:26:31,080
You don't look old enough for 
this. 

545
00:26:31,440 --> 00:26:33,960
OK this. 
Is going to be kind of 

546
00:26:33,960 --> 00:26:35,320
backwards, you know? 
This is true. 

547
00:26:35,400 --> 00:26:37,320
This is true. 
We can be very backwards. 

548
00:26:37,320 --> 00:26:40,600
The applications that make sense
are varied, but generally they 

549
00:26:40,600 --> 00:26:43,800
will revolve around two things. 
Either you will need an 

550
00:26:43,800 --> 00:26:46,200
understanding of a person's 
identity that requires 

551
00:26:46,200 --> 00:26:50,000
disclosure of sensitive 
information, or you want to more

552
00:26:50,000 --> 00:26:52,200
broadly, you, you, you want to 
create an application that's 

553
00:26:52,280 --> 00:26:54,400
based around information 
asymmetries. 

554
00:26:54,400 --> 00:26:56,800
You want an application where 
you're interacting with somebody

555
00:26:56,800 --> 00:27:00,280
at that, like a counterparty and
your counterpart in this stuff 

556
00:27:00,280 --> 00:27:02,400
you don't and you know, stuff 
your counterparty doesn't and 

557
00:27:02,400 --> 00:27:04,560
you don't want to disclose it. 
I know that's very vague. 

558
00:27:04,560 --> 00:27:06,800
One of the some of the low 
hanging fruit for that is games.

559
00:27:06,800 --> 00:27:11,720
To give an example, the original
breakout NFT from 2018, I think 

560
00:27:11,720 --> 00:27:14,800
was Crypto Kitties, which was 
all about, you know, you have 

561
00:27:14,800 --> 00:27:16,680
these cats and you can breed 
them. 

562
00:27:16,680 --> 00:27:19,360
You can combine other cats to 
great new cats with different 

563
00:27:19,440 --> 00:27:21,840
traits. 
And back then what they relied 

564
00:27:21,840 --> 00:27:23,880
on was code obfuscation. 
Basically, they didn't publish 

565
00:27:23,880 --> 00:27:27,560
their source code and so it was 
hard to figure out ahead of time

566
00:27:27,560 --> 00:27:30,600
what how to breed cats get the 
optimal side effects. 

567
00:27:31,000 --> 00:27:33,560
Nowadays that won't work. 
That kind of stuff gets 

568
00:27:33,560 --> 00:27:36,080
instantly reversed engineered 
because the overall skill level 

569
00:27:36,080 --> 00:27:38,880
is much higher. 
But you could use privacy to 

570
00:27:39,560 --> 00:27:41,200
actually make sure that you 
couldn't. 

571
00:27:41,400 --> 00:27:43,080
You could. 
You could use things like 

572
00:27:43,080 --> 00:27:46,480
Randall and some randomness to 
to basically make it so that 

573
00:27:46,920 --> 00:27:50,000
only at the conclusion of your 
transaction, when you understand

574
00:27:50,000 --> 00:27:52,640
exactly what traits you're 
getting, what algorithm was run.

575
00:27:52,680 --> 00:27:54,080
I, I like where you're going 
with this. 

576
00:27:54,080 --> 00:27:57,120
So kind of like when I ask you, 
So what do you think is the most

577
00:27:57,120 --> 00:28:00,960
pressing application to, to put 
it on top of this? 

578
00:28:01,280 --> 00:28:05,440
Oh, but we can, we can write, we
can, we can, we can breed 

579
00:28:05,680 --> 00:28:07,960
private. 
This is fantastic. 

580
00:28:07,960 --> 00:28:09,760
Did not say most. 
Pressing sorry, sorry. 

581
00:28:10,160 --> 00:28:12,160
Is this going to solve all the 
society's problems? 

582
00:28:12,160 --> 00:28:16,960
Absolutely. 
Yeah, it's relevance and and 

583
00:28:17,000 --> 00:28:19,560
this will be, there's no demand 
for that kind of thing on chain.

584
00:28:20,480 --> 00:28:23,120
No, I think I think kind of like
games in principle, kind of like

585
00:28:23,120 --> 00:28:25,040
old school games. 
I think they're actually pretty 

586
00:28:25,040 --> 00:28:27,920
good examples because they 
actually use very little state. 

587
00:28:27,920 --> 00:28:30,520
I kind of like if you look at 
kind of like these 80s arcade 

588
00:28:30,520 --> 00:28:32,960
games, kind of like they're 
tiny. 

589
00:28:33,640 --> 00:28:38,000
So kind of running them in this 
kind of environment, kind of I, 

590
00:28:38,000 --> 00:28:39,600
I totally see where you're 
coming from. 

591
00:28:39,720 --> 00:28:43,040
More more useful stuff would be 
for web free native utility 

592
00:28:43,560 --> 00:28:46,760
would be some basic identity 
protocols to protect against 

593
00:28:46,760 --> 00:28:48,840
civil to make for civil 
resistance. 

594
00:28:48,840 --> 00:28:53,520
Basically prove a uniqueness so 
that you can do things like air 

595
00:28:53,520 --> 00:28:57,560
drops that can't be, you know, 
farmed by somebody pretend to be

596
00:28:57,600 --> 00:29:00,640
1000 different people. 
Or if you want to do a sale of 

597
00:29:00,760 --> 00:29:03,040
tokens, for example, and you 
want to ensure that it's only 

598
00:29:03,040 --> 00:29:05,800
one person coming purchase or 
governance. 

599
00:29:05,800 --> 00:29:08,720
So let's say you want to do a 
vote on the Dow, but you want to

600
00:29:08,720 --> 00:29:11,920
use quadratic voting where the 
more tokens you have, like the 

601
00:29:11,920 --> 00:29:15,440
less some marginal like voting 
power of your additional tokens.

602
00:29:15,840 --> 00:29:18,080
There you again, you need some 
versus you need to ensure that 

603
00:29:18,080 --> 00:29:21,880
one voter like that Kelly Devet 
wants instead of pretending to 

604
00:29:21,880 --> 00:29:24,360
be 100 different people with 
smaller imbalances because then 

605
00:29:24,440 --> 00:29:26,280
because otherwise you can gain 
quadratic voting. 

606
00:29:26,280 --> 00:29:28,920
And so civil protection, basic 
identity protocols, I think will

607
00:29:28,920 --> 00:29:31,400
be very, very valuable things 
like Zika passport, then that 

608
00:29:31,400 --> 00:29:35,840
can be expanded to do finance 
that is existing in in regulated

609
00:29:35,840 --> 00:29:37,720
spaces. 
So if you need to prove 

610
00:29:37,720 --> 00:29:40,160
somebody's not on a sanctions 
list, for example, or maybe you 

611
00:29:40,160 --> 00:29:42,720
need to approved transaction 
limits so that somebody is not 

612
00:29:42,720 --> 00:29:48,040
transacted like above a certain 
thresholds in a time period or 

613
00:29:48,040 --> 00:29:50,240
you need to know that somebody's
residence in a certain country. 

614
00:29:50,240 --> 00:29:53,520
Things like that, where you can 
basically add in identity 

615
00:29:53,520 --> 00:29:56,760
credentials to build out D5 
protocols that interact with 

616
00:29:57,080 --> 00:29:59,080
assets that are more originating
in the real world. 

617
00:29:59,120 --> 00:30:02,480
And again, I think this is also 
one of the reasons why the one 

618
00:30:02,480 --> 00:30:04,920
of the original use cases of 
NFTS didn't take off NFTS 

619
00:30:04,920 --> 00:30:06,680
originally. 
People were like, why is this 

620
00:30:06,680 --> 00:30:10,160
for tickets? 
You know, because decade master 

621
00:30:10,160 --> 00:30:13,560
is is charges very high fees to 
get technicians to attack. 

622
00:30:13,560 --> 00:30:15,000
It's like, why can't I get rid 
of them? 

623
00:30:15,000 --> 00:30:19,480
Well, because one of the reasons
is that to make that work, you 

624
00:30:19,480 --> 00:30:22,080
need to link an identity to a 
cryptocurrency accounts in a 

625
00:30:22,080 --> 00:30:24,040
transparent world. 
If you have identity protocols, 

626
00:30:24,040 --> 00:30:25,960
that's no other such a 
challenging. 

627
00:30:25,960 --> 00:30:29,040
Thing to do. 
I 100% concur that that would be

628
00:30:29,040 --> 00:30:33,120
incredibly useful and kind of 
like barring kind of like all 

629
00:30:34,320 --> 00:30:38,680
potential attributes of your 
person to kind of like who 

630
00:30:38,680 --> 00:30:42,560
whoever kind of like you want to
buy bottle of wine from 

631
00:30:42,800 --> 00:30:47,440
obviously doesn't make sense. 
But if you look at the way that 

632
00:30:47,440 --> 00:30:52,960
these regulations are drafted 
and typically proving that you 

633
00:30:52,960 --> 00:30:57,280
are above 18 doesn't cut it. 
So typically you kind of 

634
00:30:57,280 --> 00:31:02,360
actually as the person selling 
the bottle of wine, you actually

635
00:31:02,360 --> 00:31:06,640
have to have some sort of copy. 
So how do you how do you get 

636
00:31:06,640 --> 00:31:07,280
around that? 
Well. 

637
00:31:08,200 --> 00:31:11,480
A couple of things here. 
First of all, there's very, 

638
00:31:11,480 --> 00:31:14,080
there's, there's a lot of value 
in adding identity to things 

639
00:31:14,080 --> 00:31:16,360
that are not, it's for 
functionality, not regulatory 

640
00:31:16,920 --> 00:31:19,200
clients, things like, you know, 
civil resistance for air drops. 

641
00:31:19,240 --> 00:31:21,400
Then there's basically there's, 
I think the more, the more 

642
00:31:21,400 --> 00:31:25,680
mainstream your use case, the 
more unnecessarily regulated it 

643
00:31:25,680 --> 00:31:27,760
becomes. 
To be fair, like, you know, 

644
00:31:27,760 --> 00:31:30,040
these regulations were not 
drafted by people that 

645
00:31:30,040 --> 00:31:31,680
understand that knew about 0 
knowledge proofs. 

646
00:31:32,280 --> 00:31:35,760
So the idea, you know, when 
people were drafting here, like 

647
00:31:36,320 --> 00:31:39,520
proof of age laws, you know, God
knows when 1950s, right? 

648
00:31:39,520 --> 00:31:43,040
Like the idea that you could 
prove your age without seeing 

649
00:31:43,160 --> 00:31:46,120
like I, I as I, as I, me, I'm 
selling wine. 

650
00:31:46,120 --> 00:31:48,400
I know somebody's 18 without 
actually seeing some identity 

651
00:31:48,400 --> 00:31:49,600
that was just inconceivable to 
them. 

652
00:31:50,080 --> 00:31:53,120
So I do think there's a, you 
know, there's some active 

653
00:31:53,120 --> 00:31:56,200
accuracy work that we're doing. 
I do think that legislators, 

654
00:31:56,200 --> 00:31:59,160
politicians are, they are 
actually like becoming more 

655
00:31:59,160 --> 00:32:01,880
aware of 0 knowledge proofs and 
that this will change. 

656
00:32:02,320 --> 00:32:04,240
I do think there's plenty of 
regulations that are actually 

657
00:32:04,240 --> 00:32:06,200
very amenable to 0 knowledge 
proofs already. 

658
00:32:06,200 --> 00:32:10,280
Things like using ZK passport a 
particular passport proofs 

659
00:32:10,280 --> 00:32:15,120
because E passports already 
thing there's already precedent 

660
00:32:15,120 --> 00:32:17,320
that that for them to be used 
and things like passport gates 

661
00:32:17,600 --> 00:32:20,280
that's there's already a well 
established understanding that 

662
00:32:20,280 --> 00:32:22,000
these are very strong 
credentials. 

663
00:32:22,400 --> 00:32:25,480
You also have a lot of precedent
from the document signing worlds

664
00:32:25,480 --> 00:32:28,760
where digital signatures on 
documents can be as good as the 

665
00:32:28,760 --> 00:32:31,040
real thing as you can start. 
You can kind of combine these 

666
00:32:31,040 --> 00:32:33,720
precedents to make claims that 
some of these on check that some

667
00:32:33,720 --> 00:32:36,760
of these ZK based identity 
solutions are good enough 

668
00:32:37,720 --> 00:32:38,160
obviously. 
Yeah. 

669
00:32:38,160 --> 00:32:42,360
I mean, if DocuSign can kind of 
check that box, then obviously I

670
00:32:42,360 --> 00:32:46,440
mean kind of like that there was
some, some impressive lobbying 

671
00:32:46,440 --> 00:32:51,080
going on there to kind of make 
anyone, anyone agree that this 

672
00:32:51,080 --> 00:32:53,880
is kind of definitely the same 
thing as signing something in 

673
00:32:53,880 --> 00:32:56,640
wet ink like clicking, yes, this
is my name. 

674
00:32:56,720 --> 00:32:58,720
Yeah, I think, I mean different 
jurisdictions will progress at 

675
00:32:58,720 --> 00:33:01,280
different speeds. 
You know, for example, the US is

676
00:33:01,280 --> 00:33:04,200
already in the in the presence 
of passing several crypto 

677
00:33:04,200 --> 00:33:07,600
regulations, the DDS acts, 
there's the Crypto Markets Act. 

678
00:33:08,200 --> 00:33:09,640
It's got a fancy name, a cover 
for what it is. 

679
00:33:09,640 --> 00:33:12,680
Europe will be much slower to to
be very blunt, we're not really 

680
00:33:12,760 --> 00:33:14,720
like. 
We are always as slow if. 

681
00:33:15,000 --> 00:33:16,960
You want to do some advanced 
enterprise privacy stuff. 

682
00:33:17,320 --> 00:33:20,280
We're not talking with the 
people right now because Europe 

683
00:33:20,280 --> 00:33:22,240
will be very slow. 
Nevertheless, there is value 

684
00:33:22,240 --> 00:33:23,720
there, there, there, there's 
that you can. 

685
00:33:23,840 --> 00:33:25,960
There's some things you can do 
within the existing frameworks, 

686
00:33:25,960 --> 00:33:27,840
but really it's America's taking
the lead. 

687
00:33:27,840 --> 00:33:30,200
There was an opportunity for 
other countries to take 

688
00:33:30,200 --> 00:33:33,880
advantage of America's 
conservatism under the Biden 

689
00:33:33,880 --> 00:33:36,200
administration, my country among
them. 

690
00:33:36,200 --> 00:33:39,400
There are many voices advocating
for what could be done and the 

691
00:33:39,400 --> 00:33:42,920
value that can be generated and 
and so now these countries will 

692
00:33:42,920 --> 00:33:45,320
pay like will deal with the 
consequences of inaction. 

693
00:33:45,480 --> 00:33:49,800
The the economic central gravity
of crypto will be America, and 

694
00:33:49,800 --> 00:33:52,520
that's just the way it is. 
Tell me about the performance 

695
00:33:52,520 --> 00:33:55,600
trade-offs for programmable 
privacy. 

696
00:33:55,600 --> 00:34:02,320
So it's kind of like what's the 
bottleneck right now for 

697
00:34:02,320 --> 00:34:05,800
performance? 
Is it is it the proving or what 

698
00:34:05,800 --> 00:34:10,280
kind of constraints me? 
Trimming is Trimming is more the

699
00:34:10,280 --> 00:34:12,320
user experience bottleneck than 
the performance bottleneck 

700
00:34:12,320 --> 00:34:15,520
because your user makes the 
proof and then they send it to 

701
00:34:15,520 --> 00:34:17,440
the network. 
But the when it comes to 

702
00:34:17,440 --> 00:34:19,679
transaction throughputs, the 
amount of time it takes for the 

703
00:34:19,679 --> 00:34:21,440
user to make the proof doesn't 
really matter because you can 

704
00:34:22,480 --> 00:34:24,280
you can have large numbers of 
people making increase at the 

705
00:34:24,280 --> 00:34:25,800
same time for network 
throughputs. 

706
00:34:26,679 --> 00:34:31,480
Right now we are targeting for 
our very first release on the 

707
00:34:31,480 --> 00:34:33,520
three main net. 
We're targeting whopping 2 TPS, 

708
00:34:34,400 --> 00:34:36,719
which that doesn't sound like 
much. 

709
00:34:36,800 --> 00:34:39,800
However, if you look at the 
throughput of existing L twos 

710
00:34:39,800 --> 00:34:43,920
and how much they're being used,
2 TPS is actually quite more 

711
00:34:43,920 --> 00:34:47,560
than it's fine. 
And over the next 12 months of 

712
00:34:47,560 --> 00:34:50,000
post launch, we'll be scaling it
up to 100 TPS. 

713
00:34:50,840 --> 00:34:54,239
Some of the bottlenecks are, 
well, there's a lot to prove in 

714
00:34:54,239 --> 00:34:57,800
a roll up, in a Zika roll up, 
particularly because we have 

715
00:34:57,880 --> 00:35:01,560
something I didn't even mention 
until now, we have a, a public 

716
00:35:01,560 --> 00:35:04,640
virtual machine, AZKVM. 
So for all the, all the public 

717
00:35:04,920 --> 00:35:06,920
things that you're doing like 
public functions, public trade 

718
00:35:06,920 --> 00:35:10,600
transfers, they're all proved 
via AZKVM. 

719
00:35:10,600 --> 00:35:13,440
That's that's proven server side
either there's some performance 

720
00:35:13,440 --> 00:35:16,040
challenges there, particularly 
with like how much can be 

721
00:35:16,040 --> 00:35:18,360
paralyzed, how much can be 
serialized, how much is serial? 

722
00:35:18,360 --> 00:35:21,920
We have issues with our 
peer-to-peer network throughput,

723
00:35:21,920 --> 00:35:25,040
Bammoth throughput because every
user transaction is compared by 

724
00:35:25,040 --> 00:35:27,000
Zero's proof. 
And so in your peer-to-peer 

725
00:35:27,000 --> 00:35:29,960
network to get that transaction 
into the mempool that you need 

726
00:35:29,960 --> 00:35:33,840
to propagate this information 
and your peer-to-peer network 

727
00:35:33,840 --> 00:35:36,960
throughput will be substantially
lower than the bandwidth of of 

728
00:35:36,960 --> 00:35:40,280
your node operators. 
And so the Zero's proof size 

729
00:35:40,280 --> 00:35:41,840
there actually is quite 
important. 

730
00:35:42,320 --> 00:35:45,160
So right now it's about 50 
kilobytes and you know we have 

731
00:35:45,160 --> 00:35:47,800
some work scheduled post launch 
to get that down to four. 

732
00:35:48,280 --> 00:35:50,960
So that's what that needs to. 
Be to 4 kilobytes, yeah. 

733
00:35:52,600 --> 00:35:54,200
It's not, it's not a hard 
problem, it's just time 

734
00:35:54,200 --> 00:35:55,480
consuming. 
So we haven't done it yet. 

735
00:35:56,840 --> 00:36:00,680
The using multi, multi 
polynomial basically instead of 

736
00:36:01,280 --> 00:36:05,040
committing to 1 polynomial, like
one commit per polynomial, you 

737
00:36:05,040 --> 00:36:06,720
just have one commitment for 
lots of polynomials. 

738
00:36:06,720 --> 00:36:08,800
And then this is generally our 
nerd software because we built 

739
00:36:08,800 --> 00:36:11,080
everything from scratch, you 
know, because we had this, the 

740
00:36:11,080 --> 00:36:12,760
semantics from private state was
so different. 

741
00:36:12,760 --> 00:36:14,280
You know, we have this thing 
called the private execution 

742
00:36:14,280 --> 00:36:17,760
environment, which doesn't even 
exist in other networks, which 

743
00:36:17,760 --> 00:36:20,480
handles, you know, state privacy
sinking state retrievable as it 

744
00:36:20,480 --> 00:36:23,840
was proving we wrote this all, 
all of our node software and 

745
00:36:23,840 --> 00:36:25,520
TypeScript so we could rapidly 
prototype. 

746
00:36:25,520 --> 00:36:27,040
But this is not a performance 
language. 

747
00:36:27,040 --> 00:36:31,000
So there's, there's huge amounts
of engineering work to do search

748
00:36:31,000 --> 00:36:34,000
to improve our performance, like
to get from TTPS to 100 TPS. 

749
00:36:34,000 --> 00:36:36,320
Most of it's just pure 
engineering, taking something 

750
00:36:36,320 --> 00:36:40,040
which is brass backing you and 
just applying traditional 

751
00:36:40,040 --> 00:36:41,480
software engineering 
optimizations to it. 

752
00:36:41,520 --> 00:36:46,480
One rule of cryptography or 
applied cryptography is you 

753
00:36:46,480 --> 00:36:48,520
never build your own systems, 
right? 

754
00:36:48,760 --> 00:36:53,600
And it seems like you you've 
built all the systems. 

755
00:36:53,960 --> 00:36:56,200
Are you worried about that? 
What rule? 

756
00:36:56,360 --> 00:36:59,600
No, I'm not. 
That's that's a stupid that's a 

757
00:36:59,600 --> 00:37:00,800
stupid rule. 
In my opinion. 

758
00:37:01,040 --> 00:37:02,760
The rule is don't roll your own 
crypto, right? 

759
00:37:02,800 --> 00:37:05,040
Well then who rolls crypto if if
nobody does it? 

760
00:37:05,040 --> 00:37:06,960
Oh experts? 
Who the hell are the experts? 

761
00:37:07,040 --> 00:37:08,640
Self appointed. 
That's that's who they are. 

762
00:37:08,920 --> 00:37:11,480
Well, I mean everything that's 
kind of like you, you want to 

763
00:37:11,480 --> 00:37:13,960
use things that are better 
tested as much as you can, 

764
00:37:14,040 --> 00:37:14,640
right? 
Kind of. 

765
00:37:14,800 --> 00:37:19,520
And I understand that kind of 
like sometimes entering building

766
00:37:19,520 --> 00:37:25,480
novel things kind of means 
having to build new systems, but

767
00:37:25,680 --> 00:37:30,400
trying to possibly fall back on 
proven systems. 

768
00:37:30,400 --> 00:37:34,240
There's no such thing. 
We are the first Astic will be 

769
00:37:34,240 --> 00:37:36,800
the fullback for future 
generations of private 

770
00:37:36,800 --> 00:37:38,240
cryptography. 
There is nothing else. 

771
00:37:38,800 --> 00:37:41,360
So we didn't have that option. 
If you are building your own 

772
00:37:41,360 --> 00:37:43,880
cryptography, there's dangerous 
there. 

773
00:37:44,800 --> 00:37:47,360
The typical canonical business 
of doing your own crypto is 

774
00:37:47,360 --> 00:37:49,360
targeted towards software 
engineers that don't understand 

775
00:37:49,360 --> 00:37:53,120
cryptography. 
They're not like so, so, OK, so 

776
00:37:53,120 --> 00:37:55,000
what's the barrier if you want 
to roll your own crypto? 

777
00:37:55,000 --> 00:37:57,840
Well, step one, you need to do 
your own original research. 

778
00:37:57,920 --> 00:38:00,560
You need to publish it. 
It needs to be peer reviewed by 

779
00:38:00,560 --> 00:38:02,280
cryptographic experts. 
You need to secure it. 

780
00:38:02,280 --> 00:38:04,240
You need proofs of soundness, 
you need proofs of completeness.

781
00:38:04,480 --> 00:38:06,840
You need proofs of 0 knowledge. 
They need to be widely accepted 

782
00:38:07,080 --> 00:38:09,560
and understood. 
And they need to use security 

783
00:38:09,560 --> 00:38:11,480
assumptions that are like widely
accepted. 

784
00:38:11,480 --> 00:38:13,440
So you go, you could probably 
get away with the algebraic 

785
00:38:13,440 --> 00:38:16,000
group model just about that, 
Nothing, nothing weaker than 

786
00:38:16,000 --> 00:38:18,080
that. 
And then you need to once, OK, 

787
00:38:18,080 --> 00:38:20,160
so then then you have the theory
down, then it's implemented in 

788
00:38:20,160 --> 00:38:22,320
software and now software needs 
to be audited internally and 

789
00:38:22,480 --> 00:38:24,680
externally. 
Then what you have out of that 

790
00:38:24,880 --> 00:38:26,800
is you have an insecure system, 
which might work. 

791
00:38:27,200 --> 00:38:29,600
This is a real work because as 
you said, the only thing that 

792
00:38:29,600 --> 00:38:32,560
really guarantees the strength 
of the security of cryptographic

793
00:38:32,560 --> 00:38:35,520
technology is time. 
The the fundamental assumptions 

794
00:38:35,520 --> 00:38:38,000
that we are base our security 
crease around are actually not 

795
00:38:38,560 --> 00:38:41,120
known to be true yet. 
We do not know that the discrete

796
00:38:41,120 --> 00:38:43,360
logarithm problem is hard. 
We just assume it is because no 

797
00:38:43,360 --> 00:38:46,320
one's figured it out yet. 
And so we are taking a very 

798
00:38:46,320 --> 00:38:49,320
security conscious approach to 
our launch. 

799
00:38:49,320 --> 00:38:51,760
You know, I, I say we're going 
to be launching on the three 

800
00:38:51,760 --> 00:38:55,320
minute early next year. 
What that is going to be is 

801
00:38:55,560 --> 00:39:00,000
we're calling it the Aztec alpha
because we will not be under any

802
00:39:00,000 --> 00:39:01,360
illusions that this will be 
secure. 

803
00:39:01,640 --> 00:39:03,080
We will have done our best 
efforts. 

804
00:39:03,760 --> 00:39:05,880
We would have gone beyond gone 
beyond all reasonable doubt 

805
00:39:05,880 --> 00:39:09,600
attempts to to to to secure this
network with our internal 

806
00:39:09,600 --> 00:39:12,440
external audits. 
But that's, you know, any 

807
00:39:12,760 --> 00:39:14,920
software engineer will tell you 
it's not possible to write 

808
00:39:14,920 --> 00:39:17,320
secure code. 
It's just not in these two 

809
00:39:17,320 --> 00:39:18,440
battle tested. 
There will be bugs. 

810
00:39:18,440 --> 00:39:22,360
This bug will be found hopefully
by white hats because of our 

811
00:39:22,360 --> 00:39:23,840
generous bug Bouncy. 
We will fix them. 

812
00:39:24,320 --> 00:39:27,640
But the messaging when we launch
will very much be security 

813
00:39:27,640 --> 00:39:29,000
conscious. 
It'll it'll the message will say

814
00:39:29,000 --> 00:39:31,640
this is not secure. 
Do not put too much money 

815
00:39:31,640 --> 00:39:32,880
through this. 
Don't put money, don't put in 

816
00:39:32,880 --> 00:39:34,280
any money you're not prepared to
lose. 

817
00:39:34,960 --> 00:39:37,600
And we're going to, we're going 
to have a checklist of things 

818
00:39:37,600 --> 00:39:40,640
that need to happen before we're
willing to consider the network 

819
00:39:40,640 --> 00:39:43,240
more secure. 
We're going to need to not have 

820
00:39:43,240 --> 00:39:45,480
any serious or critical bug 
reports for three months. 

821
00:39:45,480 --> 00:39:47,840
We're going to need to have 
something like 99% network 

822
00:39:47,840 --> 00:39:51,720
uptime for three months. 
And once we pass these criteria,

823
00:39:52,400 --> 00:39:54,400
then we will consider the 
network to be in beta. 

824
00:39:54,960 --> 00:39:58,960
And once we get beta, we believe
much more comfortable making 

825
00:39:59,040 --> 00:40:01,120
claims about it's security, will
be much more comfortable with 

826
00:40:01,120 --> 00:40:02,440
people putting large amounts of 
funds in. 

827
00:40:02,720 --> 00:40:05,840
But until then, it's it's going 
to be a risky protocol just 

828
00:40:05,840 --> 00:40:07,640
because of the nature of what 
we're doing and because it's 

829
00:40:07,640 --> 00:40:09,640
decentralized. 
There's a lot of fests here. 

830
00:40:10,000 --> 00:40:13,240
You, you already kind of talked 
about this a little bit earlier,

831
00:40:13,240 --> 00:40:18,560
kind of the bandwidth issue with
kind of submitting the proofs as

832
00:40:18,560 --> 00:40:22,280
well as kind of the generating 
the proofs. 

833
00:40:23,400 --> 00:40:27,280
How much do you worry about lace
latency for use cases? 

834
00:40:27,280 --> 00:40:30,440
So kind of like when, when you 
kind of say this is great for 

835
00:40:30,440 --> 00:40:37,320
games, kind of obviously a lot 
of games rely on fairly low 

836
00:40:37,320 --> 00:40:38,640
latency, right? 
You don't. 

837
00:40:38,640 --> 00:40:42,600
You don't want to wait for an 
hour for your opponent to kind 

838
00:40:42,600 --> 00:40:44,640
of make their move. 
The latency will be good for 

839
00:40:44,640 --> 00:40:48,160
large variety of use cases. 
We are targeting 12 second 

840
00:40:48,560 --> 00:40:51,680
latency, so we're not producing 
blocks every 12 seconds, but 

841
00:40:51,680 --> 00:40:54,360
because of our previous state 
network and the fact that we 

842
00:40:54,360 --> 00:40:56,280
have our own little DA layer and
things like that use, we can 

843
00:40:56,280 --> 00:40:58,600
guarantee fairly with fairly 
fairly strong guarantees. 

844
00:40:58,640 --> 00:41:02,240
You can get finality on 12 
seconds time limit where at that

845
00:41:02,240 --> 00:41:05,280
point that is a line I'll get, 
I'll get slashed. 

846
00:41:05,280 --> 00:41:08,680
And so there's a few, there'll 
be a few $1,000,000 of value 

847
00:41:08,800 --> 00:41:10,240
backing that claim. 
Is that good enough for 

848
00:41:10,240 --> 00:41:11,000
everything? 
No. 

849
00:41:11,920 --> 00:41:15,720
Similarly, but at a fundamental 
level, the problem is that if 

850
00:41:15,720 --> 00:41:19,160
you're sending a transaction 
across a layer 2, you're paying 

851
00:41:19,160 --> 00:41:21,720
for the highest security 
guarantees, you're paying for 

852
00:41:21,720 --> 00:41:24,880
the highest like liveness, 
sensitive resistance guarantees 

853
00:41:25,400 --> 00:41:27,760
and there's no market for 
security. 

854
00:41:28,160 --> 00:41:30,080
It's not like you can choose to 
payless if you don't care so 

855
00:41:30,080 --> 00:41:33,000
much. 
And so the solution to this, in 

856
00:41:33,000 --> 00:41:37,480
my opinion, is the, the L3 
thesis, application specific 

857
00:41:37,480 --> 00:41:39,600
rollout thesis, something that 
we are post launched, we will be

858
00:41:39,600 --> 00:41:42,760
aggressively building out via 
the Aztec stack. 

859
00:41:43,000 --> 00:41:46,800
Basically, imagine the scenario 
where you can write an Astec 

860
00:41:46,800 --> 00:41:50,040
smart contract and it's, it's 
all the same as a regular Astec 

861
00:41:50,040 --> 00:41:51,480
smart contract. 
But when you, when you go to 

862
00:41:51,480 --> 00:41:54,080
deploy it, you're not deploying 
it to the Astec network. 

863
00:41:54,080 --> 00:41:57,680
You're deploying it to a roll up
that's hosted locally or hosted 

864
00:41:57,680 --> 00:42:00,760
on an S in, in, in AWS. 
But basically it's a network 

865
00:42:00,760 --> 00:42:02,440
where there's only one 
sequencer. 

866
00:42:02,440 --> 00:42:04,240
It's not decentralized, there's 
no data variable. 

867
00:42:04,240 --> 00:42:08,160
There's a guarantee as you just 
trust a sequencer and in that 

868
00:42:08,160 --> 00:42:11,480
kind of model you can get very 
far, honest throughput, very low

869
00:42:11,480 --> 00:42:14,200
latency, particularly if your 
transactions are all private, 

870
00:42:14,360 --> 00:42:16,560
because if they're all private, 
you're not modifying any shared 

871
00:42:16,560 --> 00:42:18,120
state. 
So your transactions don't have 

872
00:42:18,120 --> 00:42:20,400
any race conditions. 
And the only serial part of the 

873
00:42:20,400 --> 00:42:23,640
transaction is recomputing your 
state trace. 

874
00:42:23,640 --> 00:42:26,080
But everything else is fully 
parallelizable. 

875
00:42:26,080 --> 00:42:27,640
So you can make box very 
quickly. 

876
00:42:28,840 --> 00:42:32,520
And this, this L3 component will
be very, very valuable for low, 

877
00:42:32,560 --> 00:42:35,680
low value High Street. 
But use cases, things like micro

878
00:42:35,680 --> 00:42:38,840
payments, things like gaming, 
that's that's how we plan to 

879
00:42:38,840 --> 00:42:39,680
solve the problem. 
OK. 

880
00:42:39,680 --> 00:42:43,480
That, that also kind of solves 
your two transactions per second

881
00:42:44,040 --> 00:42:48,360
dilemma to some extent. 
How do you think about state 

882
00:42:48,360 --> 00:42:52,360
growth and storage in a word of 
encrypted data? 

883
00:42:53,000 --> 00:42:55,040
Yeah, it's challenging. 
You've got to shot it. 

884
00:42:55,080 --> 00:42:58,840
Basically, the state only ever 
grows in a private network, 

885
00:42:59,000 --> 00:43:01,120
right? 
Because when you delete a 

886
00:43:01,120 --> 00:43:02,520
record, you're not actually 
deleting it. 

887
00:43:02,520 --> 00:43:04,880
You're just creating another 
record that says this old thing 

888
00:43:04,880 --> 00:43:07,040
has been deleted. 
And you do it in a way that you 

889
00:43:07,040 --> 00:43:11,040
can't link the 2. 
So data proliferates much more 

890
00:43:11,040 --> 00:43:13,200
rapidly on a private network 
than a public network. 

891
00:43:13,360 --> 00:43:17,680
And there's a really great 
solution for this right now 

892
00:43:17,720 --> 00:43:21,240
other than basically you, you do
shouting, you have state epochs 

893
00:43:21,240 --> 00:43:24,280
where, let's say, I don't know, 
like maybe a GB terabytes of 

894
00:43:24,280 --> 00:43:26,760
states per epoch. 
And whenever you're performing 

895
00:43:26,760 --> 00:43:28,960
state transitions, you're 
specifying the epoch of your 

896
00:43:28,960 --> 00:43:31,440
note. 
And so this leaks a little bit 

897
00:43:31,440 --> 00:43:35,000
of information because if you're
modifying a really old note, 

898
00:43:35,320 --> 00:43:36,720
people know you're modifying a 
really old note. 

899
00:43:37,800 --> 00:43:41,880
But it's kind of the best we can
do right now without having, 

900
00:43:42,440 --> 00:43:45,480
without requiring nodes to 
consume enormous, enormous 

901
00:43:45,480 --> 00:43:47,200
amounts of data. 
You know, there's obviously, OK,

902
00:43:47,640 --> 00:43:50,040
so there's sharding you could do
like the full Etherium 

903
00:43:50,040 --> 00:43:54,840
foundation sharding desire, but 
that's, I mean, that's 

904
00:43:54,840 --> 00:43:57,160
challenging. 
I'd prefer if somebody else does

905
00:43:57,160 --> 00:43:58,400
it, the prefer if Etherium does 
it. 

906
00:43:59,360 --> 00:44:01,960
But right now, yeah, it's a bit,
it's a bit beyond us to build 

907
00:44:01,960 --> 00:44:03,120
that all out from scratch. 
Course. 

908
00:44:03,120 --> 00:44:05,240
So kind of like, yeah, no, I 
hear that. 

909
00:44:05,240 --> 00:44:08,880
I think kind of like not not 
building everything is often 

910
00:44:08,880 --> 00:44:10,920
good advice. 
Sorry, can I be annoying and 

911
00:44:10,920 --> 00:44:12,480
interrupt another thing? 
So I just realized sharding 

912
00:44:12,480 --> 00:44:15,480
doesn't work for us because if 
you have just one giant 

913
00:44:15,480 --> 00:44:19,480
database, even do Shard it up. 
If I want to prove that my note 

914
00:44:19,480 --> 00:44:21,880
exists in that database or prove
it doesn't exist, I need to 

915
00:44:21,880 --> 00:44:24,920
create a medical proof which 
requires knowledge of the entire

916
00:44:24,920 --> 00:44:26,400
data set. 
And that's the problem. 

917
00:44:27,280 --> 00:44:29,160
You need to be able to do 
inclusion and non inclusion 

918
00:44:29,160 --> 00:44:30,840
proofs of the subsets of your 
data. 

919
00:44:31,440 --> 00:44:35,080
And that requires what like what
I call Charlie, like splitting, 

920
00:44:35,080 --> 00:44:37,880
splitting your stake into ebooks
and revealing a small amount of 

921
00:44:37,880 --> 00:44:40,920
information about about your 
notes, the age of your notes as 

922
00:44:40,920 --> 00:44:43,440
a result. 
There are a couple of competing 

923
00:44:43,440 --> 00:44:48,680
privacy based chains. 
So kind of if you look at 

924
00:44:48,680 --> 00:44:55,280
systems like Alio on Armada or 
ZK Singh's privacy layer, how do

925
00:44:55,280 --> 00:44:59,360
you mentally categorize them 
with respect to Aztec? 

926
00:44:59,360 --> 00:45:01,200
Privacy is a hot narrative right
now. 

927
00:45:01,440 --> 00:45:04,200
And so, and it's also a very 
poorly defined word. 

928
00:45:05,200 --> 00:45:08,160
And So what people say, what 
they mean when they say privacy 

929
00:45:08,160 --> 00:45:10,120
varies. 
And so obviously I have my own 

930
00:45:10,120 --> 00:45:12,600
biases here. 
I don't and I don't want to 

931
00:45:12,600 --> 00:45:15,880
throw like, I don't want to 
throw shape around things like 

932
00:45:15,880 --> 00:45:18,600
the model. 
We'll see about like about them.

933
00:45:18,600 --> 00:45:21,960
I think that they have a very 
ambitious goal in mind. 

934
00:45:22,160 --> 00:45:25,320
They're really they're the ones 
that use FHE to fully like to 

935
00:45:25,320 --> 00:45:26,840
create like a fully encrypted 
Ethereum. 

936
00:45:28,880 --> 00:45:32,520
There are certain challenges 
with FHE that are yet to be 

937
00:45:32,520 --> 00:45:35,920
satisfactorily solved. 
Otherwise we've used it. 

938
00:45:36,520 --> 00:45:44,360
So one of them is so if with FHE
you can so OK with ZKI can prove

939
00:45:44,360 --> 00:45:48,640
anything about my data. 
With FHE you, I can give you my 

940
00:45:48,640 --> 00:45:51,160
encrypted data and you can run a
program on that data and you 

941
00:45:51,160 --> 00:45:54,120
don't know what's going on. 
You can't do that with CK. 

942
00:45:54,120 --> 00:45:56,360
So it's much more powerful in 
that context. 

943
00:45:56,640 --> 00:45:59,360
However, it has 22 very big 
flaws that need to be resolved. 

944
00:45:59,360 --> 00:46:01,720
One of them is the data is also 
encrypted. 

945
00:46:02,200 --> 00:46:06,920
And so if you want to just take 
a regular EVM and make it all 

946
00:46:07,120 --> 00:46:10,560
encrypt all the data, then use 
FHE, then the problem is who 

947
00:46:11,120 --> 00:46:14,400
owns those decryption keys? 
You need a basically you need a 

948
00:46:14,400 --> 00:46:18,720
multi part computation network 
to hold that, to hold part like 

949
00:46:19,120 --> 00:46:21,280
shit like partial decryption 
keys for your state. 

950
00:46:21,600 --> 00:46:24,560
If you have that MPC network, 
then you can also use that MPC 

951
00:46:24,560 --> 00:46:27,320
network to do 0 knowledge 
proving in via secret sharing. 

952
00:46:27,600 --> 00:46:30,280
This is what TESAO do. 
You get very similar outcomes 

953
00:46:30,400 --> 00:46:32,840
both, both ways. 
The whole like who holds the 

954
00:46:32,840 --> 00:46:35,560
decryption keys? 
How do you do key rotation make 

955
00:46:35,560 --> 00:46:38,280
that secure is very challenging.
And, and we'll, we'll, we'll 

956
00:46:38,280 --> 00:46:40,400
see, we'll see how they, how 
they, how they execute on that. 

957
00:46:40,800 --> 00:46:42,440
I do. 
I do hope they are successful. 

958
00:46:42,640 --> 00:46:45,960
I think that right now any 
privacy solutions that offer 

959
00:46:45,960 --> 00:46:49,120
genuine privacy, like it would 
be good to start if any of them 

960
00:46:49,120 --> 00:46:52,280
were successful. 
You have things like Zika sync. 

961
00:46:52,480 --> 00:46:53,800
What they're doing is very 
different. 

962
00:46:53,880 --> 00:46:56,720
I would not call what they're 
doing privacy by any like 

963
00:46:56,720 --> 00:46:59,320
meaningful standard. 
What the way that they get 

964
00:46:59,320 --> 00:47:06,720
privacy is that you run so so 
you run an L3 and people send 

965
00:47:06,720 --> 00:47:11,360
transactions to you and you 
don't broadcast anything about 

966
00:47:11,360 --> 00:47:11,880
that. 
L 3. 

967
00:47:11,880 --> 00:47:14,080
So so the way that you get your 
transactions is not through a 

968
00:47:14,080 --> 00:47:15,160
public network. 
It's through private 

969
00:47:15,160 --> 00:47:19,080
information, private messages. 
And then when you make your roll

970
00:47:19,080 --> 00:47:22,920
up proof, you basically discard 
all of the information around 

971
00:47:22,920 --> 00:47:25,920
the the data in your in your 
roll up and then you put that 

972
00:47:25,920 --> 00:47:28,560
roll up proof on Shane. 
Is that private? 

973
00:47:28,720 --> 00:47:30,360
Yes, it's the same with a 
private server. 

974
00:47:30,360 --> 00:47:32,040
It's private. 
It's not a great way of creating

975
00:47:32,040 --> 00:47:33,880
a composable ecosystem. 
Like the thing about the thing 

976
00:47:33,880 --> 00:47:36,440
that I think is most valuable at
privacy is composable privacy. 

977
00:47:36,440 --> 00:47:38,760
The idea is you can write a 
private smart contract. 

978
00:47:38,800 --> 00:47:42,360
I can write a private smart 
contract and these things can 

979
00:47:42,480 --> 00:47:44,920
talk to each other, they can, 
they can call each other and 

980
00:47:45,440 --> 00:47:49,120
that's like we don't have to 
share any information with with 

981
00:47:49,360 --> 00:47:50,800
like with each other. 
Our users don't have to share 

982
00:47:50,800 --> 00:47:52,520
any information. 
It all just works out-of-the-box

983
00:47:52,520 --> 00:47:54,600
on a public network, you start 
getting into some very, very 

984
00:47:54,600 --> 00:47:57,760
naive trust assumptions. 
If you want composable privacy 

985
00:47:58,200 --> 00:48:00,440
on a network like Zika Sync is 
building where everything is run

986
00:48:00,440 --> 00:48:03,480
by 1 server and that one entity 
sees everything and nobody else 

987
00:48:03,480 --> 00:48:05,760
does, it's a huge amount of 
trust you're placing in that 

988
00:48:05,920 --> 00:48:07,800
person. 
But it is useful for certain use

989
00:48:07,800 --> 00:48:08,880
cases. 
It's useful for enterprise. 

990
00:48:08,880 --> 00:48:11,080
It could be useful for gaming. 
It's useful for where the trust 

991
00:48:11,080 --> 00:48:12,080
assumptions are very low. 
But yeah. 

992
00:48:12,080 --> 00:48:16,360
And then you have other other 
teams like Alio and Mina that 

993
00:48:16,360 --> 00:48:18,360
are basically doing the ZK route
that we are there. 

994
00:48:18,360 --> 00:48:21,880
It's it's it's an execution play
about whether it can this stuff 

995
00:48:21,880 --> 00:48:24,240
can be made performant enough, 
easy to use, whether you can 

996
00:48:24,240 --> 00:48:25,480
create the right abstraction 
layers. 

997
00:48:25,480 --> 00:48:28,320
And right now no one's really 
cracked that problem. 

998
00:48:28,400 --> 00:48:30,240
And I, I, I can't claim that 
Aztecs cracked it. 

999
00:48:30,240 --> 00:48:33,320
We're not even launched yet. 
I hope we will, but nobody has 

1000
00:48:33,320 --> 00:48:36,440
yet. 
I I'm convinced as a matter of 

1001
00:48:36,440 --> 00:48:39,840
faith that's privacy is useful, 
that is needed. 

1002
00:48:39,840 --> 00:48:42,760
That's if if you make it easy 
enough, it people will. 

1003
00:48:42,760 --> 00:48:45,640
People will build on it. 
Not because users care about 

1004
00:48:45,640 --> 00:48:48,160
privacy as a feature, but 
because it's a required property

1005
00:48:48,160 --> 00:48:49,680
for a lot of valuable 
applications. 

1006
00:48:49,680 --> 00:48:52,680
It's a question about building a
building a technological base 

1007
00:48:52,680 --> 00:48:56,880
layer that's competent enough to
provide the developer user 

1008
00:48:56,880 --> 00:49:00,400
experience that people require. 
Aztec is an L2 on top of 

1009
00:49:00,400 --> 00:49:05,640
Ethereum and kind of the 
decentralized world has shifted 

1010
00:49:05,880 --> 00:49:09,680
since you decommissioned the 
last version of Aztec. 

1011
00:49:10,960 --> 00:49:17,640
How do you think about the 
benefits of being L2 on top of 

1012
00:49:17,640 --> 00:49:21,200
Ethereum rather than say a stand
alone L1? 

1013
00:49:21,200 --> 00:49:25,320
I mean you already have the 
decentralized sequences set, you

1014
00:49:25,320 --> 00:49:30,080
could just be an L1 and kind of 
like not pay for living on top 

1015
00:49:30,080 --> 00:49:31,560
of Ethereum. 
No, it could. 

1016
00:49:31,560 --> 00:49:33,520
But then there are other 
problems with that. 

1017
00:49:33,520 --> 00:49:36,640
Specifically, privacy doesn't 
matter if you don't have any 

1018
00:49:36,640 --> 00:49:38,600
value you want to make keep 
private. 

1019
00:49:38,600 --> 00:49:40,120
Nobody cares how many magic 
beans you have. 

1020
00:49:40,360 --> 00:49:43,080
They care about how many U.S. 
dollars you have or your 

1021
00:49:43,080 --> 00:49:46,920
property or like who you are. 
And so you have a very big 

1022
00:49:47,040 --> 00:49:49,640
chicken and an egg problem if 
you're running as an L1, Whereas

1023
00:49:49,640 --> 00:49:51,120
how do you get value with your 
ecosystem? 

1024
00:49:52,000 --> 00:49:54,360
Because it's completely, we knew
it's up from scratch. 

1025
00:49:54,360 --> 00:49:57,840
Like obviously you can do 
bridges, but bridging is still a

1026
00:49:57,840 --> 00:50:01,560
fairly complicated process with 
an unpleasant user experience. 

1027
00:50:01,560 --> 00:50:05,000
And ultimately, yeah, it's, it's
we, we thought the costs, the 

1028
00:50:05,000 --> 00:50:09,120
risks would be too great. 
And also we did gain a lot from 

1029
00:50:09,120 --> 00:50:11,360
building a software Ethereum. 
Like we don't have to re roll 

1030
00:50:11,360 --> 00:50:13,000
our own consensus network from 
scratch. 

1031
00:50:13,440 --> 00:50:16,920
There is a slightly lower 
maintenance overheads to our 

1032
00:50:16,920 --> 00:50:20,280
software because of that. 
I was hoping at the start 

1033
00:50:20,280 --> 00:50:21,440
they'll be much lower than they 
are. 

1034
00:50:22,120 --> 00:50:23,680
But yeah, we've had to build a 
lot ourselves. 

1035
00:50:23,760 --> 00:50:26,120
Etherium is still the canonical 
source of assets on Chen. 

1036
00:50:27,120 --> 00:50:31,320
If you want to issue an asset, 
OK, you can do Solana and things

1037
00:50:31,320 --> 00:50:32,880
like that. 
But but if it's if it's a chunky

1038
00:50:32,880 --> 00:50:34,880
asset with a lot of value in it,
you put it on Etherium. 

1039
00:50:35,240 --> 00:50:37,560
And we wanted to be able to make
it so you could very trustlessly

1040
00:50:38,240 --> 00:50:42,160
bring your assets into asset 
from Etherium because just in 

1041
00:50:42,160 --> 00:50:44,960
the same way that Etherium is 
the canonical source of assets, 

1042
00:50:45,720 --> 00:50:48,600
our goal for Aztec is to make 
Aztec the canonical source of 

1043
00:50:48,720 --> 00:50:50,760
credentials. 
Effectively, if you have a token

1044
00:50:50,760 --> 00:50:52,840
or an attestation that says 
something about you or what 

1045
00:50:52,840 --> 00:50:55,120
you've done or what you want to 
do, the natural place to issue 

1046
00:50:55,120 --> 00:50:57,960
that is on Aztec, where it's 
encrypted by default and you can

1047
00:50:57,960 --> 00:51:01,560
selectively disclose parts like 
that, that that credential to 

1048
00:51:01,920 --> 00:51:03,640
either people or to smart 
contracts. 

1049
00:51:03,640 --> 00:51:05,320
And yeah, we felt we felt 
Ethereum was the right place to 

1050
00:51:05,320 --> 00:51:07,880
do it because it's where the 
money is and privacy is not 

1051
00:51:07,880 --> 00:51:10,680
useful without money. 
More generally, we do think that

1052
00:51:10,680 --> 00:51:13,840
bridging like creating a very, 
making it very easy to get 

1053
00:51:13,960 --> 00:51:16,520
transactions into an out of a 
stick from any other network for

1054
00:51:16,520 --> 00:51:19,200
us is extremely important. 
We don't want to just be tied to

1055
00:51:19,440 --> 00:51:23,240
Etherium because there's a very 
unique value proposition for 

1056
00:51:23,240 --> 00:51:26,720
Aztec that no other L2 faces. 
It's, it's not a secret that 

1057
00:51:26,720 --> 00:51:30,040
most L twos are somewhat 
parasitic to their host networks

1058
00:51:30,720 --> 00:51:34,520
because the L2 wants its own set
of liquidity, its own tokens so 

1059
00:51:34,520 --> 00:51:37,200
that you can build applications 
on the L2 and that liquidity 

1060
00:51:37,200 --> 00:51:39,360
comes to the cost of taking it 
out of the L1. 

1061
00:51:39,400 --> 00:51:43,640
With Aztec it's very different 
because there is unique value in

1062
00:51:43,640 --> 00:51:48,120
bridging not tokens, but 
information between Aztec and 

1063
00:51:48,120 --> 00:51:50,640
other networks. 
For example, imagine you're 

1064
00:51:50,640 --> 00:51:56,280
building some kind of trading 
marketplace on slot, but you 

1065
00:51:56,280 --> 00:51:59,160
need a level of compliance, 
maybe the assets you need to 

1066
00:51:59,160 --> 00:52:01,840
know that people are not on a 
central system Iranian. 

1067
00:52:01,840 --> 00:52:04,480
Maybe you need, you need to 
understand if someone's American

1068
00:52:04,480 --> 00:52:06,000
or not things like that, some 
basic compliance. 

1069
00:52:06,400 --> 00:52:10,160
Well, So what you can do is you 
could print, you could send a 

1070
00:52:10,160 --> 00:52:13,640
request into Aztec where that 
request will check some 

1071
00:52:13,640 --> 00:52:16,080
encrypted credentials on that, 
on that person and the request 

1072
00:52:16,080 --> 00:52:18,720
responds with either true or 
false, like yes, like flying or 

1073
00:52:18,720 --> 00:52:21,920
no, they're not Solana. 
That application Solana has 

1074
00:52:21,920 --> 00:52:24,680
gained something of value from 
interacting with Aztec and the 

1075
00:52:24,680 --> 00:52:26,200
Solana network has not lost any 
tokens. 

1076
00:52:26,320 --> 00:52:28,880
Effectively you get a privacy 
shield for free at well for a 

1077
00:52:28,880 --> 00:52:31,560
very low cost. 
And that's, that's the direction

1078
00:52:31,560 --> 00:52:33,400
we want Aztec travel in, in the 
in the future. 

1079
00:52:33,400 --> 00:52:37,560
We want it to be the, the, the 
universal privacy layer for all 

1080
00:52:37,560 --> 00:52:40,560
of blockchain. 
And we want to execute on that 

1081
00:52:40,560 --> 00:52:43,800
in a very positive some way 
where the canonical method of 

1082
00:52:43,800 --> 00:52:46,240
interaction with Aztec from 
other networks is not you bridge

1083
00:52:46,240 --> 00:52:49,440
assets, assets and Aztec and 
then they stay there is you 

1084
00:52:49,440 --> 00:52:52,800
bridge identity information in 
into and out of Aztec or maybe 

1085
00:52:52,800 --> 00:52:56,320
you put tokens into Aztec so 
that you can create so that you 

1086
00:52:56,320 --> 00:52:58,080
can perform private interactions
with them. 

1087
00:52:58,360 --> 00:53:00,560
But then very quickly they they 
go out back into the parent 

1088
00:53:00,560 --> 00:53:02,520
network. 
We think that's a much more kind

1089
00:53:02,520 --> 00:53:05,840
of a positive sum way of 
interacting with the ecosystem 

1090
00:53:05,840 --> 00:53:10,120
where everybody wins. 
I 100% concur on the message 

1091
00:53:10,120 --> 00:53:12,160
passing use case. 
So kind of like if you were to 

1092
00:53:12,160 --> 00:53:20,240
kind of use it as a an identity 
layer. 100% agree with 

1093
00:53:20,240 --> 00:53:24,680
everything you said. 
If you look at how assets are 

1094
00:53:24,680 --> 00:53:30,200
actually issued in the Ethereum 
ecosystem today, I know that 

1095
00:53:30,200 --> 00:53:35,560
kind of like back in the day we 
talked about assets natively 

1096
00:53:35,560 --> 00:53:39,680
being minted on Ethereum main 
net and then kind of being 

1097
00:53:39,680 --> 00:53:46,600
bridged into L twos and and then
kind of things happen on L twos.

1098
00:53:46,600 --> 00:53:49,840
They get rolled up and then kind
of like you bridge out of the L2

1099
00:53:50,480 --> 00:53:54,920
onto main net. 
Again, what we effectively is 

1100
00:53:55,160 --> 00:54:01,040
see is that kind of like acids 
are born on L twos, they live on

1101
00:54:01,040 --> 00:54:05,160
L twos and they die on L twos. 
And you know, ideally they're 

1102
00:54:05,160 --> 00:54:08,080
happy on L twos, but kind of 
they don't. 

1103
00:54:08,240 --> 00:54:11,560
And kind of like for anything 
that is natively minted on an 

1104
00:54:11,560 --> 00:54:16,560
L2, the L1 doesn't actually give
you any secure security 

1105
00:54:16,560 --> 00:54:19,760
guarantees whatsoever, right? 
So kind of like all the, all the

1106
00:54:19,760 --> 00:54:27,080
security you inherit from being 
an L2, you only inherit for for 

1107
00:54:27,400 --> 00:54:32,280
bridged assets from main net, 
right? 

1108
00:54:32,560 --> 00:54:36,600
And I think to to some extent, 
we've seen that play out 

1109
00:54:37,080 --> 00:54:38,880
differently. 
When when you say that you don't

1110
00:54:38,880 --> 00:54:41,600
get any security from the L1, I 
think this is largely because 

1111
00:54:41,600 --> 00:54:44,320
these L TS are centralized. 
And so you you have this kind of

1112
00:54:44,320 --> 00:54:48,080
the weakest, the weakest point 
of failure is some some 

1113
00:54:48,080 --> 00:54:49,760
something in the Lt. like a 
multi sequel or something. 

1114
00:54:50,000 --> 00:54:52,200
It's a bit different for Aztec 
where you know, you have user, 

1115
00:54:52,200 --> 00:54:58,000
you have, you have sequences 
sticking on on a 3ML1 to be a 

1116
00:54:58,000 --> 00:55:00,440
block producer. 
And once a block is being 

1117
00:55:00,440 --> 00:55:02,960
produced and it's and it and 
you've updated your state route,

1118
00:55:03,520 --> 00:55:05,760
then you're, you're, you are 
very much relying on Etherium's 

1119
00:55:05,760 --> 00:55:09,480
consensus to define what the 
canonical version of Aztec is. 

1120
00:55:10,000 --> 00:55:13,600
And so I do slightly disagree 
with the idea that you don't 

1121
00:55:13,600 --> 00:55:15,880
inherit anything from any 
security from Etherium. 

1122
00:55:15,880 --> 00:55:19,760
I mean we are targeting to be a 
stage 2 roll up on launch where 

1123
00:55:20,160 --> 00:55:21,720
that kind of that is kind of the
points. 

1124
00:55:21,720 --> 00:55:26,680
But say, say I kind of deploy 
some sort of token on Aztec 

1125
00:55:26,680 --> 00:55:32,360
directly, right? 
I can't force exit to a theorem,

1126
00:55:32,360 --> 00:55:36,120
right? 
I can't but that that asset that

1127
00:55:36,120 --> 00:55:38,800
kind of like Ethereum knows 
nothing about. 

1128
00:55:39,040 --> 00:55:41,440
So the way we do it is we, we 
call that an escape hatch, but 

1129
00:55:41,440 --> 00:55:44,680
basically for a certain fixed 
amount of time for every block 

1130
00:55:44,680 --> 00:55:47,400
production epoch, anybody can 
send a lot of transactions. 

1131
00:55:47,400 --> 00:55:49,360
It's not just a sequence, it's 
basically a free full. 

1132
00:55:49,360 --> 00:55:52,520
The idea is we don't intend for 
this to be used, but it can be 

1133
00:55:52,520 --> 00:55:53,800
used. 
If you're getting sensitive for 

1134
00:55:53,800 --> 00:55:56,680
some reason, you can use that 
window to make your own asset 

1135
00:55:57,040 --> 00:56:00,440
transactions to exit. 
If for some reason there's 

1136
00:56:00,440 --> 00:56:02,640
something catastrophic failure 
States and like no one's 

1137
00:56:02,640 --> 00:56:04,880
producing blocks, then you could
use that to produce your own 

1138
00:56:04,880 --> 00:56:09,000
blocks and get out of Aztec. 
So no, you can force exit onto 

1139
00:56:09,000 --> 00:56:12,480
onto Ethereum. 
But can I force exit an acid 

1140
00:56:12,600 --> 00:56:17,280
that was not minted on Ethereum?
It wasn't minted on Ethereum OH.

1141
00:56:17,520 --> 00:56:19,160
It's minted on Aztec, yeah. 
Yeah, Yeah. 

1142
00:56:19,600 --> 00:56:21,080
OK. 
In that case, in that case, 

1143
00:56:21,080 --> 00:56:23,640
yeah, if you invented on Aztec, 
then you can't force exit. 

1144
00:56:24,080 --> 00:56:27,480
Yeah, because it's like an exit.
So I get, I get what you're 

1145
00:56:27,480 --> 00:56:30,240
saying that the the security 
guarantees you get a kind of 

1146
00:56:30,240 --> 00:56:32,720
it's still it's a combination of
Aztec and Ethereum where like 

1147
00:56:32,720 --> 00:56:34,800
the weakest gap like seriously 
holds. 

1148
00:56:34,880 --> 00:56:38,520
And the way that users behave is
all kind of the way that, and 

1149
00:56:38,520 --> 00:56:42,160
when I say users, I kind of mean
application developers kind of 

1150
00:56:42,160 --> 00:56:47,440
is assets get natively minted on
L twos all the time now. 

1151
00:56:47,440 --> 00:56:50,760
So kind of like if you look at 
the values that kind of get 

1152
00:56:50,760 --> 00:56:55,040
transferred on L twos, kind of 
the minority of them have 

1153
00:56:55,040 --> 00:56:57,480
actually been bridged in from 
L1. 

1154
00:56:57,840 --> 00:57:02,240
The the majority of them are 
natively L2 assets and then you 

1155
00:57:02,240 --> 00:57:06,000
have no security guarantees. 
But the, but the majority of 

1156
00:57:06,000 --> 00:57:08,080
value is not on L twos is in LL 
twos. 

1157
00:57:08,080 --> 00:57:09,960
Most LTS don't really have 
product market fit. 

1158
00:57:10,120 --> 00:57:13,080
And so most of what's going on 
is, is synthetic, it's liquidity

1159
00:57:13,080 --> 00:57:15,880
farming, it's incentive based. 
It's basically nonsense. 

1160
00:57:15,920 --> 00:57:19,360
And so I don't think it sets a 
very useful precedent for, for, 

1161
00:57:19,480 --> 00:57:22,520
for a network that has the 
useful economic activity on it. 

1162
00:57:22,920 --> 00:57:25,480
You're right that OK, yes. 
So, So what happens in LTS is 

1163
00:57:25,480 --> 00:57:27,600
you get these synthetic new 
coins that get produced and 

1164
00:57:29,480 --> 00:57:32,720
yeah, it's, it's all on L twos. 
Does it matter? 

1165
00:57:32,920 --> 00:57:36,800
I mean, do you need ironclad 
security for, for a mean coin? 

1166
00:57:37,280 --> 00:57:40,240
No, So, so I don't see this as a
problem. 

1167
00:57:40,560 --> 00:57:44,360
I think that for for us, it's 
fairly clear, I think how things

1168
00:57:44,360 --> 00:57:47,760
are going to play out. 
If you have and an asset that 

1169
00:57:47,760 --> 00:57:50,920
requires identity checks, 
regulated checks, it's going to 

1170
00:57:50,920 --> 00:57:52,640
it's going to turn off on a 
stick as a native asset. 

1171
00:57:52,680 --> 00:57:56,040
Is that secure? 
Yes, because we, we're fully 

1172
00:57:56,040 --> 00:57:57,440
decentralized. 
We have a very willing, we're 

1173
00:57:57,440 --> 00:58:00,800
going to have an enormous amount
of stake backing the, the 

1174
00:58:00,800 --> 00:58:02,480
network. 
The more economic activity the 

1175
00:58:02,480 --> 00:58:04,280
network generates, the higher 
the fees, the more incentive 

1176
00:58:04,280 --> 00:58:05,720
there is to put more stake onto 
the network. 

1177
00:58:05,720 --> 00:58:09,000
So I'm not worried at all about 
its security. 

1178
00:58:09,000 --> 00:58:13,200
What I what I don't want to see 
happen is that Aztec starts 

1179
00:58:13,200 --> 00:58:15,600
becoming like very parasitic to 
Ethereum. 

1180
00:58:15,840 --> 00:58:18,160
Yeah, I, I, I hear that. 
I and I think that's 

1181
00:58:18,160 --> 00:58:19,840
commendable. 
Because I think that the value 

1182
00:58:19,840 --> 00:58:21,840
proposition really is with 
bridging information. 

1183
00:58:22,440 --> 00:58:26,120
I think that's ideally the only 
time an Aztec is natively mitted

1184
00:58:26,120 --> 00:58:29,400
on Aztec is if you can't put it 
anywhere else because it 

1185
00:58:29,400 --> 00:58:32,240
requires privacy checks, 
composable privacy checks that 

1186
00:58:32,240 --> 00:58:35,360
you get on Aztec. 
I, I don't see Aztec as being a 

1187
00:58:35,360 --> 00:58:38,120
very popular home for like 
relations to move on trading 

1188
00:58:38,120 --> 00:58:41,600
because it's going to be more 
expensive and slower than fully 

1189
00:58:41,600 --> 00:58:43,600
transparent networks. 
So I do think that there's, 

1190
00:58:43,680 --> 00:58:45,800
there's always going to be, I 
mean, obviously there'll be some

1191
00:58:45,800 --> 00:58:47,440
of it. 
You can't stop it, it'll happen.

1192
00:58:47,480 --> 00:58:50,440
I don't see that as being a 
particularly dominant use case 

1193
00:58:50,440 --> 00:58:54,480
on Aztec unless we've completely
failed to execute on any of our 

1194
00:58:55,640 --> 00:58:57,920
privacy. 
Unless all of my thoughts about 

1195
00:58:57,920 --> 00:59:01,760
privacy I was wrong, then that's
the only way that world will 

1196
00:59:01,760 --> 00:59:04,280
happen. 
Maybe let's zoom all the way out

1197
00:59:04,320 --> 00:59:06,760
to kind of like pass all the 
crypto stuff. 

1198
00:59:08,040 --> 00:59:11,040
If you kind of look at the world
right now, kind of we're dealing

1199
00:59:11,040 --> 00:59:15,520
with declining expectations of 
privacy and kind of like you see

1200
00:59:15,520 --> 00:59:19,120
that in in in the UK, you also 
see it in Europe. 

1201
00:59:19,120 --> 00:59:21,760
So kind of like chat control or 
something that only recently 

1202
00:59:21,760 --> 00:59:23,880
failed. 
How do you see that shift? 

1203
00:59:23,880 --> 00:59:29,240
And do you think kind of that 
level of cryptographic privacy 

1204
00:59:29,760 --> 00:59:33,440
can play some sort of role in 
reversing it? 

1205
00:59:33,480 --> 00:59:38,400
Yeah, it's a tricky 1. 
I noticed 2 trends which utterly

1206
00:59:38,400 --> 00:59:41,000
confound me because they seem to
be, they seem to be at work, 

1207
00:59:41,040 --> 00:59:42,520
like they seem to be mutually 
incompatible. 

1208
00:59:42,520 --> 00:59:44,880
Which is that Western societies 
are becoming more and more 

1209
00:59:44,880 --> 00:59:47,920
distrustful of their governments
and like less confidence in 

1210
00:59:47,920 --> 00:59:50,200
their ability to execute on 
implementing effective state 

1211
00:59:50,200 --> 00:59:52,560
policy. 
Yet at the same time seem to be 

1212
00:59:52,560 --> 00:59:56,240
more and more willing to give 
those government's powers and 

1213
00:59:56,240 --> 00:59:58,280
control over over their private 
data. 

1214
00:59:58,280 --> 01:00:01,360
Part of this is a lack is, is 
like, how do I put this? 

1215
01:00:01,360 --> 01:00:04,600
Privacy is not a mainstream 
narrative and people don't think

1216
01:00:04,600 --> 01:00:07,240
very much about it. 
I don't think this means 

1217
01:00:07,240 --> 01:00:09,200
necessarily people don't care 
about privacy. 

1218
01:00:09,200 --> 01:00:10,480
They don't care about government
overreach. 

1219
01:00:10,480 --> 01:00:13,040
It's just that they that it's 
not part of the kind of the 

1220
01:00:13,040 --> 01:00:16,840
Canon of, of, of ideas that they
they consider important or 

1221
01:00:16,840 --> 01:00:18,960
contentious. 
To give an example about this 

1222
01:00:18,960 --> 01:00:21,720
right, the UK has recently 
passed a very unpleasant 

1223
01:00:21,720 --> 01:00:24,560
surveillance bill called the 
online Safety Act extensively to

1224
01:00:24,560 --> 01:00:27,960
protect children. 
But in reality is I would argue 

1225
01:00:28,000 --> 01:00:31,200
is a a massive curtailment of of
free speech online. 

1226
01:00:32,120 --> 01:00:34,400
This is mean people don't care 
about government leverage. 

1227
01:00:34,400 --> 01:00:36,800
They don't care about privacy. 
Well, maybe, maybe not because 

1228
01:00:36,800 --> 01:00:38,360
at the same time, the UK 
government is trying to 

1229
01:00:38,360 --> 01:00:41,480
introduce identity cards, which 
is met with overwhelming 

1230
01:00:41,480 --> 01:00:43,640
opposite popular opposition. 
People hate that because 

1231
01:00:44,240 --> 01:00:46,400
identity cards are more they're 
more familiar with that as part 

1232
01:00:46,400 --> 01:00:49,400
of the that like the the concept
of ideas they have right. 

1233
01:00:49,400 --> 01:00:52,120
They think identity cards 
they're familiar with to Teltro 

1234
01:00:52,120 --> 01:00:54,200
instances using those to 
restrict people's movements 

1235
01:00:54,440 --> 01:00:57,040
exchange of ideas, information 
and they don't like it. 

1236
01:00:57,600 --> 01:01:00,520
They're not familiar with how 
governments use online 

1237
01:01:00,520 --> 01:01:04,960
surveillance laws to repress 
free speech or limits free 

1238
01:01:04,960 --> 01:01:07,800
exchange of ideas or make their 
personal is more secure and more

1239
01:01:07,800 --> 01:01:10,080
likely to be leaked. 
This will change in time. 

1240
01:01:10,120 --> 01:01:12,160
I think that's what's going to 
happen is more and more 

1241
01:01:12,160 --> 01:01:14,640
oppressive, so the decision is 
going to get passed and it's 

1242
01:01:14,640 --> 01:01:17,840
going to be abused and 
manipulated more and more and 

1243
01:01:18,280 --> 01:01:20,120
eventually we might see some 
kind of backlash. 

1244
01:01:20,200 --> 01:01:22,480
I think that there's always my 
hopes here when it comes to 

1245
01:01:22,640 --> 01:01:24,600
these things that lies with 
America. 

1246
01:01:24,600 --> 01:01:27,400
I don't think whilst you're 
getting some annoying age 

1247
01:01:27,400 --> 01:01:30,240
restriction laws at the state 
level, they're not the same as 

1248
01:01:30,440 --> 01:01:33,400
chat control, for example, where
it's just a very, very clear 

1249
01:01:33,400 --> 01:01:36,360
power grab by the state 
bureaucracy. 

1250
01:01:36,960 --> 01:01:39,480
I, I think it basically America 
will always be basically 

1251
01:01:39,480 --> 01:01:42,320
demonstrating what's what like 
the the alternative of if you 

1252
01:01:42,320 --> 01:01:45,280
don't have controls over over 
speech, eventually it'll just 

1253
01:01:45,280 --> 01:01:46,960
become a very compelling 
differential. 

1254
01:01:47,080 --> 01:01:50,160
I think, I hope. 
But but I mean just to push back

1255
01:01:50,160 --> 01:01:56,520
here. 
So kind of in some way the US, a

1256
01:01:56,520 --> 01:02:02,760
nation that is most advanced in 
surveilling their own subjects 

1257
01:02:03,080 --> 01:02:09,640
and it's also currently a state 
where you can lose your visa for

1258
01:02:09,640 --> 01:02:17,320
kind of being have holding a non
majority opinion, right? 

1259
01:02:17,520 --> 01:02:22,560
So kind of like it is very kind 
of anti free speech in some 

1260
01:02:22,560 --> 01:02:24,680
sense. 
No, I'm not going to hold 

1261
01:02:24,720 --> 01:02:27,400
America as a bastion of liberal 
values anymore. 

1262
01:02:27,800 --> 01:02:30,520
For sure like it that there is 
this there is an element of 

1263
01:02:30,520 --> 01:02:34,520
capricious state policy. 
I think you've also seen in 

1264
01:02:34,520 --> 01:02:38,360
America the degradation of the 
rule of law. 

1265
01:02:38,400 --> 01:02:40,560
We've even seen that with 
crypto, right where it under the

1266
01:02:40,560 --> 01:02:44,560
guy against the regime, crypto 
was based as a criminalized 

1267
01:02:44,560 --> 01:02:46,480
crypto without passing 
legislation to do so. 

1268
01:02:47,160 --> 01:02:49,120
And then under the Trump regime,
it's all it's a free for all. 

1269
01:02:49,160 --> 01:02:52,360
However, I do think that part of
America's strength lies in its 

1270
01:02:52,360 --> 01:02:56,360
decentralization, as in you 
don't have a particularly strong

1271
01:02:56,360 --> 01:02:59,920
unitary authority that can exert
massive amounts of controlling 

1272
01:02:59,920 --> 01:03:02,240
the people's lives like you do 
in most European states. 

1273
01:03:02,240 --> 01:03:03,840
I know Germany is slightly 
different with this federal 

1274
01:03:03,840 --> 01:03:05,800
structure, but most European 
states are unitary entities 

1275
01:03:05,800 --> 01:03:09,240
where the government says, hey, 
we're going to surveil you like 

1276
01:03:09,320 --> 01:03:11,480
and and and look at them create 
an unwarranted financial 

1277
01:03:11,480 --> 01:03:13,120
surveillance regime and there's 
something you can do about it. 

1278
01:03:13,280 --> 01:03:16,680
And if you think that we're, and
if you complain, we're going to 

1279
01:03:16,680 --> 01:03:20,800
just call you a child molester. 
This, this is hard to do in 

1280
01:03:20,800 --> 01:03:23,400
America because you have state 
governments that's generally 

1281
01:03:23,400 --> 01:03:25,320
have political incentives to 
push back against the federal 

1282
01:03:25,320 --> 01:03:28,000
government when it comes to 
things like online surveillance.

1283
01:03:28,240 --> 01:03:29,840
It's actually the state 
governments that are the ones 

1284
01:03:29,840 --> 01:03:33,960
pushing it to, to perform age 
checks and other content. 

1285
01:03:33,960 --> 01:03:36,280
It's a very mixed landscape. 
But as a, as a core cultural 

1286
01:03:36,280 --> 01:03:38,920
value, America does value free 
speech. 

1287
01:03:38,920 --> 01:03:40,800
Regardless of what the rules 
say, the laws say they value 

1288
01:03:40,800 --> 01:03:43,520
free speech. 
You'll see that getting eroded 

1289
01:03:43,520 --> 01:03:46,520
for people in out groups, 
immigrants, people on visas. 

1290
01:03:46,560 --> 01:03:50,760
But I don't think you'll ever 
see a world where American, the 

1291
01:03:50,760 --> 01:03:52,800
American people as a culture 
will will say, yes, we were 

1292
01:03:52,800 --> 01:03:55,680
willing to take we we're willing
to curtail free speech to, to, 

1293
01:03:55,680 --> 01:03:57,360
to gain safety. 
That's not going to happen. 

1294
01:03:57,400 --> 01:04:01,320
Whereas I think in Europe and in
the UK that is that is currently

1295
01:04:01,320 --> 01:04:03,520
a debate that's happening and 
you have very powerful factions 

1296
01:04:03,880 --> 01:04:08,000
pushing for less acceptance of 
free speech and more acceptance 

1297
01:04:08,000 --> 01:04:10,960
of governments oversight over 
what people are saying. 

1298
01:04:11,160 --> 01:04:13,000
And I think that that is very, 
very concerning. 

1299
01:04:13,000 --> 01:04:15,400
Cool. 
Thank you for coming on again, 

1300
01:04:15,400 --> 01:04:20,440
Zach. 
I, I, I hope, I hope you're 

1301
01:04:20,440 --> 01:04:22,520
right. 
I mean, I, I share your 

1302
01:04:22,520 --> 01:04:25,720
pessimism with respect to 
Europe. 

1303
01:04:26,200 --> 01:04:31,200
I don't share your optimism on 
on the other side of of the 

1304
01:04:31,200 --> 01:04:34,760
Atlantic, but yeah, your word 
and God's ear. 

1305
01:04:35,880 --> 01:04:38,680
Thank you. 
Just just to be clear, I mean, 

1306
01:04:38,680 --> 01:04:41,280
I'm not based in the UK, North 
America, and I wouldn't say I'm 

1307
01:04:41,280 --> 01:04:43,320
optimistic on America. 
It's just that I think that 

1308
01:04:43,320 --> 01:04:46,120
it's, it's more likely to 
preserve like it's not moving in

1309
01:04:46,120 --> 01:04:47,480
the right direction. 
It's just moving in the wrong 

1310
01:04:47,480 --> 01:04:49,880
direction at a much slower pace 
than the rest of the world, if 

1311
01:04:49,880 --> 01:04:51,240
that makes any sense. 
I'm not sure I call that 

1312
01:04:51,240 --> 01:04:54,000
optimism. 
Cool. 

1313
01:04:54,720 --> 01:04:56,400
Thank you, Zach. 
Thanks a lot.

