1
00:00:00,740 --> 00:00:24,740
Hi, Paul, hi, Henry.

2
00:00:25,740 --> 00:00:31,740
Are you able to hear me, Henry?

3
00:00:31,740 --> 00:00:53,740
Awesome.

4
00:00:53,740 --> 00:01:09,740
We need some background music while we're waiting.

5
00:01:09,740 --> 00:01:16,740
Anybody want to do some karaoke?

6
00:01:16,740 --> 00:01:40,740
Are we human or are we dancers?

7
00:01:40,740 --> 00:01:44,740
What up, Paul, Mr. Sports?

8
00:01:44,740 --> 00:01:47,740
Hey, Super, what's up?

9
00:01:47,740 --> 00:01:48,740
Things are going very well.

10
00:01:48,740 --> 00:01:49,740
Oh, that's good.

11
00:01:49,740 --> 00:01:55,740
I always try to join this space, like, immediately, and it always takes, like, a long time.

12
00:01:55,740 --> 00:01:58,740
I've got to reset the app to try multiple times.

13
00:01:58,740 --> 00:01:59,740
I don't know.

14
00:01:59,740 --> 00:02:05,740
But it seems to work when I eventually...

15
00:02:05,740 --> 00:02:09,740
Works fine for me.

16
00:02:09,740 --> 00:02:10,740
Yep.

17
00:02:11,740 --> 00:02:14,740
Anyway, well, welcome to the space.

18
00:02:14,740 --> 00:02:23,740
I think I can only hang around for, like, maybe half an hour, 45 minutes, but here I am.

19
00:02:23,740 --> 00:02:24,740
Busy guy.

20
00:02:24,740 --> 00:02:25,740
Here you are.

21
00:02:25,740 --> 00:02:28,740
Yeah, it's for the Thanksgiving weekend.

22
00:02:28,740 --> 00:02:30,740
So, would you do anything fun?

23
00:02:30,740 --> 00:02:31,740
Sure.

24
00:02:31,740 --> 00:02:32,740
Happy Thanksgiving, everybody.

25
00:02:32,740 --> 00:02:33,740
Happy Thanksgiving to everyone.

26
00:02:33,740 --> 00:02:34,740
Forgot about that.

27
00:02:34,740 --> 00:02:36,740
All right, let's get right into it.

28
00:02:36,740 --> 00:02:38,740
Why does BitVM suck?

29
00:02:38,740 --> 00:02:39,740
Should I start, or should you?

30
00:02:39,740 --> 00:02:44,740
Well, okay, why don't you let me give a tiny crack at it, okay?

31
00:02:44,740 --> 00:02:53,740
And if I had to answer that question, I would say one of the things about it that's not great is you don't...

32
00:02:53,740 --> 00:02:58,740
It's hard to call more participants into the set after you set it up.

33
00:02:58,740 --> 00:03:08,740
So you sit down and you set it up, but then the other people, they don't really get the primary benefit out of BitVM if they come later.

34
00:03:08,740 --> 00:03:09,740
They need their own.

35
00:03:09,740 --> 00:03:13,740
So it has the same onboarding problem that most things have.

36
00:03:13,740 --> 00:03:19,740
I would say that's not great, and I would also say, as usual, people refuse to...

37
00:03:19,740 --> 00:03:21,740
This is not specific to BitVM.

38
00:03:21,740 --> 00:03:35,740
As I've said for many, many, many, many years now, about 51% hash rate can always censor some message or another from the blockchain and then manipulate the state of the contract.

39
00:03:35,740 --> 00:03:43,740
And so the question is not if it's vulnerable to miners, but just how.

40
00:03:43,740 --> 00:03:49,740
And at BitVM, it's kind of like you won't know if you've been scammed by miners until after it's too late.

41
00:03:49,740 --> 00:03:52,740
And so I guess that would...

42
00:03:52,740 --> 00:03:57,740
Those would be the two things that I would kind of maybe mention.

43
00:03:57,740 --> 00:03:58,740
What do you think?

44
00:03:58,740 --> 00:04:01,740
Yeah, I fully agree with the second one.

45
00:04:01,740 --> 00:04:06,740
That is a terrible thing about BitVM that I don't see a solution for.

46
00:04:06,740 --> 00:04:14,740
And I think that one of the nice things about BIP300 is that it makes that same procedure take time.

47
00:04:14,740 --> 00:04:23,740
So if a mining pool wants to steal from you with BIP300, and they have a hash rate majority, you can see their attempt well in advance.

48
00:04:23,740 --> 00:04:30,740
And you can go and complain to members of that mining pool and be like, hey, you guys are trying to steal from me, and maybe you guys don't know it.

49
00:04:30,740 --> 00:04:33,740
So go to a different pool that's not trying to steal from me.

50
00:04:33,740 --> 00:04:38,740
And it gives time for a procedure like that to take place, which I think is good.

51
00:04:39,740 --> 00:04:45,740
We see mining pool members are often responsive to pressure from Twitter.

52
00:04:45,740 --> 00:04:49,740
And so maybe I like that.

53
00:04:49,740 --> 00:04:52,740
And I wish that BitVM had something like that.

54
00:04:52,740 --> 00:04:58,740
Not only is it slow, but the idea is that they have to have guilt.

55
00:04:58,740 --> 00:05:05,740
They have to be caught red-handed long before they even know if they will succeed.

56
00:05:05,740 --> 00:05:11,740
So there's still kind of like an aversive angle that they might try and then not succeed and then fail.

57
00:05:11,740 --> 00:05:23,740
So they have a cost of trying to steal, whereas in the others, they can complete the crime before anyone uses it.

58
00:05:23,740 --> 00:05:28,740
I don't currently think it's possible to add anything similar in BitVM.

59
00:05:29,740 --> 00:05:35,740
But I would like to think more about it and see if maybe we can do something with time locks.

60
00:05:35,740 --> 00:05:37,740
Because we have these time lock things in Bitcoin.

61
00:05:37,740 --> 00:05:47,740
Maybe you could make it so that withdrawals have to be announced in advance and then time locked for a certain amount of time and miners have to post the transaction in advance or something.

62
00:05:47,740 --> 00:05:50,740
I don't know. I'm already getting lost. I don't know how you would do it.

63
00:05:50,740 --> 00:05:54,740
I think it could be possible that you have to publish a blob.

64
00:05:54,740 --> 00:05:57,740
It would end up just simulating BIP300.

65
00:05:57,740 --> 00:06:07,740
But it would be something like if you want to withdraw from our magic ceremony, you first must publish the blob, like an op-return blob to Bitcoin.

66
00:06:07,740 --> 00:06:15,740
And then we do more BitVM stuff off-chain with the counting, counting the 13,000.

67
00:06:16,740 --> 00:06:20,740
And then whatever, 13,000 blocks after the blob.

68
00:06:20,740 --> 00:06:31,740
You understand by the blob, I mean something like the withdrawal transaction or the withdrawal transaction ID or something that commits to the set of people withdrawing.

69
00:06:31,740 --> 00:06:35,740
I think you just put that blob on first, then do more BitVM stuff.

70
00:06:36,740 --> 00:06:45,740
And then part of the BitVM can trigger a catastrophic loss if the withdrawal is done any other way or something like that.

71
00:06:45,740 --> 00:06:48,740
I don't know. I haven't really given it a lot of thought.

72
00:06:48,740 --> 00:06:50,740
Right. I haven't either.

73
00:06:50,740 --> 00:06:53,740
But that's one of the best things about BIP300.

74
00:06:53,740 --> 00:07:01,740
And if there's a way to do something, even if it's not as good, but something that approaches that in some way or gets us closer, that would be ideal.

75
00:07:02,740 --> 00:07:05,740
Because that's one of my favorite things about BIP300.

76
00:07:05,740 --> 00:07:20,740
So your other objection was that the other reason you think it sucks, or could suck, is that it's hard to add people in to the verifier set after the chain's been running for six years.

77
00:07:20,740 --> 00:07:23,740
And then someone's like, I would like to peg in, but I want to be one of the validators.

78
00:07:23,740 --> 00:07:27,740
They're not going to just redo all the pre-signed transactions and everything for you.

79
00:07:28,740 --> 00:07:34,740
So one thing with that, you could actually do that.

80
00:07:34,740 --> 00:07:42,740
You could have it so that anyone can decide they want to be a validator, maybe post some collaterals to prove that they're not joking.

81
00:07:42,740 --> 00:07:46,740
And then you just do that.

82
00:07:46,740 --> 00:07:54,740
One of the consensus rules of the sidechains is if somebody goes through this procedure and says they want to be a validator, everyone's got to do that.

83
00:07:54,740 --> 00:07:56,740
Everyone's got to re-sign all the things.

84
00:07:56,740 --> 00:08:02,740
Otherwise, if they don't, then that's considered a consensus failure and the validator set loses their pledge.

85
00:08:02,740 --> 00:08:04,740
So that's an option.

86
00:08:04,740 --> 00:08:05,740
You could do that.

87
00:08:05,740 --> 00:08:13,740
But another thing is that I don't think even that's necessary, because what you could do instead is you could make a contract with one of the existing validators.

88
00:08:14,740 --> 00:08:29,740
And you could say something like, I want to make a contract with you that if I can prove that I submitted a valid withdrawal request and it wasn't processed within X number of blocks, then you're going to lose your money.

89
00:08:29,740 --> 00:08:31,740
Because that means you didn't do your job.

90
00:08:31,740 --> 00:08:38,740
You didn't force the prover to give me a withdrawal or to send me my money.

91
00:08:39,740 --> 00:08:50,740
And so you could actually, I think, without making everything be re-signed, just make a second contract like a derivative contract where you're making an agreement with one of the validators instead.

92
00:08:50,740 --> 00:09:01,740
And if none of the validators will make that contract with you, then they're probably trying to scam you because they don't want to be held accountable and they don't actually want to do their job and make sure that everyone gets their withdrawals.

93
00:09:02,740 --> 00:09:04,740
Well, those are two very interesting examples.

94
00:09:04,740 --> 00:09:11,740
But I think the – so let's take the second one first.

95
00:09:11,740 --> 00:09:18,740
It's kind of like you have to meet with someone who is in the set, and then they have to do something with you.

96
00:09:18,740 --> 00:09:21,740
They have to agree to something.

97
00:09:21,740 --> 00:09:29,740
I guess you could standardize all of that, but it's kind of like – these are kind of like – let me try to phrase it like this.

98
00:09:30,740 --> 00:09:35,740
You need their consent to join the set.

99
00:09:35,740 --> 00:09:39,740
And if you don't get it, then of course you could have some kind of inference, as you say.

100
00:09:39,740 --> 00:09:50,740
You could say, well, since no one will give me consent, I infer that 100% of these people are doing the wrong thing.

101
00:09:50,740 --> 00:09:55,740
But you have to kind of like – you have to do this interactive ceremony and then conclude something.

102
00:09:56,740 --> 00:09:59,740
So it's not – it's kind of like if they agree.

103
00:09:59,740 --> 00:10:00,740
Sure.

104
00:10:00,740 --> 00:10:05,740
Pegging in is always – you always have to be online in order to peg into a sidechain.

105
00:10:05,740 --> 00:10:16,740
So if one of the validators has to be online too, well, that's natural anyway because that's part of their job is to be online and be available.

106
00:10:16,740 --> 00:10:21,740
And it's part of their job to extend the validator set to whoever wants.

107
00:10:22,740 --> 00:10:29,740
Like they have just a server and they just – when people want to join as a sub-validator or whatever, they just –

108
00:10:33,740 --> 00:10:42,740
So the first example was – that you gave was that you write it into the rules of the first set that the set can expand.

109
00:10:43,740 --> 00:10:57,740
But that's also not really what I had in mind because the – allowing the set to expand and re-signing everything, that kind of – now you're vulnerable to that person going AWOL, I would think.

110
00:10:57,740 --> 00:11:02,740
And so you don't want to have re-signing being done.

111
00:11:04,740 --> 00:11:05,740
But yeah, I don't know.

112
00:11:05,740 --> 00:11:10,740
I mean, I think I guess what you're saying makes some sense, but I'm just saying that this is part of the project is that –

113
00:11:10,740 --> 00:11:13,740
so like when I think of BitVM, I think two people sit down and they play chess.

114
00:11:14,740 --> 00:11:17,740
And then one of them wins some money from the other.

115
00:11:17,740 --> 00:11:22,740
And of course, it can be – the chess could be anything of arbitrary complexity.

116
00:11:23,740 --> 00:11:34,740
But it's like the two people sat down and they're the ones who are going to zero out all of the different logic gates.

117
00:11:35,740 --> 00:11:54,740
And so I would just imagine – isn't there like a – I'm not very familiar with the details, but isn't there like an exponential blob of state that has to be zeroed out in advance if you start messing with the sets?

118
00:11:55,740 --> 00:12:14,740
There does be – if everyone has to re-sign everything, then you can't have a validator set too large because it just becomes a combinatorial explosion for everyone to send each other like nonces and stuff that –

119
00:12:15,740 --> 00:12:24,740
if you have to send your nonces to – you have to send 1,000 different nonces to 1,000 different people, then each of them has to send 1,000 different nonces to 1,000 different people, and you have to all validate all that stuff.

120
00:12:25,740 --> 00:12:28,740
And at some point, it becomes really difficult to do.

121
00:12:29,740 --> 00:12:33,740
And you have to do that for every pre-signed transaction of which there might be hundreds.

122
00:12:34,740 --> 00:12:40,740
If you're going to – or tens of thousands if you're going to have a long-lasting – if you want to have a long-lasting sidechain.

123
00:12:41,740 --> 00:12:44,740
So that could be a lot to do.

124
00:12:45,740 --> 00:12:47,740
And yeah, the smaller the set, the better.

125
00:12:48,740 --> 00:12:54,740
So unless we get covenants or some other form of covenants than the ones we already have.

126
00:12:55,740 --> 00:12:58,740
Yeah. How do you think that that would improve at the –

127
00:13:00,740 --> 00:13:03,740
Well, with covenants, you get rid of all that pre-signing stuff.

128
00:13:03,740 --> 00:13:12,740
So without – I mean, the only form of covenants we currently have, one of the existing forms we have, is multisig, where you get –

129
00:13:13,740 --> 00:13:32,740
if a bunch of people create a transaction or a set of pre-signed transactions, you can't – the money is definitely going to flow through that pre-signed set of transactions unless everyone in the set agrees to break the covenant, the terms of the agreement.

130
00:13:33,740 --> 00:13:42,740
So that's pretty good, but it's – like I said, if there's a lot of people involved, the more people you add, the more of a combinatorial explosion you get.

131
00:13:43,740 --> 00:13:44,740
Covenants remove all that.

132
00:13:45,740 --> 00:13:49,740
With covenants, you can just create the set of pre-signed – well, it's not even pre-signed.

133
00:13:50,740 --> 00:13:56,740
You just create the set of transactions, you embed them in the covenant, and you say, okay, this is – if we put money into this address, it has to flow through this thing.

134
00:13:56,740 --> 00:14:03,740
There's no – like the consensus rules of Bitcoin enforce that instead of needing signatures from a bunch of covenant – or from a bunch of multisig members.

135
00:14:04,740 --> 00:14:05,740
And that's better.

136
00:14:06,740 --> 00:14:07,740
Then you don't have to pre-sign everything.

137
00:14:08,740 --> 00:14:13,740
You can just show that this is the rules, and everyone can validate that and then say, okay, I agree.

138
00:14:14,740 --> 00:14:15,740
Let's fund this address.

139
00:14:16,740 --> 00:14:17,740
So that's way better.

140
00:14:18,740 --> 00:14:21,740
It just completely removes that pain point.

141
00:14:22,740 --> 00:14:25,740
Does that make sense?

142
00:14:26,740 --> 00:14:27,740
It does.

143
00:14:28,740 --> 00:14:33,740
Well, that's a very neat idea, of course.

144
00:14:34,740 --> 00:14:35,740
I mean, what would be your favorite?

145
00:14:36,740 --> 00:14:44,740
Because I know that people have very strong opinions on CTV, OP_CAT, whatever, TxHash.

146
00:14:45,740 --> 00:14:51,740
Probably most normal people listening have no idea what the differences are.

147
00:14:51,740 --> 00:14:55,740
But we should at least – should people at least put their favorite?

148
00:14:56,740 --> 00:15:01,740
Should we have the convention where we have an emoji for each covenant opcode, like the cat?

149
00:15:02,740 --> 00:15:04,740
Definitely have hats that we sell.

150
00:15:05,740 --> 00:15:16,740
I would love to – one of my favorite things about the Taproot upgrade was when that was going through, there was this meme that went around on every Bitcoin podcast, and on Twitter too, that was like, everyone agrees we want Taproot.

151
00:15:17,740 --> 00:15:18,740
The only question is how do we activate it?

152
00:15:18,740 --> 00:15:20,740
And I thought that was such a genius move.

153
00:15:21,740 --> 00:15:28,740
Whoever came up with that meme completely shifted the narrative away from whether Taproot was good to something that no one cares about.

154
00:15:29,740 --> 00:15:31,740
And so Taproot sailed through easily.

155
00:15:32,740 --> 00:15:33,740
And so I would love to do something like that.

156
00:15:34,740 --> 00:15:35,740
I would love to create the meme.

157
00:15:36,740 --> 00:15:37,740
Everyone agrees we're going to get Opctv.

158
00:15:38,740 --> 00:15:39,740
The only question is what comes with it.

159
00:15:40,740 --> 00:15:42,740
Do we also add in any Prevow?

160
00:15:43,740 --> 00:15:44,740
Do we also add in ChexSignature or Stag?

161
00:15:45,740 --> 00:15:46,740
Do we also add in OP_CAT?

162
00:15:46,740 --> 00:15:47,740
That would be cool.

163
00:15:48,740 --> 00:15:49,740
I would like that.

164
00:15:50,740 --> 00:15:51,740
But I don't make these types of decisions.

165
00:15:52,740 --> 00:15:54,740
So yeah, maybe you can start it, Paul.

166
00:15:55,740 --> 00:15:58,740
You go ahead and start saying it, and then maybe it will be true.

167
00:15:59,740 --> 00:16:00,740
The meme craft.

168
00:16:01,740 --> 00:16:03,740
I should say something like, OP_CAT is the worst thing ever.

169
00:16:04,740 --> 00:16:05,740
It's an attack on Bitcoin.

170
00:16:06,740 --> 00:16:09,740
And then it will reverse psychology people.

171
00:16:10,740 --> 00:16:18,740
Well, you know, it's interesting because this is what people said about 1.19, not to go into too much pointless BIP drama.

172
00:16:19,740 --> 00:16:25,740
Although in a way the pointless BIP drama is the most important thing happening in Bitcoin right now.

173
00:16:26,740 --> 00:16:32,740
So maybe we should just refuse to talk about anything else until this subject is dealt with in the appropriate way.

174
00:16:33,740 --> 00:16:40,740
But 1.19 is another thing where like actually it was the case that exactly as the meme you had said before said,

175
00:16:41,740 --> 00:16:44,740
where people actually, everyone did really want CTV.

176
00:16:45,740 --> 00:16:47,740
And the only question was how to activate it.

177
00:16:48,740 --> 00:16:50,740
The same with 1.18, 1.18, 1.19.

178
00:16:51,740 --> 00:16:53,740
And the difference is that 1.19, Jeremy tried to actually activate it.

179
00:16:54,740 --> 00:16:58,740
And then it was, now there's a pointless delay for two years, I suppose now.

180
00:16:59,740 --> 00:17:00,740
I don't know exactly when it was.

181
00:17:00,740 --> 00:17:01,740
Was it, does anyone know?

182
00:17:02,740 --> 00:17:03,740
Was it April of last year?

183
00:17:04,740 --> 00:17:05,740
It felt like it was right after Taproot.

184
00:17:06,740 --> 00:17:07,740
Yeah.

185
00:17:07,740 --> 00:17:08,740
November 2021.

186
00:17:09,740 --> 00:17:10,740
Yeah.

187
00:17:10,740 --> 00:17:13,740
I think at some point he got the impression that right after Taproot they were going to do CTV.

188
00:17:14,740 --> 00:17:15,740
And then, so he just tried to do it.

189
00:17:16,740 --> 00:17:17,740
Why not do it?

190
00:17:18,740 --> 00:17:19,740
Yeah.

191
00:17:19,740 --> 00:17:20,740
Yeah.

192
00:17:20,740 --> 00:17:26,740
So that was, for those of you who don't know, kind of a pointless disaster where Jeremy Rubin, the creator,

193
00:17:27,740 --> 00:17:30,740
ended up just quitting Bitcoin altogether over this activation drama.

194
00:17:31,740 --> 00:17:35,740
And then, you know, you could see that as time has gone on, 1.19 has become more popular.

195
00:17:36,740 --> 00:17:40,740
And no one has a problem with the content of 1.19.

196
00:17:41,740 --> 00:17:45,740
I think the activation, it just brings out the worst in people because everyone wants to think,

197
00:17:46,740 --> 00:17:50,740
you know, you've heard that phrase, success has many fathers, failure is an orphan.

198
00:17:51,740 --> 00:17:53,740
Everyone wants to be like, this succeeded because of me.

199
00:17:53,740 --> 00:17:56,740
Because my node signaled for Taproot.

200
00:17:57,740 --> 00:17:58,740
And so, I don't know.

201
00:17:59,740 --> 00:18:00,740
I mean, that's just my guess.

202
00:18:01,740 --> 00:18:03,740
But for some reason, the activation is miserable.

203
00:18:04,740 --> 00:18:05,740
And I actually hope that.

204
00:18:06,740 --> 00:18:10,740
I think what we should get going is a different meme where something along the lines of,

205
00:18:11,740 --> 00:18:16,740
we need to have more people take responsibility for Bitcoin succeeding.

206
00:18:17,740 --> 00:18:23,740
And we need them to just say, we can't have people hide behind this crap about like,

207
00:18:24,740 --> 00:18:26,740
what do the people want or what does, you know.

208
00:18:27,740 --> 00:18:28,740
Because...

209
00:18:29,740 --> 00:18:31,740
That meme could work at all of your house.

210
00:18:32,740 --> 00:18:36,740
Only if in order to prove that you're doing something about Bitcoin, you don't actually have to do anything.

211
00:18:37,740 --> 00:18:40,740
Like just set a flag or something, like virtue signaling.

212
00:18:41,740 --> 00:18:44,740
And then that means you're one of the good guys.

213
00:18:44,740 --> 00:18:46,740
Because as long as you don't actually have to do anything, then that can succeed.

214
00:18:47,740 --> 00:18:50,740
But if you actually need people to do something, then they're not going to want to do it.

215
00:18:51,740 --> 00:18:57,740
The irony of the soft fork is that as classically conceived and as implemented today,

216
00:18:58,740 --> 00:19:01,740
see, it's weird because actually I think Taproot and especially SegWit,

217
00:19:02,740 --> 00:19:05,740
those are very rare cases, in my humble opinion.

218
00:19:06,740 --> 00:19:07,740
They're very unusual.

219
00:19:08,740 --> 00:19:12,740
But most other things like repurposing the opcode or just turning OP_CAT back on,

220
00:19:12,740 --> 00:19:17,740
or it was on then off and then turned back on again via opnop.

221
00:19:18,740 --> 00:19:23,740
All of those, the regular user really does not need to do anything.

222
00:19:24,740 --> 00:19:26,740
It's only 51% of miners that must upgrade.

223
00:19:27,740 --> 00:19:29,740
And everyone else can keep using the old version of the software,

224
00:19:30,740 --> 00:19:34,740
which is the fact that that's even possible is kind of remarkable and almost magical.

225
00:19:35,740 --> 00:19:36,740
But I just wanted to point out...

226
00:19:37,740 --> 00:19:40,740
But that goes against the meme, you know, everyone needs to take responsibility.

227
00:19:40,740 --> 00:19:42,740
If you want to do that, you've got to give them something so that they can say,

228
00:19:43,740 --> 00:19:45,740
I took responsibility, I clicked the button.

229
00:19:46,740 --> 00:19:47,740
Right. You're right about that.

230
00:19:48,740 --> 00:19:51,740
Well, I think one thing would be if you do the UASF date,

231
00:19:52,740 --> 00:19:58,740
where it's like inevitable UASF day and then if hashrate signals, it's earlier,

232
00:19:59,740 --> 00:20:02,740
then you are doing something because you are...

233
00:20:04,048 --> 00:20:08,248
threatening to disconnect from the network if it doesn't...

234
00:20:08,248 --> 00:20:11,048
We're getting away from the topic of why BitVM sucks.

235
00:20:11,848 --> 00:20:14,448
Do you want to get... I have some additional thoughts.

236
00:20:14,948 --> 00:20:17,448
Because I really thought that one was about not being able to join.

237
00:20:17,448 --> 00:20:18,648
All right, let's hear some more.

238
00:20:20,148 --> 00:20:24,648
Hang on a second. You said you really thought that one of them was...

239
00:20:25,248 --> 00:20:27,347
I thought not being able to join was real.

240
00:20:27,347 --> 00:20:31,048
And then your defense of it was something like you can write into the rules that

241
00:20:31,648 --> 00:20:36,847
the people are forced to take anyone who makes an envoy of some form.

242
00:20:37,847 --> 00:20:39,048
And I was like, that doesn't sound great.

243
00:20:39,048 --> 00:20:45,448
And then you said also you can subcontract, you can go to each member of the set and say,

244
00:20:45,948 --> 00:20:47,948
I also want to join this set with you.

245
00:20:48,948 --> 00:20:55,948
I demand that you hold a gun to your own head that will go off if you do not allow me to join.

246
00:20:56,847 --> 00:20:58,347
These are kind of like not really what I was...

247
00:20:59,048 --> 00:21:03,948
Doesn't this dilute the kind of the core value proposition of BitVM,

248
00:21:03,948 --> 00:21:06,847
which is like two people sit down and they can't cheat each other

249
00:21:06,847 --> 00:21:10,448
after sitting down to play chess for $5, $5 to the winner.

250
00:21:10,448 --> 00:21:14,647
What if you could... My offer was, I want you to hold a gun to your head.

251
00:21:15,048 --> 00:21:16,147
I don't want you to pull the trigger.

252
00:21:16,147 --> 00:21:18,348
In fact, if you don't pull the trigger, I'll give you a dollar.

253
00:21:19,048 --> 00:21:23,048
But if you cheat, if you cheat, if you don't do it, you know,

254
00:21:23,848 --> 00:21:27,548
if you don't do the job you signed up for, I get to pull the trigger.

255
00:21:28,647 --> 00:21:29,747
I think that would be a good deal.

256
00:21:29,747 --> 00:21:33,448
Yeah, this would be like the holy grail of not only game theory,

257
00:21:33,448 --> 00:21:41,348
but probably just like law or like all legal fundamentalism or something, you know.

258
00:21:41,348 --> 00:21:42,747
So this would be quite a...

259
00:21:43,048 --> 00:21:45,247
To say nothing of mechanism design and game theory,

260
00:21:45,247 --> 00:21:50,348
this would be like a revolution in contract law.

261
00:21:51,247 --> 00:21:52,548
Well, I like BitVM.

262
00:21:53,448 --> 00:21:54,548
I'm worried about...

263
00:21:55,348 --> 00:21:56,747
I think it's all related.

264
00:21:56,747 --> 00:21:59,247
Like, it's all related, is it not?

265
00:21:59,247 --> 00:22:01,747
Because it's kind of like that's what Bitcoin is also.

266
00:22:01,747 --> 00:22:05,448
Bitcoin says you can join our network and connect,

267
00:22:06,048 --> 00:22:07,448
but there's things you can't do.

268
00:22:07,448 --> 00:22:09,348
You can't spend money you don't have

269
00:22:09,747 --> 00:22:12,148
or the signature for that's already been spent.

270
00:22:12,648 --> 00:22:15,548
You can't create more than 21 million coins.

271
00:22:16,048 --> 00:22:16,548
You can't...

272
00:22:16,548 --> 00:22:18,247
So this is what Bitcoin...

273
00:22:18,747 --> 00:22:21,247
And I had a tiny little presentation about this in 2016.

274
00:22:21,247 --> 00:22:22,947
For anyone who's interested, you can look it up.

275
00:22:22,947 --> 00:22:24,348
It's in drivechain.info.

276
00:22:24,848 --> 00:22:25,848
Literature section.

277
00:22:26,148 --> 00:22:27,548
The scam is you have to watch everything.

278
00:22:27,548 --> 00:22:28,548
I'm not going to tell you which one it is,

279
00:22:28,548 --> 00:22:30,747
but to go back to 2016 and you can find some of it.

280
00:22:31,148 --> 00:22:37,348
And everything like, you know, just layer one Bitcoin is a smart contract.

281
00:22:37,348 --> 00:22:38,747
Lightning Network is a smart contract.

282
00:22:38,747 --> 00:22:45,148
So these things are all punching into contract law

283
00:22:45,148 --> 00:22:48,548
and rewriting what's possible,

284
00:22:48,548 --> 00:22:49,747
which is what that is.

285
00:22:49,747 --> 00:22:50,848
I am bullish on that.

286
00:22:50,848 --> 00:22:52,148
And I think that's very inspiring.

287
00:22:52,148 --> 00:22:53,848
And I think that's part of what inspired all of us,

288
00:22:53,848 --> 00:22:55,747
everyone here, to some extent,

289
00:22:56,548 --> 00:23:00,548
to get interested in Bitcoin in the first place.

290
00:23:00,747 --> 00:23:01,648
This idea that...

291
00:23:01,947 --> 00:23:03,548
And it's worth pointing out,

292
00:23:03,548 --> 00:23:04,848
multisig is a perfect example.

293
00:23:04,848 --> 00:23:06,747
You say the only covenant we have is multisig.

294
00:23:07,148 --> 00:23:10,548
multisig is something that Bitcoin did not originally have.

295
00:23:11,048 --> 00:23:14,447
It's something that it only has because of a soft fork.

296
00:23:14,747 --> 00:23:17,447
And that soft fork actually has a bunch of problems, famously.

297
00:23:18,048 --> 00:23:19,947
It has like a...

298
00:23:21,247 --> 00:23:23,848
The most glaring issue is the pointless stack item,

299
00:23:23,848 --> 00:23:24,747
which is simply an error.

300
00:23:24,747 --> 00:23:27,048
I thought we had like three of three multisig from the beginning,

301
00:23:27,048 --> 00:23:29,548
or any number of three from the beginning.

302
00:23:29,747 --> 00:23:30,747
Well, that's true.

303
00:23:31,048 --> 00:23:32,648
Actually, in the very beginning,

304
00:23:33,447 --> 00:23:34,648
you're right about that, I think.

305
00:23:34,648 --> 00:23:35,947
I mean, I should actually double check,

306
00:23:35,947 --> 00:23:39,348
but I think Satoshi had a bunch more opcodes running

307
00:23:39,348 --> 00:23:40,447
that were never used.

308
00:23:41,247 --> 00:23:44,348
And then there was a great disabling.

309
00:23:44,947 --> 00:23:46,848
Because you can send directly to a contract,

310
00:23:47,048 --> 00:23:52,648
but there was only a few that were within the relay policy.

311
00:23:53,447 --> 00:23:55,548
I don't think they had those terms back then that we have now,

312
00:23:55,548 --> 00:23:59,247
of like mempool policy versus consensus rules.

313
00:23:59,548 --> 00:24:01,447
But one of the accepted contract types

314
00:24:01,447 --> 00:24:04,247
was that you could send money to three public keys.

315
00:24:04,247 --> 00:24:05,447
Like you could just list them out

316
00:24:05,447 --> 00:24:08,348
and then have the OP check multisig at the end of them.

317
00:24:08,848 --> 00:24:09,548
And it would work,

318
00:24:09,548 --> 00:24:12,548
but it was limited to three, I think, in the beginning.

319
00:24:12,648 --> 00:24:14,848
And then later they came up with beta script hash,

320
00:24:14,947 --> 00:24:16,947
which bucked it up to 15.

321
00:24:19,248 --> 00:24:20,447
That's fascinating.

322
00:24:20,847 --> 00:24:22,548
I mean, I think you might be right.

323
00:24:22,947 --> 00:24:23,847
I want to look into that.

324
00:24:23,847 --> 00:24:25,548
That's a neat idea.

325
00:24:25,548 --> 00:24:27,347
But the point is, we didn't have P2SH,

326
00:24:29,048 --> 00:24:30,648
which is what I was referring to.

327
00:24:37,748 --> 00:24:39,347
I think it's a very quirky example.

328
00:24:39,347 --> 00:24:40,447
We're getting a little off topic again,

329
00:24:40,447 --> 00:24:41,447
but this is an important topic,

330
00:24:41,447 --> 00:24:43,148
which is that it's an important thing

331
00:24:43,748 --> 00:24:48,748
that was like worked on in Bitcoin.

332
00:24:49,148 --> 00:24:50,447
We have the soft fork for.

333
00:24:50,847 --> 00:24:53,148
It's something that fiat currency cannot do.

334
00:24:53,947 --> 00:24:55,447
Like it's almost impossible.

335
00:24:56,148 --> 00:24:57,748
It is possible,

336
00:24:57,748 --> 00:25:00,347
but it's like you'd have to go to the bank and say,

337
00:25:00,648 --> 00:25:02,248
here's all these people we're putting on the account

338
00:25:02,248 --> 00:25:04,048
and you need to have two of them.

339
00:25:04,548 --> 00:25:05,847
And it's very, this is not...

340
00:25:05,847 --> 00:25:07,847
There are banks that offer those policies.

341
00:25:07,847 --> 00:25:09,748
I think my parents had a joint bank account

342
00:25:09,748 --> 00:25:12,248
where they had either one of them could sign the check

343
00:25:12,248 --> 00:25:13,548
and then the bank would cash it.

344
00:25:13,847 --> 00:25:14,548
So that was a one of two.

345
00:25:14,548 --> 00:25:15,347
That's very common.

346
00:25:15,648 --> 00:25:17,447
It was very common to have a one of N.

347
00:25:17,748 --> 00:25:19,648
You can always put someone else on the account

348
00:25:19,748 --> 00:25:21,847
as like an admin on the account.

349
00:25:22,148 --> 00:25:23,148
So that's very common.

350
00:25:23,748 --> 00:25:25,048
Our business has an account.

351
00:25:25,347 --> 00:25:27,048
And two of two is also very common

352
00:25:27,048 --> 00:25:28,447
for joint bank accounts.

353
00:25:28,447 --> 00:25:30,648
You can make it so that you have a joint bank account

354
00:25:30,648 --> 00:25:32,048
that says both of us need to sign

355
00:25:32,148 --> 00:25:33,347
and banks will do that for you.

356
00:25:34,847 --> 00:25:38,648
Right, but it's not really,

357
00:25:39,447 --> 00:25:42,648
you know, in practice, it's not a thing that...

358
00:25:42,648 --> 00:25:43,847
Well, you're right about that.

359
00:25:43,847 --> 00:25:46,847
But the point is like this idea of the...

360
00:25:47,947 --> 00:25:49,947
You have to go and you have to like sign paperwork

361
00:25:49,947 --> 00:25:51,648
and it takes like this setup thing

362
00:25:51,648 --> 00:25:53,548
and it's not like a very big...

363
00:25:56,347 --> 00:25:58,048
It's not, I mean, of course it is possible

364
00:25:58,048 --> 00:25:59,548
with like the law and contracts.

365
00:25:59,548 --> 00:26:00,347
Oh, Robin's here.

366
00:26:00,548 --> 00:26:02,148
Hey, can we get Robin up here?

367
00:26:02,148 --> 00:26:04,048
He can tell you why BitVM sucks.

368
00:26:06,248 --> 00:26:06,847
Robin is here.

369
00:26:07,347 --> 00:26:07,847
Yes.

370
00:26:08,248 --> 00:26:10,048
Well, yeah, all I was trying to say is that...

371
00:26:10,947 --> 00:26:11,648
Okay, great.

372
00:26:11,648 --> 00:26:12,947
Yes, come on up if you wish.

373
00:26:14,347 --> 00:26:15,648
What I was trying to say was just that

374
00:26:15,648 --> 00:26:17,748
the multisig is a cool thing.

375
00:26:19,748 --> 00:26:22,947
It's a big point of differentiation, I think,

376
00:26:22,947 --> 00:26:25,048
between Bitcoin and fiat

377
00:26:25,048 --> 00:26:27,648
where it's like anyone can just get it with a click

378
00:26:28,248 --> 00:26:30,347
in Bitcoin world,

379
00:26:30,347 --> 00:26:31,548
whereas in the fiat world,

380
00:26:31,548 --> 00:26:33,048
you have to do this complicated other thing

381
00:26:33,048 --> 00:26:35,347
that involves the bank doing it for you.

382
00:26:36,347 --> 00:26:41,347
And it's also a case where the soft fork was rushed,

383
00:26:41,347 --> 00:26:43,748
but we probably are happy that we have it now.

384
00:26:44,748 --> 00:26:46,648
Even though it had, despite its problems,

385
00:26:48,748 --> 00:26:50,748
it's better to have it versus nothing,

386
00:26:51,248 --> 00:26:52,847
but it would have been better to have something

387
00:26:52,847 --> 00:26:54,248
that didn't have this problem.

388
00:26:54,248 --> 00:26:57,248
So, yeah, there's a lot of thoughts about that.

389
00:26:59,447 --> 00:27:01,148
So, Robin, I got Paul to say,

390
00:27:01,648 --> 00:27:03,447
correct me if I'm wrong, Paul, this is my impression,

391
00:27:03,648 --> 00:27:07,148
that BitVM is a revolution in contract law

392
00:27:07,847 --> 00:27:11,048
as big as Bitcoin was when Bitcoin came out.

393
00:27:11,048 --> 00:27:16,447
Is that an accurate statement of your case there, Paul?

394
00:27:16,748 --> 00:27:19,447
Well, I was saying that this whole industry

395
00:27:19,447 --> 00:27:23,447
is part of the topic of revolutionizing law.

396
00:27:23,447 --> 00:27:24,548
But I was saying, you said,

397
00:27:24,548 --> 00:27:26,148
if I could hold a gun to my head,

398
00:27:26,548 --> 00:27:27,847
you had the metaphor about the gun.

399
00:27:27,847 --> 00:27:29,347
But I was trying to say that actually

400
00:27:29,347 --> 00:27:30,548
quite a few things are that,

401
00:27:31,048 --> 00:27:33,248
including L1 Bitcoin.

402
00:27:33,447 --> 00:27:37,447
And it touches on everything about how the blockchain works,

403
00:27:37,447 --> 00:27:41,148
which is who, Satoshi realized, apparently,

404
00:27:41,347 --> 00:27:43,248
that in order to advance the state,

405
00:27:43,847 --> 00:27:47,148
you need to have this whole mining concept,

406
00:27:47,148 --> 00:27:48,148
this whole mining game,

407
00:27:48,148 --> 00:27:51,447
because you need to know about who saw which message by when.

408
00:27:52,447 --> 00:27:53,748
People can just ignore messages

409
00:27:53,748 --> 00:27:55,447
and just kind of pocket veto them,

410
00:27:55,447 --> 00:27:58,148
which is not good,

411
00:27:58,148 --> 00:28:02,347
because, of course, if you can censor something,

412
00:28:02,347 --> 00:28:04,548
then it can make it look like someone is not participating.

413
00:28:05,648 --> 00:28:08,048
And so Satoshi's idea with the mining

414
00:28:08,048 --> 00:28:10,648
and each message has a transaction fee and all that,

415
00:28:11,048 --> 00:28:13,847
that seems to be tightly linked

416
00:28:14,447 --> 00:28:17,347
to whether or not it can actually deliver

417
00:28:17,447 --> 00:28:19,447
on the promise of the smart contract.

418
00:28:19,748 --> 00:28:20,947
It sounded better earlier.

419
00:28:21,548 --> 00:28:23,548
My version was better.

420
00:28:23,548 --> 00:28:24,548
Now you're making it sound like,

421
00:28:24,548 --> 00:28:26,947
oh, the revolution already happened 15 years ago.

422
00:28:28,648 --> 00:28:29,947
Well, apparently not, though,

423
00:28:29,947 --> 00:28:34,148
because we have yet to achieve the full...

424
00:28:34,347 --> 00:28:36,647
You know, it will have happened

425
00:28:36,647 --> 00:28:39,748
when every type of relationship

426
00:28:41,347 --> 00:28:42,948
flows through something,

427
00:28:42,948 --> 00:28:44,847
like you were saying with the gun.

428
00:28:46,347 --> 00:28:48,548
Anyway, maybe Super was going to give a list

429
00:28:48,548 --> 00:28:50,948
of other reasons why BitVM sucks.

430
00:28:50,948 --> 00:28:52,448
Yeah, I was.

431
00:28:52,448 --> 00:28:54,147
I had this whole cool thing.

432
00:28:55,048 --> 00:28:57,647
So who knows better than you and Robin?

433
00:28:57,948 --> 00:28:58,847
Totally not me.

434
00:28:58,847 --> 00:29:00,147
Well, Robin knows better than me,

435
00:29:00,147 --> 00:29:03,248
because the reasons I find that it sucks

436
00:29:03,248 --> 00:29:04,347
are probably fixable.

437
00:29:04,347 --> 00:29:05,748
Robin probably knows how to fix them.

438
00:29:06,147 --> 00:29:08,748
But last week, I did a...

439
00:29:09,147 --> 00:29:11,948
Well, someone else made an implementation of SHA-256

440
00:29:11,948 --> 00:29:15,448
that works in a slightly modified version

441
00:29:15,448 --> 00:29:18,347
of my BitVM implementation.

442
00:29:18,847 --> 00:29:22,347
And I was ecstatic and ran it on Cygnet,

443
00:29:22,347 --> 00:29:23,548
and it totally worked.

444
00:29:23,548 --> 00:29:25,647
Like, I was able to do a SHA-256 function.

445
00:29:26,647 --> 00:29:28,548
It took my computer about five minutes

446
00:29:28,548 --> 00:29:29,748
to do the processing,

447
00:29:30,248 --> 00:29:32,248
just for a single SHA-256.

448
00:29:32,748 --> 00:29:35,647
And Robin's paper mentions that, like,

449
00:29:35,647 --> 00:29:37,647
if you're doing computation with BitVM,

450
00:29:37,647 --> 00:29:38,748
the off-chain part,

451
00:29:38,748 --> 00:29:40,147
one of the downsides of it is

452
00:29:40,147 --> 00:29:42,448
there's a large amount of off-chain computation

453
00:29:42,448 --> 00:29:43,548
and data transfer.

454
00:29:44,748 --> 00:29:47,347
So, like, I made this, like, five-megabyte bottle

455
00:29:47,347 --> 00:29:48,847
full of hatches and pre-images,

456
00:29:48,847 --> 00:29:51,147
and then, you know, I had to send that to Alice,

457
00:29:51,147 --> 00:29:52,748
who I was also running Atlas.

458
00:29:52,748 --> 00:29:54,847
I was both Alice and Bob, you know.

459
00:29:55,347 --> 00:29:58,847
And, but Bob had to, like, create the file,

460
00:29:58,847 --> 00:30:00,948
then download it, send it to Alice,

461
00:30:00,948 --> 00:30:02,147
and then Alice had to upload it,

462
00:30:02,147 --> 00:30:04,448
and, well, not upload it,

463
00:30:04,448 --> 00:30:06,748
but just run it, run it through a program.

464
00:30:06,748 --> 00:30:10,248
And it took my computer five minutes

465
00:30:10,248 --> 00:30:11,548
to actually run the program.

466
00:30:12,948 --> 00:30:13,948
So that kind of sucked,

467
00:30:13,948 --> 00:30:16,448
and it was just for a silly little SHA-256 function.

468
00:30:17,147 --> 00:30:19,647
So since then, I've been looking at

469
00:30:20,748 --> 00:30:24,347
porting an actual CPU to Bitcoin, or to BitVM.

470
00:30:24,847 --> 00:30:28,448
Because the SHA-256 function is more complex

471
00:30:28,448 --> 00:30:30,347
than an actual CPU.

472
00:30:30,347 --> 00:30:31,647
So I was like, if we can do that,

473
00:30:31,647 --> 00:30:32,748
if we can do SHA-256,

474
00:30:32,748 --> 00:30:34,748
we should be able to do a CPU,

475
00:30:34,748 --> 00:30:36,147
and, like, do a state change.

476
00:30:37,347 --> 00:30:38,847
So I've been looking into them,

477
00:30:38,847 --> 00:30:42,347
and the first one I looked at is, like, RISC-V,

478
00:30:42,347 --> 00:30:44,048
which is a computer that has,

479
00:30:45,948 --> 00:30:48,147
it's a free and open-source computer,

480
00:30:48,147 --> 00:30:53,147
and there's a lot of tooling around making it,

481
00:30:53,147 --> 00:30:54,248
around simulating it,

482
00:30:54,248 --> 00:30:56,147
because people use it for other things,

483
00:30:56,147 --> 00:31:00,147
like simulating Linux on other systems,

484
00:31:01,847 --> 00:31:03,448
by simulating the hardware it runs on.

485
00:31:04,048 --> 00:31:05,647
So I started looking at RISC-V,

486
00:31:05,647 --> 00:31:08,347
and it's too complex for me.

487
00:31:08,347 --> 00:31:09,647
It's a 32-bit computer,

488
00:31:10,548 --> 00:31:14,347
and it's got, like, this insane clock speed

489
00:31:14,347 --> 00:31:15,248
that it's supposed to run at,

490
00:31:15,248 --> 00:31:18,147
and it's just, I had a hard time

491
00:31:18,147 --> 00:31:19,347
wrapping my mind around it.

492
00:31:19,948 --> 00:31:21,548
So I started looking for a simpler computer,

493
00:31:21,548 --> 00:31:24,048
and I thought, what's the simplest computer I know of?

494
00:31:24,048 --> 00:31:25,248
And I thought a Game Boy

495
00:31:25,248 --> 00:31:27,948
is the simplest programmable computer that I know of.

496
00:31:28,847 --> 00:31:30,748
So I looked up, like, the Game Boy schematics,

497
00:31:30,748 --> 00:31:33,048
and I found that, you know, it's a very simple computer.

498
00:31:33,048 --> 00:31:34,748
It only has 3,000 logic gates,

499
00:31:34,748 --> 00:31:38,847
which is, like, two orders of magnitude less

500
00:31:38,847 --> 00:31:40,248
than the SHA-256 function,

501
00:31:40,248 --> 00:31:42,748
which is 100,000, more than 100,000 logic gates.

502
00:31:44,048 --> 00:31:45,647
So I started looking into that,

503
00:31:45,647 --> 00:31:46,748
downloaded the schematic,

504
00:31:47,948 --> 00:31:49,347
tried to, I found some people

505
00:31:49,347 --> 00:31:51,748
who had already implemented a simulation of it,

506
00:31:52,448 --> 00:31:54,748
and even that is too complicated

507
00:31:54,748 --> 00:31:57,847
because the Game Boy not only has a CPU

508
00:31:57,847 --> 00:31:59,347
that it uses for state changes,

509
00:31:59,347 --> 00:32:02,647
but it also has a separate GPU that it passes stuff to,

510
00:32:02,647 --> 00:32:03,647
and then that thing operates,

511
00:32:03,647 --> 00:32:05,248
so you have to emulate both of them

512
00:32:05,248 --> 00:32:08,048
if you want to actually run Game Boy programs.

513
00:32:09,048 --> 00:32:10,847
And then it also has a sound card

514
00:32:10,847 --> 00:32:12,048
that I wouldn't even want.

515
00:32:12,048 --> 00:32:13,147
I would want to just strip that out,

516
00:32:13,147 --> 00:32:14,647
but then you have to do something with the wires

517
00:32:14,647 --> 00:32:16,448
that are supposed to connect to the sound card.

518
00:32:17,048 --> 00:32:19,748
You have to, like, simulate them going into the void somehow.

519
00:32:20,647 --> 00:32:22,248
And it was just really hard.

520
00:32:22,248 --> 00:32:24,248
So I gave up on trying to do the Game Boy

521
00:32:24,248 --> 00:32:26,847
and looked for a yet simpler computer,

522
00:32:27,448 --> 00:32:30,347
and I found this 8-bit computer

523
00:32:31,647 --> 00:32:35,147
made by a guy on this program called Logisim,

524
00:32:35,147 --> 00:32:37,448
which is, like, a tool for simulating logical circuits,

525
00:32:37,448 --> 00:32:38,248
and people play with it.

526
00:32:38,248 --> 00:32:41,548
Like, they make circuits and then share them online.

527
00:32:42,048 --> 00:32:44,248
And somebody made an 8-bit CPU for it

528
00:32:44,248 --> 00:32:45,448
that was extremely simple.

529
00:32:45,448 --> 00:32:48,548
It only has 256 bytes of RAM,

530
00:32:49,248 --> 00:32:51,548
and that's in a couple of memory registers,

531
00:32:51,548 --> 00:32:53,147
and that's, like, the only things

532
00:32:53,147 --> 00:32:54,847
that are inputs to the program are those,

533
00:32:55,248 --> 00:32:56,048
so you don't have to worry about, like,

534
00:32:56,048 --> 00:32:57,347
keyboard presses or anything.

535
00:32:58,847 --> 00:33:00,347
It's an 8-bit CPU,

536
00:33:00,347 --> 00:33:01,948
and it runs at, like, 1 megahertz.

537
00:33:02,248 --> 00:33:03,548
So I was like, I think I can do that.

538
00:33:03,948 --> 00:33:05,948
So I started doing some napkin math today

539
00:33:06,347 --> 00:33:07,847
as I was beginning work

540
00:33:07,847 --> 00:33:10,248
on implementing this thing for Bitcoin.

541
00:33:10,948 --> 00:33:12,847
And with 256 bytes of RAM,

542
00:33:13,948 --> 00:33:16,448
if I wanted to send somebody a program,

543
00:33:16,647 --> 00:33:20,548
I would have to send them a hash pre-image

544
00:33:20,548 --> 00:33:21,647
for each byte of RAM

545
00:33:21,647 --> 00:33:23,147
because those are the inputs to the circuit.

546
00:33:24,048 --> 00:33:27,347
And so you have to multiply the 256 bytes by 8

547
00:33:27,347 --> 00:33:29,048
to get the number of bits you have to send them.

548
00:33:29,448 --> 00:33:33,248
And then you have to multiply that number by 256 again

549
00:33:33,647 --> 00:33:37,647
because you're sending them a hash for each bit.

550
00:33:38,347 --> 00:33:39,647
In fact, you're sending them two hashes.

551
00:33:40,147 --> 00:33:42,048
So it gets into the realm of just to, like,

552
00:33:42,048 --> 00:33:43,548
send them a program that you want to run

553
00:33:43,548 --> 00:33:46,248
through this copy of a CPU.

554
00:33:46,647 --> 00:33:49,748
You have to send them somewhere around 50 megabytes of data.

555
00:33:50,847 --> 00:33:52,347
And that's not including, you know,

556
00:33:52,347 --> 00:33:53,748
for every logic gate in the circuit,

557
00:33:53,748 --> 00:33:56,048
of which this one has something like 3,000,

558
00:33:57,448 --> 00:34:00,847
you have to send them three hashes for each of those

559
00:34:00,847 --> 00:34:03,147
and then, or six hashes for each of those

560
00:34:03,147 --> 00:34:04,147
and then three pre-images.

561
00:34:04,847 --> 00:34:07,048
So it gets to be this huge, like,

562
00:34:08,948 --> 00:34:10,248
that's just for one clock cycle.

563
00:34:10,448 --> 00:34:12,847
So if you want to do anything meaningful with a computer,

564
00:34:13,147 --> 00:34:14,748
it has to run for multiple clock cycles.

565
00:34:15,647 --> 00:34:17,548
And if you wanted to run the thing for a second,

566
00:34:17,548 --> 00:34:19,248
I calculated you would have to send them

567
00:34:19,248 --> 00:34:20,948
somewhere around 18 terabytes,

568
00:34:21,448 --> 00:34:24,147
18 terabytes of data to run the computer for one second,

569
00:34:25,448 --> 00:34:26,847
which sucks.

570
00:34:28,647 --> 00:34:29,948
That's not feasible.

571
00:34:30,448 --> 00:34:32,847
I assume this is because I'm just not a good programmer

572
00:34:32,847 --> 00:34:34,948
and that you maybe don't have to send them

573
00:34:34,948 --> 00:34:37,048
the one logic gates that aren't being used

574
00:34:37,347 --> 00:34:38,448
in that clock cycle.

575
00:34:38,748 --> 00:34:41,647
And maybe you don't have to send them hash pre-images

576
00:34:41,647 --> 00:34:44,347
for bytes of the memory that didn't change.

577
00:34:45,147 --> 00:34:46,948
And maybe you could cut that down considerably.

578
00:34:47,147 --> 00:34:48,647
But my napkin math tells me

579
00:34:48,647 --> 00:34:51,048
in order to run this 8-bit computer for one second,

580
00:34:51,048 --> 00:34:54,347
you'd need to send somewhere around 18 terabytes of data.

581
00:34:54,748 --> 00:34:57,147
And so that's another reason why BitVM sucks.

582
00:34:58,147 --> 00:35:00,248
Robin, you want to correct me on this?

583
00:35:00,748 --> 00:35:03,647
I was wondering if you really need every CPU state.

584
00:35:03,847 --> 00:35:06,347
I mean, you might, maybe people would,

585
00:35:06,347 --> 00:35:07,847
but let's hear from Robin.

586
00:35:07,847 --> 00:35:10,548
But I was imagining, I had that exact thought about,

587
00:35:10,548 --> 00:35:12,548
like, I'm going to play Mario Tennis,

588
00:35:12,548 --> 00:35:14,347
Game Boy Color version against

589
00:35:14,948 --> 00:35:16,748
Super Testnet, and the winner will get

590
00:35:17,647 --> 00:35:18,448
a Bitcoin.

591
00:35:19,147 --> 00:35:19,948
And then I was like,

592
00:35:21,748 --> 00:35:23,448
like, how does that work exactly?

593
00:35:23,448 --> 00:35:25,647
Like, do we simulate every possible?

594
00:35:25,847 --> 00:35:28,048
We're like having a Game Boy Color emulator

595
00:35:28,048 --> 00:35:29,548
and it's going to simulate everything else.

596
00:35:30,448 --> 00:35:32,847
But maybe what you just could do

597
00:35:32,847 --> 00:35:34,847
is you just put in the inputs, you know what I mean?

598
00:35:34,847 --> 00:35:36,748
Like, you just put in the controller inputs.

599
00:35:36,847 --> 00:35:38,448
You just say, at each time,

600
00:35:38,847 --> 00:35:40,847
left, left, left, down, A, you know?

601
00:35:41,048 --> 00:35:42,548
But you also have to give it the ROM.

602
00:35:42,847 --> 00:35:45,548
The cartridge is like 32 kilobytes of data,

603
00:35:46,048 --> 00:35:47,548
which you have to convert into the format

604
00:35:47,548 --> 00:35:50,748
that VM understands, which is several hashes per bit.

605
00:35:51,847 --> 00:35:53,248
So, yeah, well, maybe.

606
00:35:53,248 --> 00:35:54,248
I mean, can't you just,

607
00:35:55,647 --> 00:35:57,048
like, I don't know.

608
00:35:57,048 --> 00:35:57,948
I don't know the details.

609
00:35:57,948 --> 00:35:59,948
But I was wondering about that exact question.

610
00:35:59,948 --> 00:36:01,147
I was like, there's an awful lot of

611
00:36:01,847 --> 00:36:04,548
stuff happening, even in a simple game.

612
00:36:05,748 --> 00:36:07,548
But anyway, hello, Robin.

613
00:36:07,548 --> 00:36:09,548
For every frame of the game,

614
00:36:09,847 --> 00:36:11,147
for every frame of the game,

615
00:36:11,147 --> 00:36:13,147
you need to send what buttons you're pressing

616
00:36:13,147 --> 00:36:14,147
and your opponent would need to send

617
00:36:14,147 --> 00:36:15,248
what buttons they're pressing.

618
00:36:15,448 --> 00:36:15,847
Yeah.

619
00:36:16,048 --> 00:36:17,647
And then run them through the program

620
00:36:17,647 --> 00:36:19,248
and make sure that it is valid.

621
00:36:19,248 --> 00:36:21,647
It's a simple 15 terabytes every second.

622
00:36:21,647 --> 00:36:23,048
We'll just call, you know, we'll get,

623
00:36:23,748 --> 00:36:24,347
I hear,

624
00:36:25,548 --> 00:36:26,948
we'll get Sam

625
00:36:27,548 --> 00:36:28,448
over at OpenAI.

626
00:36:28,448 --> 00:36:31,647
I hear that he is purchasing some hardware in bulk.

627
00:36:31,748 --> 00:36:32,748
So maybe he can

628
00:36:33,748 --> 00:36:36,448
lend some to the Bitcoin community for a good VM.

629
00:36:37,847 --> 00:36:39,347
Well, so when Robin's talking about this,

630
00:36:39,647 --> 00:36:41,548
he's much smarter about this stuff than I am.

631
00:36:41,548 --> 00:36:44,448
And he says that you could run, like, a real computer,

632
00:36:44,448 --> 00:36:46,748
like a big, beefy, 64-bit,

633
00:36:47,248 --> 00:36:48,548
you know, Intel CPU

634
00:36:49,048 --> 00:36:50,847
for only, like, 30 gigabytes

635
00:36:51,248 --> 00:36:52,948
of data transfer.

636
00:36:53,548 --> 00:36:54,448
So I don't,

637
00:36:54,748 --> 00:36:56,147
my math tells me different,

638
00:36:56,548 --> 00:36:58,347
but he's also better at this than I am.

639
00:36:58,347 --> 00:36:58,948
So I'd love,

640
00:36:59,248 --> 00:37:00,748
I don't know if he can speak right now,

641
00:37:00,748 --> 00:37:01,647
but I'd love it if he could.

642
00:37:03,248 --> 00:37:04,048
He is muted.

643
00:37:05,048 --> 00:37:05,647
Robin,

644
00:37:05,647 --> 00:37:06,147
go ahead.

645
00:37:07,448 --> 00:37:09,747
Welcome to the stage as a muted person.

646
00:37:13,348 --> 00:37:15,048
Well, I'm going to keep tinkering away at my version.

647
00:37:15,048 --> 00:37:16,647
No, everybody cannot speak.

648
00:37:17,247 --> 00:37:19,147
Even if I can only get the version that

649
00:37:20,348 --> 00:37:23,147
that runs at this awful speed of 18 gigabytes,

650
00:37:23,147 --> 00:37:24,747
18 terabytes per second,

651
00:37:25,647 --> 00:37:27,448
at least it's a starting point.

652
00:37:27,448 --> 00:37:29,247
And then someone who's smarter can be like,

653
00:37:29,247 --> 00:37:30,948
you idiot, you didn't have to do it this way.

654
00:37:30,948 --> 00:37:32,147
And then they can fix it for me.

655
00:37:33,048 --> 00:37:35,147
Because I'm running all this stuff for the first time.

656
00:37:35,747 --> 00:37:38,147
You know, like how to make 8-bit CPUs

657
00:37:38,147 --> 00:37:40,147
and then convert them between various formats

658
00:37:40,147 --> 00:37:40,948
and simulate them.

659
00:37:41,147 --> 00:37:42,448
I think you don't need,

660
00:37:43,048 --> 00:37:43,848
this is complete,

661
00:37:43,848 --> 00:37:45,048
I'm just totally making this up

662
00:37:45,048 --> 00:37:46,048
and this makes no sense.

663
00:37:46,048 --> 00:37:46,747
And I,

664
00:37:47,048 --> 00:37:48,048
no one should take anything

665
00:37:48,548 --> 00:37:50,348
about what I'm saying seriously anyway,

666
00:37:50,348 --> 00:37:51,448
because I don't even like,

667
00:37:52,848 --> 00:37:54,448
I don't think this is the greatest way

668
00:37:55,048 --> 00:37:57,448
to go versus BIP300, obviously.

669
00:37:57,848 --> 00:37:59,548
But I think that

670
00:38:00,348 --> 00:38:01,348
you could rewrite

671
00:38:01,747 --> 00:38:03,647
Mario Tennis, Game Boy Color,

672
00:38:03,848 --> 00:38:04,448
into like,

673
00:38:04,548 --> 00:38:06,048
you could delete everything

674
00:38:06,048 --> 00:38:07,647
that's not the one specific match

675
00:38:07,848 --> 00:38:09,048
and then you could rewrite it

676
00:38:09,647 --> 00:38:10,348
as just a,

677
00:38:10,448 --> 00:38:10,948
you know,

678
00:38:10,948 --> 00:38:12,747
as like a just a stream of

679
00:38:13,247 --> 00:38:15,147
stuff that could happen in that one.

680
00:38:15,548 --> 00:38:15,948
You know what I mean?

681
00:38:15,948 --> 00:38:18,747
You could like really, really narrowly rewrite the game.

682
00:38:19,247 --> 00:38:20,747
You make a Mario Tennis ASIC.

683
00:38:22,848 --> 00:38:24,548
Very narrowly rewrite it so that

684
00:38:24,948 --> 00:38:26,948
there's only a few interpretations like

685
00:38:27,747 --> 00:38:28,948
of what can happen.

686
00:38:28,948 --> 00:38:30,147
And you have a new game

687
00:38:30,147 --> 00:38:31,548
and then that's the game you play.

688
00:38:31,548 --> 00:38:31,948
Yeah.

689
00:38:31,948 --> 00:38:33,247
And that's basically the route we went

690
00:38:33,247 --> 00:38:34,647
with the SHA-256 function.

691
00:38:34,647 --> 00:38:37,348
Because instead of making a CPU that can run anything,

692
00:38:37,747 --> 00:38:39,147
including SHA-256,

693
00:38:39,147 --> 00:38:40,747
we just wrote the entire circuit out.

694
00:38:41,147 --> 00:38:41,948
And that works.

695
00:38:41,948 --> 00:38:43,747
Like, it's way faster than if we did it on,

696
00:38:43,948 --> 00:38:45,448
you know, this 8-bit CPU.

697
00:38:45,848 --> 00:38:47,848
But it still takes like five minutes

698
00:38:48,147 --> 00:38:48,848
just to run

699
00:38:49,247 --> 00:38:50,348
the SHA-256 function.

700
00:38:50,848 --> 00:38:52,548
You know, like I'm sure all of you are very familiar with

701
00:38:52,548 --> 00:38:53,848
Mario Tennis, Game Boy Color,

702
00:38:53,848 --> 00:38:54,747
which is a great game.

703
00:38:54,747 --> 00:38:56,448
So I'm just going to speak as everyone is.

704
00:38:56,548 --> 00:38:57,048
But it's like,

705
00:38:57,247 --> 00:38:58,448
you just have someone serve

706
00:38:58,448 --> 00:38:59,548
and then everyone volleys.

707
00:38:59,747 --> 00:39:02,048
And then you don't have to keep track of as much of,

708
00:39:02,147 --> 00:39:03,647
you know, the stuff about who wins

709
00:39:04,448 --> 00:39:05,848
a match point or,

710
00:39:05,848 --> 00:39:07,448
you know, a set point or,

711
00:39:07,448 --> 00:39:09,747
you know, game point, match point, set point, etc.

712
00:39:09,747 --> 00:39:10,948
So, because it's just like,

713
00:39:10,948 --> 00:39:12,048
you could like reduce it,

714
00:39:12,147 --> 00:39:13,247
you know, you could like,

715
00:39:13,448 --> 00:39:14,948
you could make a tree of the game

716
00:39:14,948 --> 00:39:15,747
since it's just

717
00:39:16,448 --> 00:39:17,848
someone serves and then you volley

718
00:39:18,048 --> 00:39:19,048
over and over again.

719
00:39:20,048 --> 00:39:20,848
Hopefully it won't,

720
00:39:21,048 --> 00:39:23,348
hopefully you won't have to wait five minutes for each frame.

721
00:39:23,848 --> 00:39:25,848
You don't need the music and the,

722
00:39:25,848 --> 00:39:28,247
you don't even need the music and the graphics for each

723
00:39:29,147 --> 00:39:30,247
step at all, you know,

724
00:39:30,247 --> 00:39:31,048
because you could have the

725
00:39:31,147 --> 00:39:32,647
front end reinterpreted.

726
00:39:33,747 --> 00:39:36,247
So you're turning Mario Tennis into Pong.

727
00:39:36,348 --> 00:39:37,448
You get rid of the graphics,

728
00:39:37,448 --> 00:39:38,647
get rid of the sound.

729
00:39:39,448 --> 00:39:41,147
Well, you'd put it back on later.

730
00:39:41,747 --> 00:39:43,448
Certainly don't need like the music and stuff.

731
00:39:43,448 --> 00:39:44,647
You could just have a Spotify,

732
00:39:45,247 --> 00:39:46,348
group Spotify.

733
00:39:47,948 --> 00:39:49,647
Yeah, you could write Pong.

734
00:39:49,647 --> 00:39:51,348
I mean, it would be a lot easier to write Pong for it

735
00:39:51,348 --> 00:39:53,147
and then skin it to look like Mario Tennis.

736
00:39:55,548 --> 00:39:56,247
Yeah, exactly.

737
00:39:59,241 --> 00:40:03,241
Yeah, I saw Robin, I do a tweet about something about like a modern CPU.

738
00:40:04,241 --> 00:40:05,241
And I was like, wow, really?

739
00:40:07,241 --> 00:40:10,241
Sounds kind of cool. I'm trying to do an ancient CPU.

740
00:40:10,241 --> 00:40:14,241
It's perfect for me. But I mean, at a certain point, it does become

741
00:40:16,241 --> 00:40:20,241
a huge question mark where you think, okay, the computer that I'm going to run

742
00:40:20,241 --> 00:40:23,241
bit VM on is only of a certain size. So

743
00:40:24,241 --> 00:40:28,241
you're going to do all this stuff to like zero out bits

744
00:40:29,241 --> 00:40:32,241
and hash them. You kind of think,

745
00:40:34,241 --> 00:40:37,241
how can it be? You know, isn't it like a Russian dolls situation?

746
00:40:37,241 --> 00:40:39,241
Isn't it just a recursive?

747
00:40:40,241 --> 00:40:44,241
Next thing you know, we'll be simulating a quantum computer on our analog computers.

748
00:40:44,241 --> 00:40:48,241
Right. And then that computer will simulate a million

749
00:40:49,241 --> 00:40:52,241
other computers. And you're like, why does the world, why does planet Earth

750
00:40:52,241 --> 00:40:55,241
even need any more than just one computer at that point?

751
00:40:57,241 --> 00:40:58,241
And there we go. World computer.

752
00:40:59,241 --> 00:41:00,241
Simulate it all. That's where we're at.

753
00:41:01,241 --> 00:41:02,241
So, yeah.

754
00:41:02,241 --> 00:41:05,241
And what else? Do you have a long list other than

755
00:41:06,241 --> 00:41:09,241
the data transfer requirements?

756
00:41:13,241 --> 00:41:17,241
Yeah, I assume I do, but that's the one that's been occupying my attention.

757
00:41:17,241 --> 00:41:18,241
And so that's the one on top of mind.

758
00:41:19,241 --> 00:41:22,241
But I can't think of other ones that are probably lurking in my

759
00:41:23,241 --> 00:41:24,241
yesterday's memory.

760
00:41:27,241 --> 00:41:28,241
Okay. Interesting.

761
00:41:29,241 --> 00:41:32,241
You seem much more practical on the scale

762
00:41:33,241 --> 00:41:36,241
of theoretical to practical. I'm always seeing

763
00:41:37,241 --> 00:41:40,241
SuperTestNet has built the first blah, blah, blah.

764
00:41:43,241 --> 00:41:46,241
So on the scale of theoretical to practical, you seem to be

765
00:41:46,241 --> 00:41:49,241
and, you know, as often the case, when the people build something in practice,

766
00:41:50,241 --> 00:41:53,241
they realize, oh, this is going to take my computer like 45 years.

767
00:41:54,241 --> 00:41:56,241
And then you're like, well, that's better.

768
00:41:57,241 --> 00:41:58,241
But I still think it's cool, though.

769
00:41:59,241 --> 00:42:02,241
Even if it does take you 45 years to render another frame of

770
00:42:03,241 --> 00:42:04,241
Mario Tennis, at least you can do it.

771
00:42:05,241 --> 00:42:06,241
That's cool.

772
00:42:07,241 --> 00:42:09,241
It's a really great game, guys. It has great music.

773
00:42:10,241 --> 00:42:13,241
Everyone get out there. Get your Game Boy Color emulator.

774
00:42:14,241 --> 00:42:18,241
Post a screenshot when you make it to the Island Cup.

775
00:42:19,241 --> 00:42:22,241
Okay, that's the challenge of the day or of the weekend.

776
00:42:26,241 --> 00:42:27,241
It's a really fun game.

777
00:42:28,241 --> 00:42:30,241
Back in the days of Game Boy Color, everyone's like, what?

778
00:42:31,241 --> 00:42:32,241
How old are these people?

779
00:42:33,241 --> 00:42:34,241
Are they a trillion years old?

780
00:42:35,241 --> 00:42:36,241
Yeah, back in the day, you were lucky.

781
00:42:37,241 --> 00:42:38,241
You know what's really crazy is if you play...

782
00:42:39,241 --> 00:42:40,241
I never had a Game Boy Color.

783
00:42:40,241 --> 00:42:42,241
I had an original Game Boy, or my brothers did,

784
00:42:43,241 --> 00:42:45,241
and then I sort of got it hand-me-downed to me.

785
00:42:46,241 --> 00:42:49,241
Yeah, I played Pokemon on Game Boy Black and White at first

786
00:42:50,241 --> 00:42:52,241
for like a short time, and then I got the Game Boy Color

787
00:42:53,241 --> 00:42:55,241
and I had my colors, which was great.

788
00:42:57,241 --> 00:42:58,241
It was amazing.

789
00:42:59,241 --> 00:43:00,241
Oh, and then whenever Game Boy Advance came out,

790
00:43:01,241 --> 00:43:02,241
it was like a golden sun, and I just couldn't believe

791
00:43:03,241 --> 00:43:04,241
the graphics were so good.

792
00:43:05,241 --> 00:43:06,241
I just couldn't believe it.

793
00:43:07,241 --> 00:43:08,241
I would just stare at them, and I just thought,

794
00:43:08,241 --> 00:43:09,241
it's amazing.

795
00:43:10,241 --> 00:43:13,241
Yeah, the Game Boy Advance is a really cool system.

796
00:43:14,241 --> 00:43:16,241
We never really needed to advance beyond that, honestly.

797
00:43:17,241 --> 00:43:18,241
It was already advanced enough.

798
00:43:19,241 --> 00:43:20,241
I agree.

799
00:43:22,241 --> 00:43:23,241
Well, actually, it did need...

800
00:43:24,241 --> 00:43:25,241
We agree too much, Paul, you and I.

801
00:43:26,241 --> 00:43:27,241
We can't think of anything to argue about.

802
00:43:28,241 --> 00:43:29,241
No, but I'll tell you this.

803
00:43:30,241 --> 00:43:31,241
You had to go to the backlit screen.

804
00:43:32,241 --> 00:43:33,241
Nothing had a backlit screen before then.

805
00:43:34,241 --> 00:43:36,241
People who are young, you don't know

806
00:43:37,241 --> 00:43:39,241
what it was like without the backlit screen.

807
00:43:40,241 --> 00:43:41,241
You literally would be playing...

808
00:43:42,241 --> 00:43:43,241
You had the little dial.

809
00:43:44,241 --> 00:43:46,241
You could use the dial to make it change the color scheme.

810
00:43:47,241 --> 00:43:49,241
You would be playing a game.

811
00:43:50,241 --> 00:43:51,241
Certain games could not be played.

812
00:43:52,241 --> 00:43:53,241
And you'd play a game like Pokemon,

813
00:43:54,241 --> 00:43:55,241
and you'd be sitting in your car, your family car,

814
00:43:56,241 --> 00:43:57,241
you'd be driving to whatever,

815
00:43:58,241 --> 00:43:59,241
and you'd have to go streetlight by streetlight

816
00:44:00,241 --> 00:44:04,241
to play the game, because there were no backlit screens.

817
00:44:05,241 --> 00:44:06,241
Well, they had the Game Boy Light, though.

818
00:44:07,241 --> 00:44:08,241
You could plug a little light into your...

819
00:44:09,241 --> 00:44:10,241
I was a proud owner.

820
00:44:11,241 --> 00:44:12,241
I was a proud owner of the Game Boy Light.

821
00:44:13,241 --> 00:44:15,241
But your parents would never let you use it on car rides,

822
00:44:16,241 --> 00:44:17,241
because they'd be like, hey, turn the light off.

823
00:44:18,241 --> 00:44:19,241
It's too bright.

824
00:44:20,241 --> 00:44:21,241
Yeah, it makes it hard to see out of the car at night.

825
00:44:22,241 --> 00:44:23,241
This all happened. This is all real.

826
00:44:24,241 --> 00:44:25,241
Some fantastic...

827
00:44:26,241 --> 00:44:27,241
You've got to compare the Mario Tennis music

828
00:44:28,241 --> 00:44:31,241
on Game Boy Color to every other Mario Tennis music,

829
00:44:32,241 --> 00:44:33,241
and it's actually horrible.

830
00:44:34,241 --> 00:44:39,241
The old music is way, way better in many such cases,

831
00:44:40,241 --> 00:44:41,241
where the old music was written by...

832
00:44:42,241 --> 00:44:43,241
The people who wrote, for example,

833
00:44:44,241 --> 00:44:45,241
this is way off topic,

834
00:44:46,241 --> 00:44:47,241
but people who wrote Pokemon music,

835
00:44:48,241 --> 00:44:49,241
that was a guy who was going in,

836
00:44:50,241 --> 00:44:51,241
and he would program each of the sound waves.

837
00:44:52,241 --> 00:44:53,241
These Japanese workaholics,

838
00:44:54,241 --> 00:44:55,241
they work super hard every day

839
00:44:56,241 --> 00:44:58,241
to try and put joy into every single note of this,

840
00:44:59,241 --> 00:45:01,241
changing the vibrato of each note.

841
00:45:01,241 --> 00:45:03,241
They know they only have four sounds,

842
00:45:04,241 --> 00:45:06,241
so when you are listening to the sound effects

843
00:45:07,241 --> 00:45:08,241
of the game and the game interface,

844
00:45:09,241 --> 00:45:10,241
they temporarily deload a sound.

845
00:45:11,241 --> 00:45:12,241
It's just people who just really, really cared

846
00:45:13,241 --> 00:45:14,241
so much about producing something

847
00:45:15,241 --> 00:45:16,241
that children would like.

848
00:45:17,241 --> 00:45:18,241
They just really took responsibility

849
00:45:19,241 --> 00:45:20,241
for every tiny detail.

850
00:45:21,241 --> 00:45:22,241
They were trying to get the most

851
00:45:23,241 --> 00:45:24,241
out of this tiny, tiny piece of hardware,

852
00:45:25,241 --> 00:45:26,241
and it's quite a...

853
00:45:27,241 --> 00:45:28,241
It's also a lot of fun.

854
00:45:29,241 --> 00:45:30,241
Learning how they did all this stuff for me

855
00:45:31,241 --> 00:45:32,241
and create some of it on Bitcoin.

856
00:45:33,241 --> 00:45:34,241
Fascinating.

857
00:45:35,241 --> 00:45:36,241
It is fascinating.

858
00:45:37,241 --> 00:45:38,241
This is on topic,

859
00:45:39,241 --> 00:45:40,241
because the idea of having to simulate something...

860
00:45:41,241 --> 00:45:42,241
There's this great thing,

861
00:45:43,241 --> 00:45:44,241
I think it's called War Stories,

862
00:45:45,241 --> 00:45:46,241
and I think it's Ars Technica,

863
00:45:47,241 --> 00:45:48,241
and it's fantastic.

864
00:45:49,241 --> 00:45:50,241
Go back and you see how they made...

865
00:45:51,241 --> 00:45:52,241
For example, when they made Myst,

866
00:45:53,241 --> 00:45:54,241
they had absolutely no idea

867
00:45:55,241 --> 00:45:56,241
that it would actually...

868
00:45:57,241 --> 00:45:58,241
They just started making it,

869
00:45:59,241 --> 00:46:00,241
and they had no idea the CD-ROM hadn't come out yet

870
00:46:01,241 --> 00:46:03,241
until, luckily, CD-ROM had been invented.

871
00:46:04,241 --> 00:46:05,241
And then, luckily,

872
00:46:06,241 --> 00:46:07,241
it didn't work at all,

873
00:46:08,241 --> 00:46:09,241
but they just had the idea

874
00:46:10,241 --> 00:46:11,241
to just put literally onto the physical spiral

875
00:46:12,241 --> 00:46:13,241
of the CD-ROM,

876
00:46:14,241 --> 00:46:15,241
they put the images in what they thought

877
00:46:16,241 --> 00:46:17,241
would be the order of people clicking on them.

878
00:46:18,241 --> 00:46:20,241
And this happened to work just barely enough.

879
00:46:21,241 --> 00:46:23,241
Otherwise, the game would have been unusable.

880
00:46:24,241 --> 00:46:25,241
It would just have never existed.

881
00:46:26,241 --> 00:46:27,241
And there's just all these great stories

882
00:46:28,241 --> 00:46:29,241
about Crash Bandicoot and everything.

883
00:46:29,241 --> 00:46:30,241
It's like hacking the CPU

884
00:46:31,241 --> 00:46:32,241
of the PlayStation

885
00:46:33,241 --> 00:46:34,241
and stealing RAM

886
00:46:35,241 --> 00:46:36,241
from the operating system.

887
00:46:37,241 --> 00:46:38,241
This is just amazing.

888
00:46:39,241 --> 00:46:40,241
We got Ryndell here.

889
00:46:41,241 --> 00:46:42,241
Ryndell, congratulations.

890
00:46:43,241 --> 00:46:44,241
Oh, thanks.

891
00:46:45,241 --> 00:46:46,241
Yeah, thank you.

892
00:46:47,241 --> 00:46:48,241
I actually heard you guys talking

893
00:46:49,241 --> 00:46:50,241
about programming old Game Boy games.

894
00:46:51,241 --> 00:46:52,241
I love programming

895
00:46:53,241 --> 00:46:54,241
in constrained environments.

896
00:46:55,241 --> 00:46:56,241
For a while,

897
00:46:57,241 --> 00:46:58,241
my decompression,

898
00:46:59,241 --> 00:47:00,241
I was writing

899
00:47:01,241 --> 00:47:02,241
microcontroller firmware

900
00:47:03,241 --> 00:47:04,241
because it's very low level

901
00:47:05,241 --> 00:47:06,241
and if you mess up,

902
00:47:07,241 --> 00:47:08,241
the light doesn't turn on.

903
00:47:09,241 --> 00:47:10,241
It's a very short feedback loop

904
00:47:11,241 --> 00:47:12,241
and you're so much closer

905
00:47:13,241 --> 00:47:14,241
to the problem domain

906
00:47:15,241 --> 00:47:16,241
than some other stuff.

907
00:47:17,241 --> 00:47:18,241
If you haven't seen it,

908
00:47:19,241 --> 00:47:20,241
Super Testnet,

909
00:47:21,241 --> 00:47:22,241
you should check out.

910
00:47:23,241 --> 00:47:24,241
There's a device that came out

911
00:47:25,241 --> 00:47:26,241
not that long ago called the Playdate.

912
00:47:27,241 --> 00:47:28,241
It's a little handheld game console

913
00:47:29,241 --> 00:47:30,241
with a D-pad

914
00:47:31,241 --> 00:47:32,241
and then a little crank on the side

915
00:47:33,241 --> 00:47:34,241
which is an input device.

916
00:47:35,241 --> 00:47:36,241
It's a monochromatic reflective screen

917
00:47:37,241 --> 00:47:38,241
and a single mono speaker.

918
00:47:39,241 --> 00:47:40,241
People have been putting out

919
00:47:41,241 --> 00:47:42,241
really fun,

920
00:47:43,241 --> 00:47:44,241
delightful little games

921
00:47:45,241 --> 00:47:46,241
because it's just this

922
00:47:47,241 --> 00:47:48,241
really small, low-powered device

923
00:47:49,241 --> 00:47:50,241
with very constrained inputs

924
00:47:51,241 --> 00:47:52,241
and people have been doing

925
00:47:53,241 --> 00:47:54,241
really creative, interesting games with it.

926
00:47:55,241 --> 00:47:56,241
The programming environment for it

927
00:47:57,241 --> 00:47:58,241
is really, really nice.

928
00:47:59,241 --> 00:48:00,241
They put out a whole bunch of tools

929
00:48:01,241 --> 00:48:02,241
like a level builder and stuff.

930
00:48:03,241 --> 00:48:04,241
If you like programming little games

931
00:48:05,241 --> 00:48:06,241
and stuff,

932
00:48:07,241 --> 00:48:08,241
it's a really fun little device.

933
00:48:09,241 --> 00:48:10,241
Yeah, I think I've seen

934
00:48:11,241 --> 00:48:12,241
another brand of that.

935
00:48:13,241 --> 00:48:14,241
It wasn't called the Playdate

936
00:48:15,241 --> 00:48:16,241
but it was called something else.

937
00:48:17,241 --> 00:48:18,241
It's the size of a credit card

938
00:48:19,241 --> 00:48:20,241
and yeah,

939
00:48:21,241 --> 00:48:22,241
it's a really cool system.

940
00:48:23,241 --> 00:48:24,241
Somebody made a first-person shooter

941
00:48:25,241 --> 00:48:26,241
for it which I thought was amazing.

942
00:48:27,241 --> 00:48:28,241
I love seeing people

943
00:48:29,241 --> 00:48:30,241
have this first-person shooter

944
00:48:31,241 --> 00:48:32,241
running on it,

945
00:48:33,241 --> 00:48:34,241
which is cool.

946
00:48:35,241 --> 00:48:36,241
Okay.

947
00:48:37,241 --> 00:48:38,241
Let's just see, though,

948
00:48:39,241 --> 00:48:40,241
if we can give the poor people something.

949
00:48:41,241 --> 00:48:42,241
Can we summarize?

950
00:48:43,241 --> 00:48:44,241
Problems with BitVM are

951
00:48:45,241 --> 00:48:46,241
it's new,

952
00:48:47,241 --> 00:48:48,241
and this is from SuperTestNet,

953
00:48:49,241 --> 00:48:50,241
it's new and it may be

954
00:48:51,241 --> 00:48:52,241
just extremely unwieldy

955
00:48:53,241 --> 00:48:54,241
to get anything useful

956
00:48:55,241 --> 00:48:56,241
out of it because it will take

957
00:48:57,241 --> 00:48:58,241
15 terabytes to...

958
00:48:59,241 --> 00:49:00,241
If you have a SHA-256 function working,

959
00:49:01,241 --> 00:49:02,241
that's extremely useful

960
00:49:03,241 --> 00:49:04,241
and that only takes five minutes to run.

961
00:49:05,241 --> 00:49:06,241
Five minutes for SHA-256.

962
00:49:07,241 --> 00:49:08,241
Okay, not so bad.

963
00:49:09,241 --> 00:49:10,241
Let's be more clear, though,

964
00:49:11,241 --> 00:49:12,241
because now I don't even know about...

965
00:49:13,241 --> 00:49:14,241
This is the case where

966
00:49:15,241 --> 00:49:16,241
you and I sit down

967
00:49:17,241 --> 00:49:18,241
and we must grind it out

968
00:49:19,241 --> 00:49:20,241
independently and then we

969
00:49:21,241 --> 00:49:22,241
fund, we deposit the money

970
00:49:23,241 --> 00:49:24,241
and then we play the game

971
00:49:25,241 --> 00:49:26,241
and then we withdraw the money.

972
00:49:27,241 --> 00:49:28,241
That's the scenario?

973
00:49:29,241 --> 00:49:30,241
That's how I want to keep doing it.

974
00:49:31,241 --> 00:49:32,241
Each person who wants to

975
00:49:33,241 --> 00:49:34,241
enforce the BitVM,

976
00:49:35,241 --> 00:49:36,241
they must do the...

977
00:49:37,241 --> 00:49:38,241
they must do this thing

978
00:49:39,241 --> 00:49:40,241
that you were talking about.

979
00:49:41,241 --> 00:49:42,241
They must compute the VM.

980
00:49:43,241 --> 00:49:44,241
I don't know.

981
00:49:45,241 --> 00:49:46,241
There's not a good terminology for it.

982
00:49:47,241 --> 00:49:48,241
You have to take the program

983
00:49:49,241 --> 00:49:50,241
and convert it into a Bitcoin address

984
00:49:51,241 --> 00:49:52,241
and it takes a long time

985
00:49:53,241 --> 00:49:54,241
if it's a big program.

986
00:49:55,241 --> 00:49:56,241
And then they have to compare it

987
00:49:57,241 --> 00:49:58,241
with everyone else's

988
00:49:59,241 --> 00:50:00,241
and then everyone sends the same money

989
00:50:01,241 --> 00:50:02,241
to the Bitcoin address.

990
00:50:03,241 --> 00:50:04,241
Well, that kind of depends.

991
00:50:05,241 --> 00:50:06,241
Sometimes only the prover

992
00:50:07,241 --> 00:50:08,241
needs to send money.

993
00:50:09,241 --> 00:50:10,241
Sometimes the verifier also needs

994
00:50:11,241 --> 00:50:12,241
to put up a pledge.

995
00:50:13,241 --> 00:50:14,241
It could be like you sit down

996
00:50:15,241 --> 00:50:16,241
at an arcade and there's

997
00:50:17,241 --> 00:50:18,241
Player 1, Player 2.

998
00:50:19,241 --> 00:50:20,241
Everyone knows that Player 1's

999
00:50:21,241 --> 00:50:22,241
Bitcoin address is this.

1000
00:50:23,241 --> 00:50:24,241
Player 2's Bitcoin address is that.

1001
00:50:25,241 --> 00:50:26,241
Yeah, but sometimes you don't need...

1002
00:50:27,241 --> 00:50:28,241
Sometimes you just want to say

1003
00:50:29,241 --> 00:50:30,241
to the blockchain,

1004
00:50:31,241 --> 00:50:32,241
if conditional on him putting

1005
00:50:33,241 --> 00:50:34,241
some money off as a pledge,

1006
00:50:35,241 --> 00:50:36,241
you will run the program correctly.

1007
00:50:37,241 --> 00:50:38,241
And then Player 2 doesn't actually

1008
00:50:39,241 --> 00:50:40,241
need to put any money in.

1009
00:50:41,241 --> 00:50:42,241
Okay, that's good.

1010
00:50:43,241 --> 00:50:44,241
But we're talking about...

1011
00:50:45,241 --> 00:50:46,241
Should we...

1012
00:50:47,241 --> 00:50:48,241
I think we should name this thing.

1013
00:50:49,241 --> 00:50:50,241
Is there a name for this?

1014
00:50:51,241 --> 00:50:52,241
Like, you know, the setup,

1015
00:50:53,241 --> 00:50:54,241
the setup precompute?

1016
00:50:55,241 --> 00:50:56,241
Like, what is the name?

1017
00:50:57,241 --> 00:50:58,241
Setup phase.

1018
00:50:59,241 --> 00:51:01,241
Five minutes per SHA-256 and...

1019
00:51:02,241 --> 00:51:03,241
And then another five minutes

1020
00:51:04,241 --> 00:51:05,241
after you've computed.

1021
00:51:06,241 --> 00:51:08,241
Five hours to simulate

1022
00:51:09,241 --> 00:51:13,241
a Game Boy-esque CPU.

1023
00:51:14,241 --> 00:51:15,241
Not quite, but...

1024
00:51:16,241 --> 00:51:17,241
However long it takes you

1025
00:51:18,241 --> 00:51:19,241
to download 18 terabytes of data

1026
00:51:20,241 --> 00:51:21,241
from what I can know how to do.

1027
00:51:22,241 --> 00:51:23,241
Obviously, I'm just floundering here

1028
00:51:24,241 --> 00:51:25,241
because I don't actually know

1029
00:51:26,241 --> 00:51:27,241
how to program this stuff.

1030
00:51:28,241 --> 00:51:29,241
And then...

1031
00:51:30,241 --> 00:51:31,241
The...

1032
00:51:32,241 --> 00:51:33,241
The lack of recourse.

1033
00:51:34,241 --> 00:51:35,241
If it turns out one of your

1034
00:51:36,241 --> 00:51:37,241
counterparties is a miner,

1035
00:51:38,241 --> 00:51:39,241
then there is a...

1036
00:51:40,241 --> 00:51:41,241
It is a...

1037
00:51:42,241 --> 00:51:43,241
Then you are...

1038
00:51:44,241 --> 00:51:45,241
BitVM isn't doing anything for you.

1039
00:51:46,241 --> 00:51:47,241
They already have the money.

1040
00:51:48,241 --> 00:51:49,241
Well, not just any miner.

1041
00:51:50,241 --> 00:51:51,241
It would have to be one of the miners

1042
00:51:52,241 --> 00:51:53,241
that has a majority of hash rate.

1043
00:51:54,241 --> 00:51:55,241
Yeah.

1044
00:51:55,241 --> 00:51:56,241
Which, of course, you know, we...

1045
00:51:57,241 --> 00:51:58,241
The reason why I bring it up

1046
00:51:59,241 --> 00:52:00,241
is because I think that

1047
00:52:01,241 --> 00:52:02,241
it's not...

1048
00:52:03,241 --> 00:52:04,241
I think usually the miners

1049
00:52:05,241 --> 00:52:06,241
are not trying to screw everyone over.

1050
00:52:07,241 --> 00:52:08,241
I think miners have great incentives.

1051
00:52:09,241 --> 00:52:10,241
But, you know, people throw it against me

1052
00:52:11,241 --> 00:52:12,241
and I just say, well...

1053
00:52:13,241 --> 00:52:14,241
Then you should apply that criticism

1054
00:52:15,241 --> 00:52:16,241
to everything.

1055
00:52:17,241 --> 00:52:18,241
It's a very weak criticism, though.

1056
00:52:19,241 --> 00:52:20,241
But I think in the case of BIP300,

1057
00:52:21,241 --> 00:52:22,241
it is designed...

1058
00:52:23,241 --> 00:52:24,241
It's supposed to be slow

1059
00:52:25,241 --> 00:52:26,241
and it's coming in advance.

1060
00:52:27,241 --> 00:52:28,241
You can blame the people

1061
00:52:29,241 --> 00:52:30,241
and have the attack fail

1062
00:52:31,241 --> 00:52:32,241
and then they still get the blame.

1063
00:52:33,241 --> 00:52:34,241
And also, it's very difficult.

1064
00:52:35,241 --> 00:52:36,241
One kind of weird quirk

1065
00:52:37,241 --> 00:52:38,241
of the BIP300 strategy

1066
00:52:39,241 --> 00:52:40,241
is that the miners might start

1067
00:52:41,241 --> 00:52:42,241
the attack today,

1068
00:52:43,241 --> 00:52:44,241
but the hash rate shifts over time.

1069
00:52:45,241 --> 00:52:46,241
You know, it's not...

1070
00:52:47,241 --> 00:52:48,241
Foundry, there was...

1071
00:52:49,241 --> 00:52:50,241
For many years, Foundry didn't exist.

1072
00:52:51,241 --> 00:52:52,241
So Foundry had 0%,

1073
00:52:53,241 --> 00:52:54,241
but then now all of a sudden

1074
00:52:55,241 --> 00:52:56,241
the hash rate percentages

1075
00:52:57,241 --> 00:52:58,241
might be different.

1076
00:52:59,241 --> 00:53:00,241
And so that's another thing

1077
00:53:01,241 --> 00:53:02,241
that's designed to throw a wrench into that.

1078
00:53:03,241 --> 00:53:04,241
But yeah, so that's...

1079
00:53:05,241 --> 00:53:06,241
So those are three things.

1080
00:53:07,241 --> 00:53:08,241
So we've come up with three things.

1081
00:53:09,241 --> 00:53:10,241
The set of phase is really difficult.

1082
00:53:11,241 --> 00:53:12,241
It's not as safe as BIP300

1083
00:53:13,241 --> 00:53:14,241
because they can...

1084
00:53:15,241 --> 00:53:16,241
If you're 51% of miners,

1085
00:53:17,241 --> 00:53:18,241
it can steal from you much more quickly.

1086
00:53:19,241 --> 00:53:20,241
And third, the third thing

1087
00:53:21,241 --> 00:53:22,241
is that it's unclear

1088
00:53:23,241 --> 00:53:24,241
if there is a robust way

1089
00:53:25,241 --> 00:53:26,241
to get validators

1090
00:53:27,241 --> 00:53:28,241
so that you don't have to trust any of them.

1091
00:53:29,241 --> 00:53:30,241
Like, do you really feel good about that?

1092
00:53:31,241 --> 00:53:32,241
Like you say, there's 50 people

1093
00:53:33,241 --> 00:53:34,241
who they were all there from day one.

1094
00:53:35,241 --> 00:53:36,241
They pre-computed everything

1095
00:53:37,241 --> 00:53:38,241
and they pre-computed something

1096
00:53:39,241 --> 00:53:40,241
where you can join,

1097
00:53:41,241 --> 00:53:42,241
but you're not part of the original thing.

1098
00:53:43,241 --> 00:53:44,241
So you're kind of like,

1099
00:53:45,241 --> 00:53:46,241
maybe, I guess it could be okay.

1100
00:53:47,241 --> 00:53:48,241
So first of all,

1101
00:53:49,241 --> 00:53:50,241
I do think it's...

1102
00:53:51,241 --> 00:53:52,241
It sounds possible to me.

1103
00:53:53,241 --> 00:53:54,241
I see a path to how to get it

1104
00:53:55,241 --> 00:53:57,241
and not have to trust one of the validators.

1105
00:53:58,241 --> 00:53:59,241
However, even if you do,

1106
00:54:00,241 --> 00:54:02,241
even if what I think will work doesn't work,

1107
00:54:03,241 --> 00:54:04,241
it's still an improvement

1108
00:54:05,241 --> 00:54:06,241
on the sidechains we have today

1109
00:54:07,241 --> 00:54:08,241
because today you have to trust like eight people

1110
00:54:09,241 --> 00:54:10,241
in order to use one of these sidechains.

1111
00:54:11,241 --> 00:54:12,241
And this would be...

1112
00:54:13,241 --> 00:54:14,241
You only have to trust that one out of the 15 people

1113
00:54:15,241 --> 00:54:16,241
or one of the 50 is honest.

1114
00:54:17,241 --> 00:54:18,241
And that's way better.

1115
00:54:19,241 --> 00:54:20,241
It's just a way better situation.

1116
00:54:21,241 --> 00:54:22,241
It's certainly more fun

1117
00:54:23,241 --> 00:54:24,241
and more impressive and cool.

1118
00:54:25,241 --> 00:54:26,241
I do worry in a way though

1119
00:54:27,241 --> 00:54:28,241
that it does...

1120
00:54:29,241 --> 00:54:30,241
People...

1121
00:54:31,241 --> 00:54:32,241
People seem to be...

1122
00:54:33,241 --> 00:54:34,241
As time goes on in Bitcoin,

1123
00:54:35,241 --> 00:54:36,241
people will either jump on a bandwagon

1124
00:54:37,241 --> 00:54:40,241
or jump off a bandwagon or whatever.

1125
00:54:41,241 --> 00:54:42,241
They seem...

1126
00:54:43,241 --> 00:54:44,241
The ratio of confidence to

1127
00:54:46,241 --> 00:54:47,241
actual

1128
00:54:49,241 --> 00:54:50,241
putting in the work and doing something

1129
00:54:51,241 --> 00:54:52,241
is, I think,

1130
00:54:53,241 --> 00:54:54,241
has been

1131
00:54:55,241 --> 00:54:56,241
increasing, which is bad.

1132
00:54:57,241 --> 00:54:58,241
People are more overconfident.

1133
00:54:59,241 --> 00:55:00,241
They just think...

1134
00:55:01,241 --> 00:55:02,241
Well, Taproot is kind of an example

1135
00:55:03,241 --> 00:55:04,241
because people were going around and saying

1136
00:55:05,241 --> 00:55:06,241
this is the biggest upgrade to smart contracts

1137
00:55:07,241 --> 00:55:08,241
in Bitcoin's history or something.

1138
00:55:09,241 --> 00:55:10,241
They were saying stuff like that.

1139
00:55:11,241 --> 00:55:12,241
That was kind of like not really what

1140
00:55:13,241 --> 00:55:14,241
you would say.

1141
00:55:15,241 --> 00:55:16,241
They just had an inkling that BitVM was possible.

1142
00:55:17,241 --> 00:55:18,241
See?

1143
00:55:19,241 --> 00:55:20,241
Yeah, between BitVM and Ordinals,

1144
00:55:21,241 --> 00:55:22,241
we're going to prove them right.

1145
00:55:23,241 --> 00:55:24,241
Things they never saw coming

1146
00:55:25,241 --> 00:55:26,241
are going to actually turn out

1147
00:55:27,241 --> 00:55:28,241
to make them right.

1148
00:55:29,241 --> 00:55:30,241
No, I'm just kidding.

1149
00:55:31,241 --> 00:55:32,241
I don't think that's true.

1150
00:55:33,241 --> 00:55:34,241
But I do think it's cool.

1151
00:55:35,241 --> 00:55:36,241
BitVM is really neat

1152
00:55:37,241 --> 00:55:38,241
and I'm having a ton of fun.

1153
00:55:39,241 --> 00:55:40,241
I'm having the time of my life

1154
00:55:41,241 --> 00:55:42,241
learning about how to make computers

1155
00:55:43,241 --> 00:55:44,241
from scratch so I can build them

1156
00:55:45,241 --> 00:55:46,241
for BitVM.

1157
00:55:47,241 --> 00:55:48,241
It does sound like you would learn

1158
00:55:49,241 --> 00:55:50,241
an awful lot

1159
00:55:51,241 --> 00:55:52,241
and

1160
00:55:54,241 --> 00:55:55,241
well, there you go.

1161
00:55:56,241 --> 00:55:57,241
I don't know.

1162
00:55:58,241 --> 00:55:59,241
Unfortunately, I really don't have

1163
00:56:00,241 --> 00:56:01,241
a lot of time today.

1164
00:56:02,241 --> 00:56:03,241
Yeah, that's it.

1165
00:56:04,241 --> 00:56:05,241
We came up with three reasons BitVM sucks.

1166
00:56:06,241 --> 00:56:07,241
We gave people something.

1167
00:56:08,241 --> 00:56:09,241
We gave them two mitigations.

1168
00:56:10,241 --> 00:56:11,241
You guys can certainly stay

1169
00:56:12,241 --> 00:56:13,241
if you leave it open.

1170
00:56:14,241 --> 00:56:15,241
We just let it run.

1171
00:56:16,241 --> 00:56:17,241
It can be one of those spaces that just runs.

1172
00:56:18,241 --> 00:56:19,241
I mean, I'm happy to do that.

1173
00:56:20,241 --> 00:56:21,241
And your co-host can be Robin

1174
00:56:22,241 --> 00:56:23,241
who can't speak right now.

1175
00:56:24,241 --> 00:56:25,241
We can infer that Robin

1176
00:56:26,241 --> 00:56:27,241
is being

1177
00:56:28,241 --> 00:56:29,241
held at gunpoint

1178
00:56:30,241 --> 00:56:31,241
and has secretly activated his phone.

1179
00:56:32,241 --> 00:56:33,241
Well, no. Robin is just working on

1180
00:56:34,241 --> 00:56:35,241
computing the circuit.

1181
00:56:36,241 --> 00:56:37,241
It's going to take a few more minutes

1182
00:56:38,241 --> 00:56:39,241
and he's going to send over all the...

1183
00:56:40,241 --> 00:56:41,241
He's going to send it.

1184
00:56:42,241 --> 00:56:43,241
He's running Twitter Space on the BitVM.

1185
00:56:44,241 --> 00:56:45,241
It's the slow upload speed.

1186
00:56:46,241 --> 00:56:47,241
To get to 15 terabytes,

1187
00:56:48,241 --> 00:56:49,241
it's

1188
00:56:50,241 --> 00:56:51,241
going to take a little while.

1189
00:56:55,241 --> 00:56:56,241
And then if he...

1190
00:56:57,241 --> 00:56:58,241
The way it works is if he...

1191
00:56:59,241 --> 00:57:00,241
Because we have total control over the state.

1192
00:57:01,241 --> 00:57:02,241
So then if he

1193
00:57:03,241 --> 00:57:04,241
unmutes and says the wrong thing,

1194
00:57:05,241 --> 00:57:06,241
we slash him and we take

1195
00:57:07,241 --> 00:57:08,241
his money.

1196
00:57:09,241 --> 00:57:10,241
The contract with Robin is that he has

1197
00:57:11,241 --> 00:57:12,241
to produce a certain waveform during the...

1198
00:57:13,241 --> 00:57:14,241
Exactly. He has to say...

1199
00:57:15,241 --> 00:57:16,241
produce certain words

1200
00:57:17,241 --> 00:57:18,241
and they better sound good.

1201
00:57:18,241 --> 00:57:19,241
BitVM...

1202
00:57:20,241 --> 00:57:21,241
Bit...

1203
00:57:22,241 --> 00:57:23,241
Extortion.

1204
00:57:28,241 --> 00:57:29,241
I don't think that's an example of

1205
00:57:30,241 --> 00:57:31,241
a good sounding thing.

1206
00:57:32,241 --> 00:57:33,241
Hey, J25, you got up as a speaker.

1207
00:57:34,241 --> 00:57:35,241
What did you want to say?

1208
00:57:36,241 --> 00:57:37,241
Yes, do you have anything...

1209
00:57:39,241 --> 00:57:40,241
Now's the time.

1210
00:57:41,241 --> 00:57:42,241
And anyone, now is the time.

1211
00:57:43,241 --> 00:57:44,241
If you have something you really want to ask, quick.

1212
00:57:45,241 --> 00:57:46,241
Quickly come up here

1213
00:57:46,241 --> 00:57:47,241
and try to ask.

1214
00:57:48,241 --> 00:57:49,241
Lightning round.

1215
00:57:50,241 --> 00:57:51,241
And again, I'll just leave. You guys can stay if you want.

1216
00:57:52,241 --> 00:57:53,241
You're muted, though, J25.

1217
00:57:54,241 --> 00:57:55,241
Quantum.

1218
00:57:56,241 --> 00:57:57,241
Yeah, hey, guys. I'll just jump in real quick.

1219
00:57:58,241 --> 00:57:59,241
Hello.

1220
00:58:00,241 --> 00:58:01,241
Yeah, and again, this is just kind of

1221
00:58:02,241 --> 00:58:03,241
saying kudos on the way out.

1222
00:58:04,241 --> 00:58:05,241
I know I messaged both SupertestNet

1223
00:58:06,241 --> 00:58:07,241
and Paul Sztorc individually

1224
00:58:08,241 --> 00:58:09,241
to try and actually get this...

1225
00:58:10,241 --> 00:58:11,241
to get you two together to have a conversation

1226
00:58:12,241 --> 00:58:13,241
for people that wanted to listen.

1227
00:58:14,241 --> 00:58:15,241
So I'm super glad I was able to

1228
00:58:16,241 --> 00:58:17,241
jump in and listen.

1229
00:58:18,241 --> 00:58:19,241
And I want to

1230
00:58:20,241 --> 00:58:21,241
encourage you two to

1231
00:58:22,241 --> 00:58:23,241
keep conversating about it

1232
00:58:24,241 --> 00:58:25,241
as you make developments individually.

1233
00:58:26,241 --> 00:58:27,241
Super's great.

1234
00:58:28,241 --> 00:58:29,241
Super's great. We did a great panel

1235
00:58:30,241 --> 00:58:31,241
at Blitcoin++ in Austin.

1236
00:58:32,241 --> 00:58:33,241
Awesome. Yeah, so...

1237
00:58:34,241 --> 00:58:35,241
One of the all-time greatest.

1238
00:58:36,241 --> 00:58:37,241
I just wanted to say thanks because I'm...

1239
00:58:38,241 --> 00:58:39,241
And Paul's decent.

1240
00:58:40,241 --> 00:58:41,241
No, I'm kidding. He's awesome.

1241
00:58:42,241 --> 00:58:43,241
He's a decent human, yeah.

1242
00:58:44,241 --> 00:58:45,241
So I'm just teaching myself

1243
00:58:46,241 --> 00:58:47,241
what I did in the past.

1244
00:58:48,241 --> 00:58:49,241
You know, I was out of

1245
00:58:50,241 --> 00:58:51,241
Bitcoin development

1246
00:58:52,241 --> 00:58:53,241
really until Taproot came out

1247
00:58:54,241 --> 00:58:55,241
because when those original

1248
00:58:56,241 --> 00:58:57,241
opcodes were deprecated,

1249
00:58:58,241 --> 00:58:59,241
I was like, oh, well, the things I want

1250
00:59:00,241 --> 00:59:01,241
to do on the core chain,

1251
00:59:02,241 --> 00:59:03,241
I'm going to have to wait for a

1252
00:59:04,241 --> 00:59:05,241
re-release or something.

1253
00:59:06,241 --> 00:59:07,241
So it happened.

1254
00:59:08,241 --> 00:59:09,241
And then I started relearning

1255
00:59:10,241 --> 00:59:11,241
what I've forgotten and put in the

1256
00:59:12,241 --> 00:59:13,241
back of my mind for many years.

1257
00:59:14,241 --> 00:59:15,241
So I'm excited about what you guys

1258
00:59:16,241 --> 00:59:17,241
are doing and what we can develop

1259
00:59:18,241 --> 00:59:19,241
and figure out after that.

1260
00:59:20,241 --> 00:59:21,241
So thanks for coming by.

1261
00:59:22,241 --> 00:59:23,241
Thanks for you two for getting together.

1262
00:59:24,241 --> 00:59:25,241
And again, just much encouragement

1263
00:59:26,241 --> 00:59:27,241
for you two to keep conversing

1264
00:59:28,241 --> 00:59:29,241
and keeping people up to speed

1265
00:59:30,241 --> 00:59:31,241
on what's going on.

1266
00:59:32,241 --> 00:59:33,241
The only thing I would say is,

1267
00:59:34,241 --> 00:59:35,241
you know, don't be afraid to break

1268
00:59:36,241 --> 00:59:37,241
things down to like simple forms.

1269
00:59:38,241 --> 00:59:39,241
So, you know, in terms of for you,

1270
00:59:40,241 --> 00:59:41,241
SuperTestNet, like you talk about

1271
00:59:42,241 --> 00:59:43,241
programming in these logic gates,

1272
00:59:44,241 --> 00:59:45,241
you may have people in the space

1273
00:59:46,241 --> 00:59:47,241
if you have the time, obviously.

1274
00:59:48,241 --> 00:59:49,241
But thanks for coming by, guys.

1275
00:59:50,241 --> 00:59:51,241
Thanks for having me up.

1276
00:59:52,241 --> 00:59:53,241
Thanks as always.

1277
00:59:54,241 --> 00:59:55,241
Cool. Thanks.

1278
00:59:56,241 --> 01:00:01,801
make like little infographic, like an animated thing that are like, just as like,

1279
01:00:02,641 --> 01:00:07,721
the idea of hashing each bit, maybe that as an image, maybe that would help people or

1280
01:00:07,721 --> 01:00:08,721
maybe not, I have no idea.

1281
01:00:09,321 --> 01:00:12,321
J25 is up on Budmuted,

1282
01:00:12,396 --> 01:00:23,515
So, so one of the things, this is probably, I didn't think of this, but this is probably the reason why mine is so inefficient is because I'm using logic gates.

1283
01:00:23,515 --> 01:00:26,796
And Robin's version of the BitVM doesn't.

1284
01:00:27,435 --> 01:00:30,396
He uses mostly Bitcoin's arithmetic opcodes.

1285
01:00:30,396 --> 01:00:33,276
Instead, there's all you can do with arithmetic.

1286
01:00:34,675 --> 01:00:40,956
And it's much more efficient, apparently, because, you know, his Blake three function certainly didn't take five minutes to compute.

1287
01:00:42,675 --> 01:00:45,716
Everyone's node got it done within a few seconds, within, you know, milliseconds.

1288
01:00:46,315 --> 01:00:54,076
So, yeah, actually, that's probably the reason why mine is so terribly inefficient is because I'm trying to do everything at the logic gate level and simulating each logic gate of the circuit.

1289
01:00:55,155 --> 01:00:58,995
If I was smart, like Robin, I would just do this more efficiently.

1290
01:01:03,356 --> 01:01:05,636
And Mark, hello.

1291
01:01:05,676 --> 01:01:06,956
Greetings, everybody. My name is Mark.

1292
01:01:07,435 --> 01:01:12,475
I have a question. Is Casey's indexer in any way, shape or form used in the project?

1293
01:01:12,475 --> 01:01:15,556
Not mine. I doubt Robin uses it.

1294
01:01:15,556 --> 01:01:18,556
Okay. Casey's the ordinal indexer, original creator.

1295
01:01:18,996 --> 01:01:25,956
So I guess, well, I just want to give a shout out to the host, Layer 2 and Paul and SuperTestNet.

1296
01:01:25,956 --> 01:01:28,876
And I'm a big fan of what you guys are doing here.

1297
01:01:28,876 --> 01:01:30,316
So I'm just going to go back to listening.

1298
01:01:30,356 --> 01:01:33,715
I hope to contribute positively in some way, shape or form in the future.

1299
01:01:37,155 --> 01:01:37,916
Cool. Okay, great.

1300
01:01:38,755 --> 01:01:44,196
Well, again, I have to go, but if anyone has anything they must ask, come up quick.

1301
01:01:44,636 --> 01:01:45,916
I support you, Paul, on your mission.

1302
01:01:45,956 --> 01:01:47,715
I think drivechains are the future.

1303
01:01:47,755 --> 01:01:56,236
I definitely think we need to take Ethereum and, yeah, we should take every good idea and developers are going to dev.

1304
01:01:56,276 --> 01:01:59,115
That's the thing is, and some better one is too.

1305
01:01:59,155 --> 01:01:59,755
Why not?

1306
01:01:59,755 --> 01:02:19,715
Yeah, and we can't have a priori knowledge of each idea, you know, like everyone, you can think an idea is bad and then be like, I thought Twitter was a terrible idea when it first came out and I thought Snapchat was a terrible idea when it first came out and I don't really use Snapchat these days, but yeah, exactly like, you know, and it's parts of Twitter that are terrible, that are terrible, but yeah, I think we need to take every good idea and developers are going to dev, that's the thing is, and some better one is too.

1307
01:02:19,756 --> 01:02:20,355
Why not?

1308
01:02:20,355 --> 01:02:25,895
first came out, I don't really use Snapchat's channel these days, but exactly

1309
01:02:25,895 --> 01:02:28,915
like, you know, in parts of Twitter that are terrible.

1310
01:02:29,775 --> 01:02:35,075
you know, like things grow and change, the circumstances

1311
01:02:35,075 --> 01:02:41,015
change. And no matter what happens, we are going to have people who will make lots of

1312
01:02:41,015 --> 01:02:47,015
projects. So they will do BitVM, they will do Solana, They will do Bitcoin

1313
01:02:47,015 --> 01:02:50,355
SV and the idea behind BIP300

1314
01:02:50,355 --> 01:03:18,355
BIP300 is just, we'll just turn those things into Bitcoin projects, so use BTC, and if we don't do this, then they'll just be altcoin projects, so like a lot of people, I think, hope, they think, well, we want, we want them to be altcoin projects, because we want those people to suffer and waste their time, but it's like, they are going to, these projects are going to continue to happen at a geometrically increasing rate forever, and some of them will attract users of some form or another.

1315
01:03:18,355 --> 01:03:31,355
So, for example, Solana is a great example, and Bitcoin SV are great examples of something where they don't care about, not, they don't want to be decentralized in terms of how expensive running a node is.

1316
01:03:31,355 --> 01:03:44,355
So, they don't want to have, they don't want to have a server like Liberty Reserve, but they don't care if the node costs a lot, where it costs a lot isn't even that much, it's like thousands, tens of thousands, you know, a year maybe, which is, you know, not far from infinite.

1317
01:03:45,355 --> 01:03:50,355
And so, they're going to push the envelope in that direction, and then they're going to get everything they can out of that.

1318
01:03:50,355 --> 01:04:05,355
So, that's, so people are going to continue to do that, and the question is, do we want to use Bitcoin with those projects, or do we want to have this endless, pointless conflict, or whatever, but anyway, I have to go.

1319
01:04:05,355 --> 01:04:07,355
So, yeah, we should copy everything, though.

1320
01:04:08,355 --> 01:04:09,355
Yeah, you guys can stay if you want.

1321
01:04:10,355 --> 01:04:14,355
A guy asked me if I could explain how, what Logigates are and how they work.

1322
01:04:14,355 --> 01:04:22,356
Sure, okay, I'm going to leave, though, but thanks, everyone. Guys, stay as long as, stay the whole, stay for 30, 24 hours until the thing crashes, I think that's the limit.

1323
01:04:24,356 --> 01:04:27,356
Anyway, see you guys later, maybe I'll rejoin. See you guys, thanks a lot.

1324
01:04:27,356 --> 01:04:38,356
Yeah, so, Logigates. So, one of the ways that you can build a bit VM is the way I'm doing it, which is by writing circuits in Logigates.

1325
01:04:38,356 --> 01:04:48,356
And so, what's a Logigate? Well, they were invented a long time ago by this guy named George Boole, who was a mathematician in the 1800s.

1326
01:04:49,356 --> 01:04:57,356
And he discovered that you could do a form of, well, I want to say a form of mathematics.

1327
01:04:57,356 --> 01:05:09,356
It's not exactly mathematics, though, it's logic, where you make true or false statements and represent those statements as ones and zeros.

1328
01:05:09,356 --> 01:05:16,356
And then you pass those statements through these things called Logigates that can assess the validity of certain types of statements.

1329
01:05:16,356 --> 01:05:29,356
An example of a Logigate is an AND gate. And the AND gate says that if the two statements that are passed into it are true, it will say so.

1330
01:05:29,356 --> 01:05:31,356
It will say, yeah, both statements were true.

1331
01:05:32,356 --> 01:05:40,356
And then another one is the OR gate, which says if two statements are passed into it and at least one of them is true, then it'll say, it'll say so.

1332
01:05:40,356 --> 01:05:42,356
It'll say, yeah, at least one of these things was true.

1333
01:05:43,356 --> 01:05:52,356
And then there's a few others. There's the exclusive OR gate, which says you can pass two statements to it, and if only one of them is true, it'll say so.

1334
01:05:52,356 --> 01:05:58,356
But if both of them are true, it'll say there was a problem.

1335
01:06:00,356 --> 01:06:06,356
And then there's the NAND gate, which is the one that I use most because it's the most powerful of them all.

1336
01:06:07,356 --> 01:06:18,356
And it says if you pass two statements from it, it'll only say, if both of them are false, it'll say so.

1337
01:06:18,356 --> 01:06:21,356
Otherwise, it will fail and say there was a problem.

1338
01:06:22,356 --> 01:06:26,356
Anyway, you can use these things to build computers. In fact, computers are built of these things.

1339
01:06:27,356 --> 01:06:36,356
In the 1900s, people figured out how to make these things called transistors, which are little pieces of metal that have electrical charge on them.

1340
01:06:37,356 --> 01:06:39,356
And you can simulate logic gates with them.

1341
01:06:40,356 --> 01:06:43,356
And it's what we use. It's what computer chips are made of.

1342
01:06:43,356 --> 01:06:46,356
They're just a bunch of millions of these logic gates all hooked together.

1343
01:06:47,356 --> 01:06:57,356
And then you can pass electricity through them and make lights show up on your monitor in predictable, programmable ways.

1344
01:06:58,356 --> 01:07:06,356
So you can say, if I hit H on my computer, then an H will show up on my monitor or on someone else's monitor or whatever it is that your program wants it to do.

1345
01:07:07,356 --> 01:07:10,356
You can play pong with this.

1346
01:07:10,356 --> 01:07:20,356
You can say, if I hit up on my thing and I hit it up for long enough, then I have the ball get smacked by the paddle and go to the other side of the screen at whatever angle.

1347
01:07:22,356 --> 01:07:24,356
These are the things that you can make with logic gates.

1348
01:07:24,356 --> 01:07:31,356
And every computer chip is just composed of a bunch of logic gates hooked together, along with these things called latches for doing memory.

1349
01:07:33,356 --> 01:07:35,356
And they're neat. They're really cool things.

1350
01:07:35,356 --> 01:07:37,356
So that's what a logic gate is.

1351
01:07:37,356 --> 01:07:40,356
It's a small piece of circuitry.

1352
01:07:42,356 --> 01:07:43,356
Originally, they weren't even circuitry.

1353
01:07:43,356 --> 01:07:51,356
They were just a mathematical kind of notation for analyzing the true and false statements.

1354
01:07:52,356 --> 01:07:53,356
But now they're circuitry.

1355
01:07:53,356 --> 01:07:56,356
They're pieces of computer circuitry that you can use to make programs out of.

1356
01:07:57,356 --> 01:08:05,356
And I'm designing my implementation of BitVM to just use those to create a real computer and then run programs on it.

1357
01:08:06,356 --> 01:08:10,356
You can also just design the programs themselves in it, which is what we've been doing so far.

1358
01:08:11,356 --> 01:08:14,356
The things that have actually run on BitVM are just individual programs.

1359
01:08:14,356 --> 01:08:18,356
We've had an addition program and recently a SHA-256 program.

1360
01:08:19,356 --> 01:08:27,356
And you can just pass data into it, and it'll process that data according to addition or according to whatever function you chose, and then it'll pass out the result.

1361
01:08:28,356 --> 01:08:35,355
I'm trying right now, one of my current projects, to build a computer, an actual computer with these things, or I guess a virtual computer with these things.

1362
01:08:35,355 --> 01:08:39,355
And then you could program it to do a bunch of different things.

1363
01:08:39,355 --> 01:08:46,355
But, yeah, so that's... logic gates allow you to do millions of cool things.

1364
01:08:46,355 --> 01:08:49,355
And I hope that helps people understand what they are.

1365
01:08:49,355 --> 01:08:54,355
They're also not... in Robin's mind, they're not efficient.

1366
01:08:54,355 --> 01:09:06,355
Or in a certain sense, there are more efficient ways to build BitVM than by creating and simulating logic gates in Bitcoin script.

1367
01:09:06,355 --> 01:09:11,355
So, yeah, he's got a much more efficient implementation of BitVM than I do.

1368
01:09:11,355 --> 01:09:13,355
But I don't know how to do his.

1369
01:09:13,355 --> 01:09:15,355
And it also sounds really boring.

1370
01:09:15,355 --> 01:09:22,355
So I'm doing it my way, which is less efficient and terribly expensive computationally to run.

1371
01:09:22,355 --> 01:09:23,355
But it works.

1372
01:09:23,355 --> 01:09:25,355
And I have fun with it.

1373
01:09:25,355 --> 01:09:27,355
So, yeah, that's what's up.

1374
01:09:28,355 --> 01:09:29,355
Hope that helps.

1375
01:09:32,355 --> 01:09:33,355
That's pretty cool.

1376
01:09:36,355 --> 01:09:37,355
What?

1377
01:09:37,355 --> 01:09:38,355
I enjoyed listening to that.

1378
01:09:38,355 --> 01:09:39,355
Let me ask you, though.

1379
01:09:39,355 --> 01:09:45,355
Is the concept of runes and ordinal inscriptions, can logic gates be programmed in?

1380
01:09:45,355 --> 01:09:54,355
Let's say you want to program a specific circuit, like a 555, or some kind of mathematical circuit to process a script.

1381
01:09:54,355 --> 01:09:58,355
Can that be put in as an inscription, perhaps, and then referenced?

1382
01:09:59,355 --> 01:10:07,355
Yeah, at least you can take a whole program and inscribe it onto Bitcoin.

1383
01:10:07,355 --> 01:10:11,355
Somebody did that with Doom.

1384
01:10:11,355 --> 01:10:19,355
Somebody took the game Doom, and it's like a four-megabyte file, and they inscribed it, and then they put it on the blockchain.

1385
01:10:19,355 --> 01:10:22,355
So you can download Doom from the blockchain and then play it.

1386
01:10:22,355 --> 01:10:24,355
But that's not what I'm trying to do.

1387
01:10:24,355 --> 01:10:27,355
I'm trying to make it so that Bitcoin can actually enforce the logic of the thing.

1388
01:10:27,355 --> 01:10:34,355
So if you just download Doom from the blockchain and then run it, Bitcoin doesn't know anything about what you're doing.

1389
01:10:34,355 --> 01:10:37,355
It was just sort of a file host for you.

1390
01:10:37,355 --> 01:10:44,355
What I'm trying to do is make it so that the Bitcoin network actually enforces the rules of whatever program you're trying to run.

1391
01:10:44,355 --> 01:10:48,355
So that if you run it incorrectly, Bitcoin will make you lose money.

1392
01:10:48,355 --> 01:10:51,355
How do you solve the grievance problem?

1393
01:10:51,355 --> 01:10:54,355
Isn't there a grievance problem that has yet to be solved for?

1394
01:10:57,355 --> 01:11:03,355
Probably. There's probably all sorts of unsolved problems, but I'm not familiar with the grievance problem in this context.

1395
01:11:03,355 --> 01:11:04,355
Do you want to elaborate on it?

1396
01:11:04,355 --> 01:11:09,355
So let's say you're playing a game of chess, and the position is checkmate.

1397
01:11:09,355 --> 01:11:15,355
You are entitled to your funds because you defeated your opponent, but your opponent is grieving you.

1398
01:11:15,355 --> 01:11:19,355
He is refusing to send you the funds.

1399
01:11:21,355 --> 01:11:27,355
Yeah, that's solved because all you do is you make a time lock.

1400
01:11:27,355 --> 01:11:30,355
He has to act within a certain time frame.

1401
01:11:30,355 --> 01:11:36,355
So you use Bitcoin's time lock technology to say he has to act within 10 blocks, and if he doesn't, you get the money.

1402
01:11:36,355 --> 01:11:37,355
Nice.

1403
01:11:37,355 --> 01:11:40,355
And so that solves that problem.

1404
01:11:40,355 --> 01:11:47,355
But there's another way to grieve in this scenario, which is that chess is not that complicated of a program,

1405
01:11:47,355 --> 01:11:55,355
but it would probably take somewhere around 20 transactions to play out a full game of chess on the blockchain.

1406
01:11:55,355 --> 01:11:59,355
And your opponent could grieve you in that way.

1407
01:11:59,355 --> 01:12:08,355
On the first move, he just makes a dispute, and then the rest of the game has to be played out on the blockchain,

1408
01:12:08,355 --> 01:12:11,355
which would cost a lot of money, especially recently.

1409
01:12:11,355 --> 01:12:13,355
Transaction fees were like $20.

1410
01:12:13,355 --> 01:12:20,355
So then you have to pay $20 per move, and that would be another form of grieving you.

1411
01:12:20,355 --> 01:12:24,355
So the game can start off offline but then go on chain.

1412
01:12:24,355 --> 01:12:27,355
That is a mind-blown concept right there.

1413
01:12:27,355 --> 01:12:28,355
Okay, cool.

1414
01:12:28,355 --> 01:12:29,355
Yeah.

1415
01:12:30,355 --> 01:12:34,355
It's designed so that nothing goes on chain because there's no –

1416
01:12:34,355 --> 01:12:40,355
whichever party decides to put it on chain can only do so in the form of a challenge.

1417
01:12:40,355 --> 01:12:44,355
And if they lose the challenge, they lose a pledge.

1418
01:12:44,355 --> 01:12:49,355
They lose some collateral that they put up saying, I know I'm right.

1419
01:12:49,355 --> 01:12:51,355
So you don't – there's an incentive not to do that.

1420
01:12:51,355 --> 01:12:56,355
But if you do it, if you do it anyway, even though you're going to lose some money,

1421
01:12:56,355 --> 01:13:04,355
you're still making your opponent pay a lot of money just to run the set of transactions that prove that they weren't lying,

1422
01:13:04,355 --> 01:13:06,355
prove that they weren't being fraudulent.

1423
01:13:06,355 --> 01:13:14,355
So yeah, it kind of – you can ruin someone's day by going on chain anyway, but you'll lose money by doing so.

1424
01:13:14,355 --> 01:13:16,355
So hopefully people won't do that.

1425
01:13:17,355 --> 01:13:18,355
Exactly.

1426
01:13:21,355 --> 01:13:24,355
So is there a software-as-a-service platform yet for any of this?

1427
01:13:27,355 --> 01:13:28,355
No.

1428
01:13:28,355 --> 01:13:34,355
My implementation is on my GitHub, and it runs as a GitHub page.

1429
01:13:34,355 --> 01:13:36,355
So you just go to my GitHub.

1430
01:13:36,355 --> 01:13:42,355
You find the BitVM repository, and you click the URL.

1431
01:13:42,355 --> 01:13:44,355
It's like try it here.

1432
01:13:44,355 --> 01:13:45,355
You click the URL.

1433
01:13:45,355 --> 01:13:50,355
It loads up a web page where just GitHub pages are serving the content for you.

1434
01:13:50,355 --> 01:13:55,355
And you run some JavaScript that creates a BitVM virtual machine.

1435
01:13:55,355 --> 01:14:01,355
You pick a program you want to run, and then you can do it with another person, or I've always just done it with myself.

1436
01:14:01,355 --> 01:14:04,355
I play both sides, Alice and Bob.

1437
01:14:10,355 --> 01:14:12,355
So that's what we've been currently doing.

1438
01:14:12,355 --> 01:14:19,355
And the current functions we have running, only one of them is actually really – well, only two of them are really useful.

1439
01:14:19,355 --> 01:14:20,355
No, that's not true.

1440
01:14:20,355 --> 01:14:24,355
They're all useful, but they're all kind of fundamental building blocks.

1441
01:14:24,355 --> 01:14:28,355
There's not much you can do with them just by themselves.

1442
01:14:28,355 --> 01:14:38,355
So, yeah, making things that use these tools we have available now is one thing to work on in the BitVM space.

1443
01:14:38,355 --> 01:14:48,355
And then another thing to work on, which is what I've been doing, is trying to make more tools for people to use and to make cool programs that do new useful things.

1444
01:14:48,355 --> 01:14:51,355
So, Super, I'm probably LARPing, but I put a thing in the nest.

1445
01:14:51,355 --> 01:15:08,355
Would you be objecting to a pleb like me implementing a BitVM into like a controller kind of abstraction layer where we can use Brocade to kind of streamline this setup and tear down of these connections?

1446
01:15:10,355 --> 01:15:12,355
I don't know what Brocade is, but go for it, man.

1447
01:15:12,355 --> 01:15:13,355
Do whatever you think is cool.

1448
01:15:13,355 --> 01:15:15,355
It's open source, so it'll be auditable.

1449
01:15:16,355 --> 01:15:17,355
Great.

1450
01:15:17,355 --> 01:15:18,355
Yeah.

1451
01:15:18,355 --> 01:15:22,355
If you find something cool that you can do with BitVM, go do it.

1452
01:15:22,355 --> 01:15:25,355
Go forth and do it and tell us about it so we can try it out.

1453
01:15:25,355 --> 01:15:26,355
Brocade controller.

1454
01:15:26,355 --> 01:15:27,355
Okay, cool.

1455
01:15:27,355 --> 01:15:28,355
Thanks.

1456
01:15:28,355 --> 01:15:31,355
Yeah, so I'll slide into your DMs if I start getting really technical.

1457
01:15:31,355 --> 01:15:38,355
Otherwise, I'm just going to keep it lay for everybody here because I'm definitely interested in BitVM and what's going on here.

1458
01:15:38,355 --> 01:15:39,355
Great.

1459
01:15:39,355 --> 01:15:41,355
Another BitVM developer, guys.

1460
01:15:41,355 --> 01:15:43,355
Round of applause.

1461
01:15:44,355 --> 01:15:47,355
A LARPing pseudo-wannabe developer, guys.

1462
01:15:47,355 --> 01:15:49,355
I'm just an enthusiast at this point.

1463
01:15:49,355 --> 01:15:52,355
I'm trying to learn, and I think we could do more with Bitcoin.

1464
01:15:52,355 --> 01:15:56,355
I definitely think we're underutilizing it, and it's the future of the internet.

1465
01:15:56,355 --> 01:16:01,355
In my experience, if you LARP long enough, you convince yourself that you can actually do it.

1466
01:16:01,355 --> 01:16:02,355
Yeah, right?

1467
01:16:02,355 --> 01:16:03,355
That's nice.

1468
01:16:06,355 --> 01:16:07,355
I appreciate the platform.

1469
01:16:07,355 --> 01:16:08,355
Thank you.

1470
01:16:08,355 --> 01:16:09,355
I yield the floor.

1471
01:16:09,355 --> 01:16:10,355
Tomas?

1472
01:16:11,355 --> 01:16:26,355
Did you think of utilizing some hardware description language, like VHDL, for example, for generating the gates or writing the processor you were mentioning before?

1473
01:16:26,355 --> 01:16:28,355
Yeah, I did.

1474
01:16:28,355 --> 01:16:42,355
So one of the things I did yesterday was I downloaded something called Verilog for the first time, which is a program for producing VHDL files, which is a type of hardware description language format.

1475
01:16:42,355 --> 01:16:45,355
And so that was really neat.

1476
01:16:45,355 --> 01:16:52,355
I took one program that somebody wrote, ran it through Verilog, and it produced this hardware description language.

1477
01:16:52,355 --> 01:16:59,355
And then I looked at the file and saw how it actually converted it into all these logic gates for me, and I could read it.

1478
01:16:59,355 --> 01:17:03,355
I was like, oh, I can see how I can turn this into something I could use on BitVM.

1479
01:17:03,355 --> 01:17:08,355
So, yeah, that was a neat and new experience for me.

1480
01:17:08,355 --> 01:17:26,355
And then while I was researching that, I found something else called Logisim, which is this program where you place logic gates on a virtual breadboard and create connections between them with virtual wires.

1481
01:17:26,355 --> 01:17:37,355
And then when your program is ready, you can hit go, and it'll start a little clock that you can program the speed of, and it'll send electricity through the wires at whatever frequency you make.

1482
01:17:37,355 --> 01:17:39,355
And it's really neat.

1483
01:17:39,355 --> 01:17:56,355
People have done a bunch of cool stuff in this Logisim program, including they have converters between that and Verilog, so you can make hardware HDLs out of it and then program an FPGA or make an ASIC using the things you made in Logisim.

1484
01:17:56,355 --> 01:18:03,355
So I started playing with Logisim yesterday, too, and that's enormous fun because you can see the results.

1485
01:18:04,355 --> 01:18:11,355
Like little input devices and output devices, you can visualize what your program is doing.

1486
01:18:11,355 --> 01:18:15,355
So, yeah, I've been having a heck of a time learning how to do that and playing with it.

1487
01:18:15,355 --> 01:18:24,355
And, yeah, HDLs are now something I've done only for one day, but they're fun, and I'm enjoying it immensely.

1488
01:18:24,355 --> 01:18:32,355
Yeah, yeah, I think Verilog is actually the older version of the VHDL language, if I am not mistaken.

1489
01:18:32,355 --> 01:18:42,355
Like I've played with it like 10 years ago when it was some kind of like a school project, actually, and we made like an 8-bit processor in it.

1490
01:18:42,355 --> 01:18:47,355
And it wasn't so hard in the end, so I was thinking it may be useful for this stuff.

1491
01:18:48,355 --> 01:18:54,355
Mm-hmm. Yeah, I mean, I found somebody produced a circuit file for an 8-bit computer.

1492
01:18:54,355 --> 01:18:57,355
Well, a bunch of people have, actually, in Logisim.

1493
01:18:57,355 --> 01:19:02,355
So I'm trying to take that and then convert it into this version.

1494
01:19:02,355 --> 01:19:10,355
Well, it's not an HDL, but I guess it's in some ways equivalent into the kind of format that BitVM understands.

1495
01:19:10,355 --> 01:19:16,355
So that's one of my current projects is to make an 8-bit CPU for BitVM.

1496
01:19:17,355 --> 01:19:29,355
Yeah, and that's part of what we were discussing on the stage was I was just doing some napkin math earlier today to figure out what the data transfer requirements would be to run a cycle of this CPU.

1497
01:19:29,355 --> 01:19:38,355
And I was blown away by how large the amount of data you'd have to send your counterparty is in order to run a CPU.

1498
01:19:38,355 --> 01:19:44,355
And I assume that I'm just misunderstanding something fundamental about optimal design.

1499
01:19:44,355 --> 01:19:47,355
But we'll see. I'm going to keep building and learning.

1500
01:19:49,355 --> 01:19:54,355
The way I understand it, there's always a left, a right, and a center.

1501
01:19:54,355 --> 01:19:58,355
So you're always either working on two operations and you're...

1502
01:19:58,887 --> 01:20:05,527
Sorry, guys, I'm in a loud place. But yeah, like, if you take the left side of a operation and then the right side,

1503
01:20:05,527 --> 01:20:10,247
and then you know that there's a sum that they both have to compute to,

1504
01:20:10,247 --> 01:20:14,487
that would be the left side and the right side of the processor if you're just doing point-to-point.

1505
01:20:14,487 --> 01:20:21,446
It would get nutty if you were doing multi-point-to-multi-point or point-to-multi-point.

1506
01:20:21,446 --> 01:20:26,887
Well, all of those are new terms for me. So I don't know what to say about any of that.

1507
01:20:29,526 --> 01:20:34,247
Well, I'm just trying to think, how would you break down a simple operation,

1508
01:20:35,047 --> 01:20:42,887
like a simple gate? How would you verify that both parties agree to the output of some input?

1509
01:20:43,767 --> 01:20:49,607
And I don't know, maybe I'm misunderstanding it. Help me, guide me through. I guess the goal is

1510
01:20:49,607 --> 01:20:54,646
to keep each other honest when playing games like chess or cards or something on the internet

1511
01:20:54,646 --> 01:21:01,047
for money. Well, so the nice thing about Bitcoin is that its programming language,

1512
01:21:01,047 --> 01:21:05,927
Bitcoin script, has support for logic gates. So one thing you can do if you want to make sure

1513
01:21:05,927 --> 01:21:12,166
that you both agree on the outcome of a particular logic gate is you can make a Bitcoin transaction

1514
01:21:12,166 --> 01:21:18,327
that has that logic gate in it and you can commit to what numbers you're going to put

1515
01:21:18,327 --> 01:21:23,047
into that logic gate. Logic gates only accept zeros and ones as input and they only give zeros

1516
01:21:23,047 --> 01:21:27,766
and ones as output. So you can make commitments to that. You can say, here's my commitment to

1517
01:21:27,766 --> 01:21:33,687
putting in two zeros to the AND gate. And if you put in two zeros, the AND gate should produce a

1518
01:21:33,687 --> 01:21:38,726
zero. That's what it's supposed to do. But if your commitment says, yeah, I'm going to put in two

1519
01:21:38,726 --> 01:21:45,047
zeros and I say it's going to produce a one, you can run that on Bitcoin and Bitcoin can be like,

1520
01:21:45,047 --> 01:21:49,846
nope, that's false. That does not compute and does give your money to the other guy.

1521
01:21:50,887 --> 01:21:53,846
So that's kind of what we do with BitVM, or at least that's what I'm doing with it,

1522
01:21:53,846 --> 01:21:59,846
is I'm encoding every logic gate of the entire circuit into a Bitcoin address. And then you pick

1523
01:21:59,846 --> 01:22:03,846
which one you want to challenge your opponent on. And you say, if there is a challenge, if you

1524
01:22:03,846 --> 01:22:08,566
disagree on the outcome of a particular gate, you can say, hey, here's what I put in and I got this

1525
01:22:08,566 --> 01:22:13,926
result. Here's what he put in. He got that result. Which one of us is correct? And Bitcoin will find

1526
01:22:13,926 --> 01:22:17,207
whoever's incorrect and then send that person's money to the other guy.

1527
01:22:18,407 --> 01:22:21,446
Man, I'd love to do a Zoom so you can just walk me through this

1528
01:22:21,446 --> 01:22:25,286
on the screen, how to test this out. This is awesome.

1529
01:22:27,286 --> 01:22:30,166
Sure. Well, if you do want to test it out, you can go to my GitHub and

1530
01:22:32,166 --> 01:22:37,687
github.com slash supertestnet, all one word, and look through my repositories. One of the

1531
01:22:37,687 --> 01:22:43,207
most recent ones is called Tapleaf Circuits. It's my implementation of the BitVM. And it's got a

1532
01:22:43,207 --> 01:22:48,086
live version running on the web. And you can take a look at the source code. You can view it,

1533
01:22:48,086 --> 01:22:51,207
see how the programs operate, see how the Bitcoin transactions are constructed.

1534
01:22:51,926 --> 01:22:57,767
And it's got a little explanation in the readme that goes through it, which a lot of people have

1535
01:22:57,767 --> 01:23:02,566
said they found helpful. I hope you find it helpful, too. Thank you. I'll definitely try

1536
01:23:02,566 --> 01:23:06,327
that when I get to a computer. Cool.

1537
01:23:07,207 --> 01:23:13,047
Okay, well, I think that's going to be it for me. I'm going to go to the convenience store to get

1538
01:23:13,047 --> 01:23:19,526
a drink. And then I'm going to come back and start working again on my 8-bit CPU. But I want to thank

1539
01:23:19,526 --> 01:23:25,366
everyone for the time we've spent together here, trashing BitVM and praising BIP300.

1540
01:23:26,487 --> 01:23:32,967
One more question, supertestnet. Is your 8-bit CPU going to have a super user bit?

1541
01:23:33,047 --> 01:23:41,446
I don't think so. It was just going to have some RAM and a instruction set that can modify the

1542
01:23:41,446 --> 01:23:47,207
contents of RAM based on what they currently say. So in every clock cycle, it would read what's

1543
01:23:47,207 --> 01:23:51,047
currently in the RAM, run the set of instructions, and then write the new state of the RAM.

1544
01:23:51,926 --> 01:23:55,526
And then the next clock cycle, just do that again and do that repeatedly.

1545
01:23:56,566 --> 01:24:00,967
And I was just going to say, I'm going to go back to my computer. I'm going to go back to my

1546
01:24:00,967 --> 01:24:07,607
computer and do that repeatedly. And I was hoping that you would have some of the pieces of RAM

1547
01:24:07,607 --> 01:24:13,047
would be reserved for updating pixels on a screen. And so then you could actually have an output

1548
01:24:13,047 --> 01:24:18,087
device that you'd be able to show the user. And I would want to get some games running on it,

1549
01:24:18,087 --> 01:24:24,726
so people can play games on BitVM. That's what I'm hoping to do. But I've been running into

1550
01:24:24,726 --> 01:24:28,647
napkin math problems that tell me it'll be like terabytes of data to update this thing.

1551
01:24:28,647 --> 01:24:35,527
So hopefully, I will learn while I'm making this. And as I show my work, people will be like,

1552
01:24:35,527 --> 01:24:40,406
you idiot. You did this all wrong. Do it this way. And there's no faster way to get good

1553
01:24:40,406 --> 01:24:44,166
products built than to write terrible ones and put them on the internet. And then people will

1554
01:24:44,166 --> 01:24:49,207
correct you. Because people love to do that. And that's my superpower, is being wrong on the

1555
01:24:49,207 --> 01:24:55,286
internet. So. Nice. Super. I'm unemployed right now. So I'll be following you a lot on the internet

1556
01:24:55,286 --> 01:25:02,647
and interacting with you for the next few weeks, at least. Sweet. Super. Tesnet, may I ask you a

1557
01:25:02,647 --> 01:25:08,006
question? I know you need to go. Well, I don't need to. It was getting dead in here. So I wanted

1558
01:25:08,006 --> 01:25:13,286
to go. But now it's lively again. So go ahead. What's your question? Yeah, that was nice what

1559
01:25:13,286 --> 01:25:22,487
you were talking. And congratulations and wish you success. I want to ask you, can you please

1560
01:25:22,487 --> 01:25:27,286
just touch, don't need to explain very deep. What is the connection?

1561
01:25:29,367 --> 01:25:37,767
What connection has BitVM with Bitcoin blockchain? Like how it's connected?

1562
01:25:39,367 --> 01:25:47,607
Is it with the node? Or how is the interaction? For example, like drivechain, you have the escrow

1563
01:25:47,607 --> 01:25:55,607
and then the sending the transaction to be hashed. So can you explain about that more?

1564
01:25:55,607 --> 01:26:04,006
Sure. You don't need to do deep explanation, just touch on it. Yeah, the point of connection

1565
01:26:04,006 --> 01:26:12,327
is in Bitcoin addresses. So whenever you create a Bitcoin or a BitVM program, you encode the program

1566
01:26:12,327 --> 01:26:19,927
as a set of tap leaves in a tap tree. And then the root of the tap tree becomes your Bitcoin

1567
01:26:19,927 --> 01:26:26,087
address. So that's what you send money to. You send money into that Bitcoin address. Two parties

1568
01:26:26,087 --> 01:26:34,006
do. But before they send money into it, they co-sign together a bunch of transactions that

1569
01:26:34,006 --> 01:26:38,887
allow one of them or both of them to challenge the other and say you ran the program incorrectly.

1570
01:26:39,686 --> 01:26:46,087
And you can prove that they ran the program incorrectly by showing what basically what

1571
01:26:46,087 --> 01:26:52,487
line of code executes falsely. So you can a way to think of an analogy to think of it is that if

1572
01:26:52,487 --> 01:27:01,607
you take each line of code, you're putting each line into a leaf of a tap tree. And so every line

1573
01:27:01,607 --> 01:27:07,686
of code is in there somewhere. So if you both run the code, if you both say we're going to put this

1574
01:27:07,686 --> 01:27:14,406
data as input to the program and I get this result and my counterparty gets this result.

1575
01:27:14,406 --> 01:27:18,006
If you agree on the result, then that's great. There's no dispute. You both ran the program

1576
01:27:18,006 --> 01:27:22,807
correctly. And then you just send the money to whoever the program says should get it.

1577
01:27:23,446 --> 01:27:28,726
If there is no dispute or if there is a dispute, if one of you says it came out true and the other

1578
01:27:28,726 --> 01:27:37,126
says the program returned false, then I guess it'd be my program or I ran the same code as you

1579
01:27:37,126 --> 01:27:40,406
through the program and it said that I'm supposed to get the money. But your counterparty says no,

1580
01:27:40,406 --> 01:27:46,807
it says I'm supposed to get the money. Then you take each other's code and you show what line

1581
01:27:46,807 --> 01:27:52,487
of code they ran incorrectly, what line of code they ran wrong. And that works. And Bitcoin can

1582
01:27:52,487 --> 01:27:57,767
give the money to the person who ran it correctly or just whichever one ran it incorrectly will take

1583
01:27:57,767 --> 01:28:02,166
their money and give it to the other person. So, this incentivizes both parties to play honestly

1584
01:28:02,166 --> 01:28:08,807
or to, I say play, but to write good code. Don't run bad stuff through the program or you'll lose

1585
01:28:08,807 --> 01:28:14,566
your money. So, yeah. You almost want to have a software as a service platform handle all this

1586
01:28:14,566 --> 01:28:23,527
stuff for you. Maybe. I'm hoping that you can easily run it on your own device. That would be

1587
01:28:23,527 --> 01:28:30,087
cool. But maybe if it's a really complicated program and you don't have a good device, you're

1588
01:28:30,087 --> 01:28:34,806
only on your mobile phone, maybe paying someone to run the program for you would be great.

1589
01:28:36,087 --> 01:28:41,847
So, we'll see. I'm just trying to make the software so that people can do what they want.

1590
01:28:42,887 --> 01:28:50,407
Yeah, that's great. Thank you for the explanation. Actually, everything is connected to the address

1591
01:28:50,407 --> 01:28:58,806
that you interact with. Yeah, and this is one of the things that makes it

1592
01:28:58,806 --> 01:29:05,446
different from like BIP300, where BIP300 makes it so that all the nodes on the network

1593
01:29:07,527 --> 01:29:15,287
validate that miners are processing withdrawals from a sidechain in the way that

1594
01:29:15,287 --> 01:29:18,727
BIP300 says they should. And if miners don't do that, then they get

1595
01:29:19,847 --> 01:29:29,686
wrecked. Their blocks are invalid. Whereas with BIP-VM, it's a non-consensus change.

1596
01:29:29,686 --> 01:29:33,686
No one's paying attention to what BIP-VM does except for people who are using it.

1597
01:29:35,126 --> 01:29:39,046
You and your counterparty make a BIP-VM address together. No one else knows that anything even

1598
01:29:39,046 --> 01:29:44,087
happened. They just see some money entering a regular Bitcoin address. But behind the scenes,

1599
01:29:45,046 --> 01:29:50,486
you and your counterparty know what program you put into that address. And then you run the code

1600
01:29:50,486 --> 01:29:57,046
off-chain and only go on-chain if there's a dispute. And then you only show, ideally,

1601
01:29:57,046 --> 01:30:00,087
one line of code where your opponent ran it incorrectly.

1602
01:30:01,847 --> 01:30:12,486
Yeah, actually, if it's a dispute, you put that function that the blockchain should

1603
01:30:14,327 --> 01:30:22,327
have in reality for everything. Because for me, the blockchain is the permanent law in this space.

1604
01:30:22,327 --> 01:30:29,527
And you actually prove that if something happens or it's a dispute, you kind of

1605
01:30:31,446 --> 01:30:40,327
solve the dispute through running with the blockchain or something that is going there.

1606
01:30:40,407 --> 01:30:48,407
So you resolve the dispute. But I think that for drivechains,

1607
01:30:51,287 --> 01:31:00,407
I think that both can exist because I see a different kind of use case for the BIP-VM

1608
01:31:00,407 --> 01:31:09,126
and different for drivechains. Because for me, drivechains is for me. It doesn't mean that

1609
01:31:09,126 --> 01:31:20,246
everybody needs to agree, but I see more as something bigger and can create or kickstart

1610
01:31:21,207 --> 01:31:28,327
some kind of different way of different decentralized economy or something like that.

1611
01:31:28,327 --> 01:31:41,126
But the BIP-VM can be also useful with some kind of programs and who knows in the future.

1612
01:31:43,847 --> 01:31:48,087
I've talked a lot about games, and that's one of the things I'm really interested in

1613
01:31:48,087 --> 01:31:51,446
doing with it is running games on Bitcoin or technically off Bitcoin.

1614
01:31:52,167 --> 01:31:59,767
I just think it'd be hilarious to have a Doom deathmatch where the winner gets the Bitcoin.

1615
01:31:59,767 --> 01:32:02,967
And that'd be awesome. And I think a lot of people would have a lot of fun doing that.

1616
01:32:03,686 --> 01:32:08,887
However, a game is just a program and BIP-VM is just a computer. So in theory,

1617
01:32:08,887 --> 01:32:15,446
you can write any program for it. And so there are... Robin's more interested in writing

1618
01:32:16,327 --> 01:32:22,246
a light client for a sidechain and then validating what happens on the sidechain on Bitcoin.

1619
01:32:22,246 --> 01:32:27,207
And then you can use that to do stuff like manage withdrawals and deposits for that sidechain,

1620
01:32:27,767 --> 01:32:30,887
where Bitcoin understands what's happening and can actually say like,

1621
01:32:30,887 --> 01:32:34,887
yeah, you're supposed to be able to withdraw your money or whatever.

1622
01:32:36,486 --> 01:32:43,207
So you can use this for sidechains. But I think he and I would both say that they wouldn't be as

1623
01:32:43,207 --> 01:32:52,327
good as it would be if we had BIP300. There'd be a lot safer and a lot less data intensive

1624
01:32:52,967 --> 01:32:57,207
and complicated for people to actually use. Yeah, for sure.

1625
01:32:57,207 --> 01:33:00,727
BIP300 would be a big improvement. But something's better than nothing, right?

1626
01:33:02,006 --> 01:33:06,486
If we don't have BIP300, but we do a BIP-VM, let's do what we can with that. And then maybe

1627
01:33:07,446 --> 01:33:16,246
we can fix it later and use BIP300 in the future to make better versions of things that we did with

1628
01:33:16,246 --> 01:33:24,967
BIP-VM. So that'd be my hope. Yeah, absolutely. I mean, it's like everything. I hear you said

1629
01:33:26,246 --> 01:33:36,006
try to do something more with Bitcoin, which I agree and I support. And with my team,

1630
01:33:36,167 --> 01:33:44,327
we are doing something on Bitcoin, which I can't talk anything about that yet.

1631
01:33:45,686 --> 01:33:52,407
But we are trying to do something. Cool. Thank you for trying to do something.

1632
01:33:53,126 --> 01:34:04,407
Oh, yeah. I mean, you know, like I always say like Bitcoin is kind of like an open book.

1633
01:34:04,407 --> 01:34:09,926
Everything is possible. Just you need to be kind of, you know, to find a way and

1634
01:34:11,207 --> 01:34:16,407
develop something that is different. And I mean, useful, positive and

1635
01:34:17,207 --> 01:34:21,366
something that will improve Bitcoin as a whole.

1636
01:34:21,767 --> 01:34:27,046
All right. Well, I'm going to head out. So thank you all for the time we've had together. And

1637
01:34:27,686 --> 01:34:32,327
if you all want to keep talking, that's great. But I'm out. See you later.

1638
01:34:32,327 --> 01:34:33,366
Take it easy, super good talking to you.

1639
01:34:35,126 --> 01:34:37,126
You too.
