WEBVTT - Automatic transcript; recognition may contain errors. Reviewed for technical wording and speaker labels. Times match the published episode.

00:00:07.250 --> 00:00:10.410
<v Aaron van Wirdum>Live from Utrecht, this is the Van Wirdum Sjorsnado.

00:00:10.710 --> 00:00:10.970
<v Ruben Somsen>Hello.

00:00:11.510 --> 00:00:13.290
<v Sjors Provoost>Oh my god, who's there?

00:00:13.710 --> 00:00:14.750
<v Ruben Somsen>A burglar.

00:00:15.550 --> 00:00:17.190
<v Aaron van Wirdum>We have another...

00:00:17.600 --> 00:00:18.340
<v Sjors Provoost>Entity.

00:00:18.440 --> 00:00:21.220
<v Aaron van Wirdum>We have another Van Wirdum Sjorsnado with Extra Somsen today.

00:00:21.480 --> 00:00:21.960
<v Ruben Somsen>That's right.

00:00:22.520 --> 00:00:23.160
<v Aaron van Wirdum>Ruben, welcome.

00:00:23.420 --> 00:00:24.020
<v Sjors Provoost>Welcome back.

00:00:24.360 --> 00:00:25.400
<v Ruben Somsen>Yeah, glad to be back.

00:00:26.000 --> 00:00:31.620
<v Aaron van Wirdum>Guys, first of all, congratulations. As of yesterday, we are

00:00:31.620 --> 00:00:36.540
<v Aaron van Wirdum>the number one. In the world of most new corona cases.

00:00:37.460 --> 00:00:42.640
<v Aaron van Wirdum>Well done. Even better than the White House? Yes, we're number one. Oh, that's

00:00:42.640 --> 00:00:46.380
<v Aaron van Wirdum>amazing. Does anyone want to thank their parents, Ruben?

00:00:46.540 --> 00:00:49.800
<v Ruben Somsen>I just hope my parents will be safe in these trying times.

00:00:52.810 --> 00:00:55.280
<v Aaron van Wirdum>Sjors. I know you're happy with this.

00:00:55.980 --> 00:00:59.420
<v Sjors Provoost>No, I mean, I could say I told you so, but...

00:00:59.420 --> 00:01:04.240
<v Aaron van Wirdum>Yeah, you kind of did, didn't we? Like last week, that was basically... Who could

00:01:04.240 --> 00:01:08.150
<v Aaron van Wirdum>have predicted this, right? I don't know. I guess Sjors could have. Okay, let's

00:01:08.150 --> 00:01:10.990
<v Aaron van Wirdum>talk Bitcoin. Oh, do you want to add something about Corona, Sjors?

00:01:11.270 --> 00:01:12.570
<v Sjors Provoost>No, we'll see what happens.

00:01:12.890 --> 00:01:15.870
<v Aaron van Wirdum>We'll see what happens. Guys, I forgot to mention something.

00:01:16.110 --> 00:01:16.790
<v Sjors Provoost>Oh my God.

00:01:17.010 --> 00:01:18.630
<v Aaron van Wirdum>I have amazing news.

00:01:18.870 --> 00:01:19.310
<v Ruben Somsen>Tell me.

00:01:19.450 --> 00:01:20.910
<v Aaron van Wirdum>Actually, Sjors, you already know the news.

00:01:21.090 --> 00:01:21.310
<v Sjors Provoost>I know.

00:01:21.670 --> 00:01:22.030
<v Aaron van Wirdum>Ruben.

00:01:22.150 --> 00:01:22.570
<v Ruben Somsen>What's the news?

00:01:22.850 --> 00:01:26.210
<v Aaron van Wirdum>The Van Wirdum Sjorsnado has its own feed now.

00:01:26.450 --> 00:01:26.850
<v Ruben Somsen>Wow.

00:01:27.170 --> 00:01:30.370
<v Aaron van Wirdum>Its own RSS feed and it showed up in my podcast app.

00:01:30.730 --> 00:01:31.070
<v Ruben Somsen>Excellent.

00:01:31.350 --> 00:01:35.720
<v Aaron van Wirdum>So, I'm now subscribed to the Van Wirdum Sjorsnado. If you're listening and if

00:01:35.720 --> 00:01:39.420
<v Aaron van Wirdum>you want to hear it for all our episodes, then you can subscribe to the Van

00:01:39.420 --> 00:01:40.040
<v Aaron van Wirdum>Wirdum Sjorsnado.

00:01:40.240 --> 00:01:43.280
<v Ruben Somsen>I'll be subscribing for sure. It's actually exactly what I was asking you guys

00:01:43.280 --> 00:01:46.120
<v Ruben Somsen>for, like what I was missing. I just wanted to be able to subscribe to your

00:01:46.120 --> 00:01:47.620
<v Ruben Somsen>podcast specifically. So great.

00:01:48.840 --> 00:01:53.320
<v Aaron van Wirdum>That's two subscribers already, Sjors, me and Ruben. That's excellent. We're on the roll.

00:01:53.520 --> 00:01:59.280
<v Sjors Provoost>I was already subscribed. It's free. Another related news is that we have had our

00:01:59.280 --> 00:02:00.280
<v Sjors Provoost>first swap cast.

00:02:00.600 --> 00:02:01.600
<v Aaron van Wirdum>Oh yeah, that's true.

00:02:01.780 --> 00:02:05.060
<v Sjors Provoost>Because we actually featured on the Unhashed podcast.

00:02:05.420 --> 00:02:09.280
<v Ruben Somsen>That's right. Yeah. So sometimes we're getting technical issues or whatever and

00:02:09.280 --> 00:02:14.380
<v Ruben Somsen>unable to record. And then what we do is we look at other... podcast or something

00:02:14.380 --> 00:02:18.640
<v Ruben Somsen>where maybe I appear or one of the other guys and we broadcast that. So in this

00:02:18.640 --> 00:02:22.740
<v Ruben Somsen>case, I came onto your show. So I asked you guys, maybe we can put that on the

00:02:22.740 --> 00:02:26.740
<v Ruben Somsen>Unhashed podcast. So our Unhashed podcast listeners were also able to listen to

00:02:26.740 --> 00:02:30.620
<v Ruben Somsen>the last episode. And probably, you know, if, I don't know, a couple of weeks

00:02:30.620 --> 00:02:33.960
<v Ruben Somsen>from now, we run into issues again, maybe I'll be asking you to air this episode.

00:02:34.860 --> 00:02:37.180
<v Ruben Somsen>Maybe it'll be number two. Yeah. And

00:02:37.180 --> 00:02:41.100
<v Sjors Provoost>if you need an extra motivation to check that out, we actually re-edited the

00:02:41.100 --> 00:02:43.260
<v Sjors Provoost>audio. So it's going to be a little bit better than the original.

00:02:43.420 --> 00:02:43.820
<v Ruben Somsen>That's correct.

00:02:44.060 --> 00:02:44.160
<v Sjors Provoost>Check it out.

00:02:44.460 --> 00:02:49.720
<v Aaron van Wirdum>All right. I wanted to mention that. Let's talk Bitcoin, Ruben. We're going to

00:02:49.720 --> 00:02:51.460
<v Aaron van Wirdum>discuss another of your proposals.

00:02:51.700 --> 00:02:52.060
<v Ruben Somsen>That's right.

00:02:52.300 --> 00:02:57.280
<v Aaron van Wirdum>It's your sidechain proposal, which I'm sure has a very compelling name, which

00:02:57.280 --> 00:02:58.500
<v Aaron van Wirdum>I'm forgetting right now.

00:02:58.540 --> 00:03:02.400
<v Ruben Somsen>Yeah, so it's actually kind of tricky because the word sidechain is very

00:03:02.400 --> 00:03:07.100
<v Ruben Somsen>overloaded. So I'm not entirely certain whether or not I should be calling it a sidechain.

00:03:07.440 --> 00:03:07.540
<v Aaron van Wirdum>Right.

00:03:07.800 --> 00:03:12.460
<v Ruben Somsen>So generally speaking, these days I call it a blind merge mine chain. And it

00:03:12.460 --> 00:03:15.740
<v Ruben Somsen>actually is kind of a combination of two mechanisms. So one is blind merge

00:03:15.740 --> 00:03:19.740
<v Ruben Somsen>mining, which is some kind of process. where you somehow create another

00:03:19.740 --> 00:03:24.740
<v Ruben Somsen>blockchain via Bitcoin. And the second one is called the perpetual one-way peg,

00:03:24.940 --> 00:03:29.640
<v Ruben Somsen>which is kind of a method of creating a token on the chain without having some

00:03:29.640 --> 00:03:33.400
<v Ruben Somsen>kind of speculation aspect where there's going to be a pump and dump, some kind

00:03:33.400 --> 00:03:35.180
<v Ruben Somsen>of shit coin, avoiding all of that.

00:03:35.440 --> 00:03:41.040
<v Aaron van Wirdum>Yeah. And I say, first of all, the reason why you're probably not super

00:03:41.040 --> 00:03:45.440
<v Aaron van Wirdum>comfortable calling it a sidechain is because the idea behind the sidechain is

00:03:45.440 --> 00:03:51.120
<v Aaron van Wirdum>essentially that you move, bitcoins or coins or something back to bitcoins

00:03:51.120 --> 00:03:56.780
<v Aaron van Wirdum>from Bitcoin to an alternative chain where alternative rules apply and then you

00:03:56.780 --> 00:03:58.980
<v Aaron van Wirdum>can move it back to the Bitcoin blockchain

00:03:58.980 --> 00:03:59.640
<v Ruben Somsen>that's right

00:03:59.640 --> 00:04:02.320
<v Aaron van Wirdum>and that last step that's actually not possible in your proposal

00:04:02.320 --> 00:04:06.140
<v Ruben Somsen>that last step is not entirely possible there is some hope that maybe the token

00:04:06.140 --> 00:04:10.340
<v Ruben Somsen>that's on there is not going to be too far from being worth one Bitcoin so you

00:04:10.340 --> 00:04:12.600
<v Ruben Somsen>can trade it back and forth but that is not guaranteed at all

00:04:12.600 --> 00:04:18.100
<v Aaron van Wirdum>yeah that's kind of the theory which we'll get into in a bit yeah Okay, so it's

00:04:18.100 --> 00:04:23.820
<v Aaron van Wirdum>not quite a sidechain, but it has some similar properties. Most obviously, this

00:04:23.820 --> 00:04:29.610
<v Aaron van Wirdum>alternative chain can have alternative rules. So Bitcoin has all sorts of

00:04:29.610 --> 00:04:34.210
<v Aaron van Wirdum>rules, like a block is found once every 10 minutes and all of the other rules.

00:04:34.410 --> 00:04:39.330
<v Aaron van Wirdum>And then with this... Merge mine chain, this alternative chain, you can have

00:04:39.330 --> 00:04:43.610
<v Aaron van Wirdum>other rules. For example, you can have more privacy or you can have more smart

00:04:43.610 --> 00:04:49.610
<v Aaron van Wirdum>contracting types of capabilities or what are some other nifty

00:04:49.610 --> 00:04:51.330
<v Aaron van Wirdum>benefits you see in a chain like this?

00:04:51.490 --> 00:04:55.430
<v Sjors Provoost>Or you can even have the same rules, but it's just going to be cheaper because

00:04:55.430 --> 00:04:59.310
<v Sjors Provoost>you do a bunch of transactions on the side chain and then occasionally you make a

00:04:59.310 --> 00:05:02.770
<v Sjors Provoost>block and that's represented as just one transaction on the Bitcoin side.

00:05:03.020 --> 00:05:08.060
<v Aaron van Wirdum>Yeah, cheaper transactions, that's an option. What are other benefits you foresee

00:05:08.060 --> 00:05:09.540
<v Aaron van Wirdum>for something like this? Let's talk about that.

00:05:09.780 --> 00:05:14.780
<v Ruben Somsen>So, I mean, this is, I guess it goes into kind of the use cases. So I would say

00:05:14.780 --> 00:05:18.380
<v Ruben Somsen>that this kind of chain, so it can be literally any chain, right? So everything

00:05:18.380 --> 00:05:22.080
<v Ruben Somsen>that altcoins are doing can kind of be done on these blind merged mined chains,

00:05:22.280 --> 00:05:26.680
<v Ruben Somsen>except the one difference here is that it's not going to be a store of value. If

00:05:26.680 --> 00:05:29.420
<v Ruben Somsen>you want to store a value, you got to use Bitcoin. But anything else, anything

00:05:29.420 --> 00:05:32.590
<v Ruben Somsen>that's not storing value, you can do with these chains. And then the question

00:05:32.590 --> 00:05:36.530
<v Ruben Somsen>kind of becomes, well, what non-store of value use cases are there for other

00:05:36.530 --> 00:05:40.830
<v Ruben Somsen>chains? And a couple of things have come to mind, mainly colored coins. So that

00:05:40.830 --> 00:05:44.550
<v Ruben Somsen>would be the main use case, I think. Any person who wants to create some kind of

00:05:44.550 --> 00:05:50.070
<v Ruben Somsen>token, USD tether, for instance, can issue these on a separate chain. And that is

00:05:50.070 --> 00:05:53.950
<v Ruben Somsen>preferable to issuing them on top of the Bitcoin blockchain because on the

00:05:53.950 --> 00:05:56.850
<v Ruben Somsen>Bitcoin blockchain, presumably fees are going to be high. You're going to have to

00:05:56.850 --> 00:05:59.570
<v Ruben Somsen>compete for block space. But here you have your kind of your separate chain with

00:05:59.570 --> 00:06:03.210
<v Ruben Somsen>your separate block space. So it's sort of scalable in that sense.

00:06:03.880 --> 00:06:07.420
<v Aaron van Wirdum>Could you have like a different monetary policy on a chain like this?

00:06:07.740 --> 00:06:13.580
<v Ruben Somsen>Well, the idea is generally that you don't really have a token that

00:06:13.580 --> 00:06:18.100
<v Ruben Somsen>is being issued on this chain. So if you want some monetary policy on there, you

00:06:18.100 --> 00:06:21.360
<v Ruben Somsen>kind of have to issue a token on there. And if you issue a token on there, you're

00:06:21.360 --> 00:06:25.200
<v Ruben Somsen>going to reintroduce speculation. So I would say that's kind of a separate thing.

00:06:25.340 --> 00:06:25.740
<v Aaron van Wirdum>Okay.

00:06:25.920 --> 00:06:26.680
<v Ruben Somsen>So no, not really.

00:06:27.020 --> 00:06:28.980
<v Aaron van Wirdum>Okay, so let's get into how it works.

00:06:29.220 --> 00:06:32.580
<v Sjors Provoost>Yeah, especially, I guess we want to start with blind merge mining.

00:06:32.640 --> 00:06:36.880
<v Aaron van Wirdum>Yeah, there's two aspects of it. One you just mentioned is one of them is blind

00:06:36.880 --> 00:06:39.120
<v Aaron van Wirdum>merge mining. The other is proof of burn.

00:06:39.420 --> 00:06:40.560
<v Ruben Somsen>Perpetual one-way peg.

00:06:40.960 --> 00:06:43.020
<v Aaron van Wirdum>Right, okay. So yeah, merge mining first.

00:06:43.240 --> 00:06:48.730
<v Ruben Somsen>Yes, yeah. So I guess... Very, very broadly, there are multiple ways of doing

00:06:48.730 --> 00:06:52.970
<v Ruben Somsen>blind merge mining. And one we're going to be talking about here is kind of a fee

00:06:52.970 --> 00:06:55.110
<v Ruben Somsen>bidding method of doing blind merge mining.

00:06:55.630 --> 00:06:59.590
<v Aaron van Wirdum>So what is merged or merged mining at all or blind or not?

00:06:59.810 --> 00:07:05.110
<v Ruben Somsen>So yeah, the original merge mining concept is kind of to ask Bitcoin miners to

00:07:05.110 --> 00:07:08.760
<v Ruben Somsen>add a hash. off some other blockchain while they're hashing Bitcoin's proof of

00:07:08.760 --> 00:07:13.280
<v Ruben Somsen>work. The word blind kind of adds to it that you don't really need the miners to

00:07:13.280 --> 00:07:17.040
<v Ruben Somsen>figure out which blocks to add because the original method of regular merge

00:07:17.040 --> 00:07:22.180
<v Ruben Somsen>mining, the issue was that the miners wouldn't be just checking Bitcoin. They

00:07:22.180 --> 00:07:25.780
<v Ruben Somsen>would be checking all these other coins as well. And there were some concerns

00:07:25.780 --> 00:07:29.600
<v Ruben Somsen>with that, that you're maybe overloading miners with too much work, making it

00:07:29.600 --> 00:07:32.740
<v Ruben Somsen>more expensive to become a Bitcoin miner. So the blind part is kind of important

00:07:32.740 --> 00:07:37.870
<v Ruben Somsen>in the sense that it allows anyone to create a block, not just miners. And miners

00:07:37.870 --> 00:07:42.170
<v Ruben Somsen>still have to mine it, but through some mechanism, you're kind of compensating

00:07:42.170 --> 00:07:42.730
<v Ruben Somsen>them for that.

00:07:43.070 --> 00:07:45.810
<v Aaron van Wirdum>Yeah, and to be clear, when you mean block here, you mean a block on this

00:07:45.810 --> 00:07:50.660
<v Aaron van Wirdum>alternative chain, on this new chain. Yeah, so... like any blockchain it consists

00:07:50.660 --> 00:07:55.820
<v Aaron van Wirdum>of blocks and these blocks are hashed and each hash so each block is then

00:07:55.820 --> 00:08:01.120
<v Aaron van Wirdum>included in the Bitcoin blockchain and users of this merged mine sidechain

00:08:01.120 --> 00:08:06.320
<v Aaron van Wirdum>they actually check the Bitcoin blockchain to figure out what their own

00:08:06.320 --> 00:08:09.600
<v Aaron van Wirdum>blockchain is in a way i'm calling it their own it's you know they're probably

00:08:09.600 --> 00:08:13.750
<v Aaron van Wirdum>also Bitcoin users or but you know they're they're They're using the Bitcoin

00:08:13.750 --> 00:08:15.990
<v Aaron van Wirdum>blockchain to figure out what the sidechain looks like.

00:08:17.750 --> 00:08:18.370
<v Ruben Somsen>That's right.

00:08:20.530 --> 00:08:25.470
<v Sjors Provoost>Concretely, if you're using transactions in this example, as a sidechain user,

00:08:25.670 --> 00:08:28.630
<v Sjors Provoost>you're checking the Bitcoin blockchain and you're looking for a specific kind of

00:08:28.630 --> 00:08:32.870
<v Sjors Provoost>transaction. And in that specific kind of transaction, you see a hash. and then

00:08:32.870 --> 00:08:36.610
<v Sjors Provoost>you take a note of that hash, and then you start syncing your sidechain

00:08:36.610 --> 00:08:40.430
<v Sjors Provoost>blockchain, and as soon as you see that hash that you were expecting, you're

00:08:40.430 --> 00:08:43.930
<v Sjors Provoost>like, okay, this is a valid sidechain block. If you see a different hash, you

00:08:43.930 --> 00:08:44.570
<v Sjors Provoost>just ignore it.

00:08:44.710 --> 00:08:45.290
<v Ruben Somsen>That's correct.

00:08:45.450 --> 00:08:48.290
<v Aaron van Wirdum>Yeah. Well, you're skipping ahead a bit now, Sjors, because that was...

00:08:48.290 --> 00:08:48.410
<v Sjors Provoost>I'd like to.

00:08:49.310 --> 00:08:50.090
<v Aaron van Wirdum>Yes, well...

00:08:50.090 --> 00:08:52.850
<v Ruben Somsen>It's good. But it was a good explanation. Like, that's basically how you

00:08:52.850 --> 00:08:53.530
<v Ruben Somsen>construct a blockchain.

00:08:53.770 --> 00:08:57.310
<v Aaron van Wirdum>Okay, so where is this hash included then in the Bitcoin blockchain? Right.

00:08:57.630 --> 00:09:01.990
<v Ruben Somsen>So the mechanism I came up with is kind of an alternative proposal to what Paul

00:09:01.990 --> 00:09:06.690
<v Ruben Somsen>Sztorc proposed. He had an idea to do blind merged mining, which is related to

00:09:06.690 --> 00:09:12.350
<v Ruben Somsen>his drive chains idea, which was basically a soft fork that would designate a

00:09:12.350 --> 00:09:17.890
<v Ruben Somsen>space in Bitcoin's Coinbase to put a hash. And then anyone could kind of pay

00:09:17.890 --> 00:09:23.390
<v Ruben Somsen>Bitcoins to miners to add their specific hash. to that Coinbase transaction. The

00:09:23.390 --> 00:09:26.450
<v Ruben Somsen>downside to this proposal was that it would require soft fork. It was very

00:09:26.450 --> 00:09:30.890
<v Ruben Somsen>specific to drive chains. It was not really a general method. And the method that

00:09:30.890 --> 00:09:31.490
<v Ruben Somsen>I came up with...

00:09:31.490 --> 00:09:36.710
<v Aaron van Wirdum>Hang on. So in drive chain, this hash that we discussed that forms the merge mine

00:09:36.710 --> 00:09:41.470
<v Aaron van Wirdum>side chain that is included in the Coinbase transaction, which is the transaction

00:09:41.470 --> 00:09:46.010
<v Aaron van Wirdum>that a miner includes in his block to pay himself the block subsidy and the fees.

00:09:46.250 --> 00:09:46.630
<v Ruben Somsen>That's right.

00:09:46.770 --> 00:09:50.250
<v Aaron van Wirdum>So it's included in that hash. That's what Paul Sztorc suggested.

00:09:50.490 --> 00:09:51.010
<v Ruben Somsen>That's right.

00:09:51.130 --> 00:09:53.830
<v Aaron van Wirdum>And you have a different idea.

00:09:54.170 --> 00:09:54.510
<v Ruben Somsen>Yes.

00:09:54.850 --> 00:09:57.150
<v Aaron van Wirdum>It still uses a hash, but it's included somewhere else.

00:09:57.270 --> 00:10:01.910
<v Ruben Somsen>Exactly, yeah. So my method kind of generalizes that to something that is doable

00:10:01.910 --> 00:10:06.550
<v Ruben Somsen>without a specific soft fork. It still requires the soft fork, but now we're

00:10:06.550 --> 00:10:12.330
<v Ruben Somsen>using SIGHASH ANYPREVOUT. Just as an FYI, OP_CTV can also be used for this. So

00:10:12.330 --> 00:10:16.080
<v Ruben Somsen>either one of those. proposals, if it makes it into Bitcoin as a soft fork, it

00:10:16.080 --> 00:10:17.780
<v Ruben Somsen>enables what I'm about to talk about.

00:10:17.980 --> 00:10:22.480
<v Aaron van Wirdum>Yes, ANYPREVOUT, sorry, ANYPREVOUT we have discussed in episode?

00:10:22.980 --> 00:10:25.120
<v Sjors Provoost>Not yet. Coming soon, maybe.

00:10:25.360 --> 00:10:28.980
<v Aaron van Wirdum>Oh. But we did discuss CTV, or did we?

00:10:29.200 --> 00:10:30.620
<v Sjors Provoost>No, we've mentioned it.

00:10:30.980 --> 00:10:35.120
<v Aaron van Wirdum>Oh, okay. Passing, okay. All right. So, okay. Also future episode.

00:10:35.360 --> 00:10:39.160
<v Ruben Somsen>So I think it's fine to kind of keep that aspect about it high level, because

00:10:39.160 --> 00:10:44.330
<v Ruben Somsen>it's not... integral to the idea. It's just what you got to know is that we

00:10:44.330 --> 00:10:48.770
<v Ruben Somsen>create this string of transactions, one transaction after the other. With one

00:10:48.770 --> 00:10:52.630
<v Ruben Somsen>input, one output, you're just moving a single Satoshi over every time. We use a

00:10:52.630 --> 00:10:56.770
<v Ruben Somsen>relative time lock of one block, meaning that only one transaction per block gets

00:10:56.770 --> 00:11:01.950
<v Ruben Somsen>into the Bitcoin blockchain. And we use that as a framework for other people to

00:11:01.950 --> 00:11:06.730
<v Ruben Somsen>attach a hash to. So what anyone can do is take one of these transactions, add

00:11:06.730 --> 00:11:12.100
<v Ruben Somsen>their own inputs and outputs. And with that, include a hash of a block they want

00:11:12.100 --> 00:11:17.460
<v Ruben Somsen>to mine. And through replace by fee RBF, people can actually outbid each other

00:11:17.460 --> 00:11:22.480
<v Ruben Somsen>for the privilege of being the one to add their secondary input and output and

00:11:22.480 --> 00:11:26.680
<v Ruben Somsen>add that hash. And so what we've created is a kind of a fee bidding mechanism

00:11:26.680 --> 00:11:32.640
<v Ruben Somsen>that kind of exploits or utilizes RBF to allow anyone to include their

00:11:32.640 --> 00:11:35.220
<v Ruben Somsen>hash and therefore create a block on this other chain.

00:11:35.450 --> 00:11:40.350
<v Aaron van Wirdum>right so what we have here is we've created at the at a point where we're

00:11:40.350 --> 00:11:45.910
<v Aaron van Wirdum>basically launching this chain we create a whole series of transactions that all

00:11:45.910 --> 00:11:51.310
<v Aaron van Wirdum>refer to the previous one right and all of these are unconfirmed they're

00:11:52.370 --> 00:11:58.350
<v Aaron van Wirdum>broadcast somehow, but they cannot be included in the blockchain yet because of

00:11:58.350 --> 00:12:00.330
<v Aaron van Wirdum>the time lock. Am I saying that right?

00:12:01.330 --> 00:12:05.030
<v Ruben Somsen>It's a relative time lock of one block, meaning they can be included one at a

00:12:05.030 --> 00:12:09.150
<v Ruben Somsen>time. And their fee is also zero. So somebody has to add an input and output and

00:12:09.150 --> 00:12:11.910
<v Ruben Somsen>pay some kind of fee in order to have it appear in the blockchain.

00:12:12.350 --> 00:12:17.150
<v Aaron van Wirdum>So if we do this before we launch the sidechain or at the point where we launch

00:12:17.150 --> 00:12:21.420
<v Aaron van Wirdum>the sidechain, then how many of these transactions do we create at that? point in time

00:12:21.420 --> 00:12:25.800
<v Ruben Somsen>yeah so there it is you can create an unlimited amount of transactions but

00:12:25.800 --> 00:12:30.320
<v Ruben Somsen>everybody has to be aware of these transactions and know them so it is some kind

00:12:30.320 --> 00:12:34.600
<v Ruben Somsen>of like upfront cost I don't know exactly what it comes down to but you could

00:12:34.600 --> 00:12:38.340
<v Ruben Somsen>just create 100 years worth of these transactions and ensure that the blockchain

00:12:38.340 --> 00:12:42.220
<v Ruben Somsen>will live for 100 years and then somewhere before it is 100 years you would have

00:12:42.220 --> 00:12:46.780
<v Ruben Somsen>to have a hard fork in order to extend the chain beyond that so so it puts a

00:12:46.780 --> 00:12:50.820
<v Ruben Somsen>limit on there but it's not It's not super, it's not really something that's

00:12:50.820 --> 00:12:52.280
<v Ruben Somsen>practically going to be an issue.

00:12:52.440 --> 00:12:56.200
<v Sjors Provoost>And so this is where the magic of SIGHASH ANYPREVOUT comes in, right? Because

00:12:56.200 --> 00:13:00.220
<v Sjors Provoost>you're saying you've pre-generated all these transactions. Yeah. And so the

00:13:00.220 --> 00:13:03.640
<v Sjors Provoost>astute listener would say, well, they all have a hash. So how can I change

00:13:03.640 --> 00:13:08.160
<v Sjors Provoost>anything in that long chain? Because I would break the chain. Right. Well, you

00:13:08.160 --> 00:13:14.100
<v Sjors Provoost>can do that because SIGHASH ANYPREVOUT allows you. to not refer to a specific

00:13:14.100 --> 00:13:19.180
<v Sjors Provoost>transaction ID, but instead refer to a specific output script. And so you can

00:13:19.180 --> 00:13:22.580
<v Sjors Provoost>start adding inputs to that transaction and outputs to the transaction as long as

00:13:22.580 --> 00:13:25.880
<v Sjors Provoost>that one specific output script is still there.

00:13:26.140 --> 00:13:27.880
<v Ruben Somsen>Yeah, that's exactly right. Yeah,

00:13:28.380 --> 00:13:33.800
<v Aaron van Wirdum>so to put it in layman's terms. Usually, a transaction refers to the previous

00:13:33.800 --> 00:13:38.360
<v Aaron van Wirdum>transaction basically as a whole. Through this soft fork, you can have a

00:13:38.360 --> 00:13:43.000
<v Aaron van Wirdum>transaction that refers to a small part of a previous transaction, and thereby

00:13:43.000 --> 00:13:47.740
<v Aaron van Wirdum>you can change that previous transaction in certain ways. You can add stuff to it.

00:13:47.920 --> 00:13:51.860
<v Ruben Somsen>Yeah, that's exactly right. Thanks to SIGHASH ANYPREVOUT, it's kind of possible

00:13:51.860 --> 00:13:52.800
<v Ruben Somsen>to do something like this.

00:13:52.940 --> 00:13:57.480
<v Aaron van Wirdum>I think you mentioned this, so sorry for asking again, but does this require...

00:13:57.480 --> 00:14:01.760
<v Aaron van Wirdum>ANYPREVOUT, or would it just improve it? Because it sounds like it would really

00:14:01.760 --> 00:14:02.440
<v Aaron van Wirdum>require it.

00:14:02.640 --> 00:14:06.820
<v Ruben Somsen>So either you have SIGHASH ANYPREVOUT, or you use OP_CTV.

00:14:07.000 --> 00:14:09.460
<v Aaron van Wirdum>Okay, one of the two you really need.

00:14:09.580 --> 00:14:12.720
<v Ruben Somsen>And there is a third method that Sjors kind of challenged me on, so I have to

00:14:12.720 --> 00:14:14.880
<v Ruben Somsen>rethink that, but I think it's still possible.

00:14:16.000 --> 00:14:19.120
<v Aaron van Wirdum>He challenged you on that before we started recording, to be clear.

00:14:19.280 --> 00:14:24.280
<v Ruben Somsen>That's right. But I think it's still possible where you basically just create all

00:14:24.280 --> 00:14:28.480
<v Ruben Somsen>these transactions ahead of time with a secret key. And then the person who

00:14:28.480 --> 00:14:32.100
<v Ruben Somsen>creates it throws away the key afterwards, ensuring that these transactions can

00:14:32.100 --> 00:14:36.000
<v Ruben Somsen>only be spent in one way. You will need kind of a different mechanism to include

00:14:36.000 --> 00:14:39.620
<v Ruben Somsen>the hash because you can no longer. You no longer want to be able to change the

00:14:39.620 --> 00:14:42.380
<v Ruben Somsen>transactions. You would have to have like a second output and then somebody

00:14:42.380 --> 00:14:45.940
<v Ruben Somsen>should spend that second output to add the hash to it. So it would be possible.

00:14:46.080 --> 00:14:50.240
<v Ruben Somsen>But the downside of that is it's kind of a trusted setup, right? Because there's

00:14:50.240 --> 00:14:53.560
<v Ruben Somsen>somebody who has a key that they created all these transactions with. You hope

00:14:53.560 --> 00:14:56.340
<v Ruben Somsen>that he threw away the key, but you're not certain whether or not he did.

00:14:56.480 --> 00:15:01.160
<v Ruben Somsen>Although the downside is not that severe. So actually I'm not that opposed to

00:15:01.160 --> 00:15:05.260
<v Ruben Somsen>trying it out before I get one of these soft forks. Because the worst thing that

00:15:05.260 --> 00:15:08.620
<v Ruben Somsen>can happen is that the chain just halts because some unexpected transaction

00:15:08.620 --> 00:15:13.180
<v Ruben Somsen>happens. And then it requires some kind of hard fork to get it started again, but

00:15:13.180 --> 00:15:15.480
<v Ruben Somsen>nobody loses any value. So it's not terrible.

00:15:15.840 --> 00:15:20.260
<v Aaron van Wirdum>Okay, let's assume ANYPREVOUT for now. So we've got this chain of transactions

00:15:20.260 --> 00:15:25.020
<v Aaron van Wirdum>that are unconfirmed for now, and they're confirmed one block at a time, and this

00:15:25.020 --> 00:15:29.560
<v Aaron van Wirdum>means a new block is found. But there is some sort of bidding process going on

00:15:29.560 --> 00:15:30.760
<v Aaron van Wirdum>with RBF.

00:15:30.840 --> 00:15:31.340
<v Ruben Somsen>That's right.

00:15:31.580 --> 00:15:37.500
<v Aaron van Wirdum>Which... the reason someone would be willing to outbid someone else with

00:15:37.500 --> 00:15:43.240
<v Aaron van Wirdum>a block is because that block would pay him more in the new

00:15:43.240 --> 00:15:49.150
<v Aaron van Wirdum>coins that are on the sidechain which are in turn mining fees that

00:15:49.150 --> 00:15:54.830
<v Aaron van Wirdum>users of this alternative chain are paying to have their transactions included in

00:15:54.830 --> 00:15:56.130
<v Aaron van Wirdum>this alternative chain.

00:15:56.350 --> 00:16:01.050
<v Ruben Somsen>Yeah, that's right. So it is very similar to how Bitcoin works. And obviously

00:16:01.050 --> 00:16:03.870
<v Ruben Somsen>that's not a coincidence because it's really kind of emulating proof of work

00:16:03.870 --> 00:16:09.430
<v Ruben Somsen>here. So the fees on, just like in Bitcoin, all the fees go to miners and that's

00:16:09.430 --> 00:16:13.150
<v Ruben Somsen>what incentivizes miners to actually go and do all this hashing and create a

00:16:13.150 --> 00:16:19.090
<v Ruben Somsen>block here. The miners, the blind Merge Mine miners, they take the fees from this

00:16:19.090 --> 00:16:24.810
<v Ruben Somsen>blind Merge Mine chain and they utilize that to put in the hash in the Bitcoin

00:16:24.810 --> 00:16:28.250
<v Ruben Somsen>blockchain and they pay roughly the equivalent of whatever they're being paid in

00:16:28.250 --> 00:16:32.330
<v Ruben Somsen>these fees to the Bitcoin miners. So what it does, and that's kind of important

00:16:32.330 --> 00:16:37.810
<v Ruben Somsen>to note, is that... Essentially, we are outsourcing the mining of this other

00:16:37.810 --> 00:16:41.690
<v Ruben Somsen>chain to the Bitcoin miners because we're paying Bitcoin fees. And these Bitcoin

00:16:41.690 --> 00:16:46.270
<v Ruben Somsen>miners will be competing over those Bitcoin fees through proof of work. So

00:16:46.270 --> 00:16:51.530
<v Ruben Somsen>indirectly, it's still proof of work. But we're utilizing Bitcoin as a kind of

00:16:51.530 --> 00:16:52.210
<v Ruben Somsen>step in between.

00:16:52.670 --> 00:16:58.170
<v Aaron van Wirdum>Right. I'm thinking of 51% attacks. Could this system be 51% attacks in some way?

00:16:58.290 --> 00:17:03.250
<v Aaron van Wirdum>Say you're willing to pay more fees in a competing block in the next Bitcoin

00:17:03.250 --> 00:17:06.810
<v Aaron van Wirdum>block, or does the sidechain have these rules? I'm just calling it a sidechain.

00:17:06.950 --> 00:17:07.130
<v Ruben Somsen>Sure.

00:17:07.210 --> 00:17:12.510
<v Aaron van Wirdum>Does the sidechain have a sort of rule that it can't be 51% attacks compared to

00:17:12.510 --> 00:17:16.100
<v Aaron van Wirdum>the Bitcoin blockchain? Because that's how it would... benefit from the Bitcoin

00:17:16.100 --> 00:17:17.160
<v Aaron van Wirdum>security, right? I guess.

00:17:17.300 --> 00:17:21.920
<v Ruben Somsen>Yeah. So I think it's always kind of a spurious claim to say that you're getting

00:17:21.920 --> 00:17:25.840
<v Ruben Somsen>security from the Bitcoin blockchain, but there does seem to be, to some degree,

00:17:25.980 --> 00:17:30.740
<v Ruben Somsen>that does seem to be happening. So just like to be very clear and practical about

00:17:30.740 --> 00:17:34.860
<v Ruben Somsen>this, there is a way, like the difference with proof of work mining is that it's

00:17:34.860 --> 00:17:39.000
<v Ruben Somsen>not a process where randomly a winner is selected. It's a process where whoever

00:17:39.000 --> 00:17:43.590
<v Ruben Somsen>pays the most gets to create a block. So if you want to stop this chain, you

00:17:43.590 --> 00:17:48.170
<v Ruben Somsen>could literally do so by just paying higher fees and creating a block that just

00:17:48.170 --> 00:17:52.230
<v Ruben Somsen>contains nothing or even just an invalid block that's fine too that would just be

00:17:52.230 --> 00:17:57.070
<v Ruben Somsen>ignored. But in doing so, what's interesting is that the fees will start to

00:17:57.070 --> 00:18:00.150
<v Ruben Somsen>accumulate on the sidechain. Let's call it a sidechain.

00:18:01.400 --> 00:18:04.540
<v Ruben Somsen>So this kind of creates fee pressure where for the next block, if you want to

00:18:04.540 --> 00:18:07.100
<v Ruben Somsen>keep censoring it, you got to pay even more. For the next block, you got to pay

00:18:07.100 --> 00:18:10.720
<v Ruben Somsen>even more. So there is this kind of like pressure where at the end of the day, it

00:18:10.720 --> 00:18:13.040
<v Ruben Somsen>becomes quite similar to what Bitcoin does.

00:18:13.260 --> 00:18:16.000
<v Aaron van Wirdum>Right. So, but that's a censorship 51% attack.

00:18:16.440 --> 00:18:16.620
<v Ruben Somsen>Yes.

00:18:16.760 --> 00:18:20.100
<v Aaron van Wirdum>What about double spend 51% attack? I'm guessing that...

00:18:20.100 --> 00:18:21.120
<v Ruben Somsen>Like a reorg or...

00:18:21.120 --> 00:18:24.630
<v Aaron van Wirdum>Yeah. Yeah. I guess that wouldn't be possible without actually re-orging the

00:18:24.630 --> 00:18:25.230
<v Aaron van Wirdum>Bitcoin blockchain.

00:18:25.490 --> 00:18:28.910
<v Ruben Somsen>So it is possible, but it would be a slow process. So that's kind of interesting.

00:18:29.190 --> 00:18:34.430
<v Ruben Somsen>So let's say you want to just do a two-block re-org off the sidechain. So what

00:18:34.430 --> 00:18:40.170
<v Ruben Somsen>happens is that you have to put a block that has a lower

00:18:40.170 --> 00:18:44.670
<v Ruben Somsen>block height, you have to put that into the Bitcoin blockchain, the hash of that

00:18:44.670 --> 00:18:50.380
<v Ruben Somsen>block. So what that means is for the longest sidechain, the longest chain, on the

00:18:50.380 --> 00:18:55.040
<v Ruben Somsen>side chain, there's no block basically occurring, right? Because there's not as

00:18:55.040 --> 00:18:58.840
<v Ruben Somsen>older block, it's not the longest chain. So basically nothing happens. For 10

00:18:58.840 --> 00:19:02.800
<v Ruben Somsen>minutes, there's no new block. And then another block gets created. And then

00:19:02.800 --> 00:19:05.900
<v Ruben Somsen>another block gets created. And now that shorter chain becomes the longer chain.

00:19:06.020 --> 00:19:11.340
<v Ruben Somsen>So basically the longest chain halts while you're re-orging the chain. And

00:19:11.340 --> 00:19:15.490
<v Ruben Somsen>that's... very unique to this proposal. And I think at the end of the day, that

00:19:15.490 --> 00:19:18.550
<v Ruben Somsen>actually kind of ends up being a security benefit because it means that if you're

00:19:18.550 --> 00:19:22.270
<v Ruben Somsen>a hundred blocks into the future, you know it's going to literally take a

00:19:22.270 --> 00:19:25.210
<v Ruben Somsen>thousand minutes at least to reorg those blocks.

00:19:25.430 --> 00:19:29.740
<v Sjors Provoost>Well, but you can't do anything in those thousand minutes, except... Make a phone call.

00:19:30.160 --> 00:19:35.840
<v Ruben Somsen>Yeah, so the chain halts during that time, but that is also when the

00:19:35.840 --> 00:19:39.420
<v Ruben Somsen>sidechain fees start to rise because people can't get their transactions in,

00:19:39.580 --> 00:19:43.680
<v Ruben Somsen>which makes it even more difficult for that reorg to occur. There is an

00:19:43.680 --> 00:19:47.880
<v Ruben Somsen>interesting mechanism there that seems to work out pretty well, but I do think it

00:19:47.880 --> 00:19:52.740
<v Ruben Somsen>requires more deep thought and maybe just some experimentation to kind of see how

00:19:52.740 --> 00:19:53.480
<v Ruben Somsen>it works out in practice.

00:19:53.660 --> 00:19:57.750
<v Sjors Provoost>I guess another way to look at it is that if you want to annoy this sidechain, if

00:19:57.750 --> 00:20:02.530
<v Sjors Provoost>we call it that way. We can edit it in post production. There's only one Bitcoin

00:20:02.530 --> 00:20:06.050
<v Sjors Provoost>block or one Bitcoin transaction available every Bitcoin block where you can

00:20:06.050 --> 00:20:11.470
<v Sjors Provoost>decide the next sidechain block. And so you can DOS that particular

00:20:11.470 --> 00:20:16.330
<v Sjors Provoost>Bitcoin transaction for every sidechain block. And you can DOS it in different

00:20:16.330 --> 00:20:21.430
<v Sjors Provoost>ways, right? You can create empty blocks on the main chain for the sidechain, or

00:20:21.430 --> 00:20:26.480
<v Sjors Provoost>you can... Fork off a very old sidechain block or you can just put complete

00:20:26.480 --> 00:20:32.120
<v Sjors Provoost>garbage in it. Yeah Yeah, but yeah, but as long as the fees on the sidechain

00:20:32.120 --> 00:20:35.840
<v Sjors Provoost>represents some real value, they'll accumulate and eventually it'll get expensive

00:20:35.840 --> 00:20:36.500
<v Sjors Provoost>for you to do this.

00:20:36.660 --> 00:20:37.320
<v Ruben Somsen>That's right, yeah.

00:20:37.360 --> 00:20:39.900
<v Sjors Provoost>But perhaps not prohibitively. Yeah. That's interesting.

00:20:40.080 --> 00:20:45.940
<v Ruben Somsen>Yeah, but it is kind of similar to how in Bitcoin you could like 51% attack and

00:20:45.940 --> 00:20:50.860
<v Ruben Somsen>create these bogus blocks all the time. But in Bitcoin, it's very obvious how

00:20:50.860 --> 00:20:54.460
<v Ruben Somsen>expensive that is. And here, especially when you think about a low value

00:20:54.460 --> 00:20:59.030
<v Ruben Somsen>sidechain, It's maybe not as obvious whether or not that's going to work out. And

00:20:59.030 --> 00:21:02.110
<v Ruben Somsen>that's definitely a thing, right? Because with Bitcoin, we also have the benefit

00:21:02.110 --> 00:21:07.490
<v Ruben Somsen>of having a block reward where every new block creates a new Bitcoins and that

00:21:07.490 --> 00:21:11.390
<v Ruben Somsen>also moves things forward. And that's going to be different in this chain where

00:21:11.390 --> 00:21:16.190
<v Ruben Somsen>we don't actually introduce a new coin, a new token. There are no coins being

00:21:16.190 --> 00:21:19.730
<v Ruben Somsen>generated. So really everything has to come from fees. So that's not going to be

00:21:19.730 --> 00:21:20.590
<v Ruben Somsen>exactly the same as Bitcoin.

00:21:20.810 --> 00:21:21.470
<v Aaron van Wirdum>There's no subsidy.

00:21:21.770 --> 00:21:22.590
<v Ruben Somsen>There's no subsidy.

00:21:22.810 --> 00:21:24.470
<v Aaron van Wirdum>Okay, so that's the merged mine.

00:21:25.410 --> 00:21:25.850
<v Ruben Somsen>Yes.

00:21:26.010 --> 00:21:28.510
<v Aaron van Wirdum>I think that's pretty clear to me. Is it to you, Sjors?

00:21:28.670 --> 00:21:34.170
<v Sjors Provoost>Almost, but I have one more advanced question. What is in this scaffold of

00:21:34.170 --> 00:21:37.610
<v Sjors Provoost>transactions that we're talking about? Because like we said, we pre-generate a

00:21:37.610 --> 00:21:41.890
<v Sjors Provoost>whole series of transactions for the next 10 years, and they each have one input

00:21:41.890 --> 00:21:47.610
<v Sjors Provoost>and one output, and those will stay the same forever, but we can add inputs

00:21:47.610 --> 00:21:52.170
<v Sjors Provoost>and outputs later to commit to blocks, et cetera. What is in these initial...

00:21:52.340 --> 00:21:57.400
<v Sjors Provoost>inputs and outputs, and why can't I shuffle them around and do mean things with them?

00:21:57.620 --> 00:21:58.740
<v Ruben Somsen>Right. So...

00:22:00.140 --> 00:22:05.760
<v Ruben Somsen>This is actually a covenant. So a covenant is basically an enforcement of how an

00:22:05.760 --> 00:22:06.780
<v Ruben Somsen>output is going to be spent.

00:22:06.940 --> 00:22:08.220
<v Aaron van Wirdum>But Bitcoin doesn't have covenants.

00:22:08.440 --> 00:22:14.100
<v Ruben Somsen>Bitcoin doesn't have covenants yet. But with ANYPREVOUT, actually, we'll be

00:22:14.100 --> 00:22:19.700
<v Ruben Somsen>kind of incidentally introducing the equivalent to the OP_CTV covenants, which is

00:22:19.700 --> 00:22:23.940
<v Ruben Somsen>something that Jeremy Rubin has been working on. And essentially what it is, is

00:22:23.940 --> 00:22:28.560
<v Ruben Somsen>this is with OP_CTV, I guess it's easier to explain. It's basically a hash in the

00:22:28.560 --> 00:22:32.970
<v Ruben Somsen>output. that determines what the next transaction is that is allowed to spend

00:22:32.970 --> 00:22:37.530
<v Ruben Somsen>that output and what we do here is instead of the hash we actually put the

00:22:37.530 --> 00:22:41.870
<v Ruben Somsen>signature in the output ahead of time so normally what you have is you have a you

00:22:41.870 --> 00:22:46.930
<v Ruben Somsen>have a pub key or a pub key hash and then when you spend it you you create the

00:22:46.930 --> 00:22:51.050
<v Ruben Somsen>signature for that pub key hash and what we do here is we actually have in the

00:22:51.050 --> 00:22:56.120
<v Ruben Somsen>outputs the pub key hash plus the signature And it's all there already. So it's

00:22:56.120 --> 00:23:00.440
<v Ruben Somsen>already predetermined how it's going to be spent. But this is only possible with

00:23:00.440 --> 00:23:05.460
<v Ruben Somsen>a SIGHASH ANYPREVOUT because the signature kind of refers back to the transaction

00:23:05.460 --> 00:23:09.020
<v Ruben Somsen>itself. And that will be kind of a circular reference. So with ANYPREVOUT,

00:23:09.100 --> 00:23:12.380
<v Ruben Somsen>because you don't have to sign the transaction itself, the transaction that

00:23:12.380 --> 00:23:15.480
<v Ruben Somsen>you're spending, or at least not the TXID, you don't have that issue. So it

00:23:15.480 --> 00:23:17.260
<v Ruben Somsen>becomes possible to do a covenant like that.

00:23:17.380 --> 00:23:22.700
<v Sjors Provoost>But the signature in transaction one refers to transaction two. Yeah. And the

00:23:22.700 --> 00:23:26.710
<v Sjors Provoost>signature in transaction two. refers to transaction three because the signature

00:23:26.710 --> 00:23:27.630
<v Sjors Provoost>is in the output now.

00:23:27.820 --> 00:23:28.340
<v Ruben Somsen>That's right.

00:23:28.500 --> 00:23:30.620
<v Sjors Provoost>Yeah, this is quite mind-boggling.

00:23:31.000 --> 00:23:35.600
<v Ruben Somsen>That's right. Yeah, it is. It is a little, it's a little bit of a hack. And I

00:23:35.600 --> 00:23:37.760
<v Ruben Somsen>guess we're going to have to wait and see kind of what the final version of

00:23:37.760 --> 00:23:41.960
<v Ruben Somsen>ANYPREVOUT becomes. But it seems like this will be possible. It is less efficient

00:23:41.960 --> 00:23:46.080
<v Ruben Somsen>than OP_CTV because with OP_CTV, it's literally a hash and here it's a signature.

00:23:46.340 --> 00:23:49.740
<v Ruben Somsen>So a signature is kind of double the data roughly and you need to do a signature

00:23:49.740 --> 00:23:52.820
<v Ruben Somsen>check. Just one little side note that's kind of funny is that the signature

00:23:52.820 --> 00:23:55.850
<v Ruben Somsen>doesn't need to be secure. in the sense that it doesn't really matter what the

00:23:55.850 --> 00:23:59.830
<v Ruben Somsen>private key is. So the most efficient way of doing it is actually using the

00:23:59.830 --> 00:24:04.950
<v Ruben Somsen>generator G as the pub key that you're signing the signature with. And it doesn't

00:24:04.950 --> 00:24:08.930
<v Ruben Somsen>matter because you're already committed to what transaction you're signing. So

00:24:08.930 --> 00:24:11.690
<v Ruben Somsen>the fact that it's G and everybody knows it is kind of irrelevant.

00:24:12.110 --> 00:24:15.350
<v Sjors Provoost>Doesn't something have to increment? Because otherwise all these transactions

00:24:15.350 --> 00:24:19.490
<v Sjors Provoost>would be identical and I could still swap them out. Or is the recursion creating

00:24:19.490 --> 00:24:20.610
<v Sjors Provoost>different hashes all the time?

00:24:20.690 --> 00:24:23.070
<v Ruben Somsen>The recursion should be creating different hashes all the time, yeah.

00:24:24.280 --> 00:24:29.520
<v Aaron van Wirdum>so okay so I didn't get any of that but I think we can move on anyways right like

00:24:29.520 --> 00:24:33.780
<v Aaron van Wirdum>the smart the smart listeners maybe got something out of that the dumber ones

00:24:35.070 --> 00:24:37.950
<v Aaron van Wirdum>We still get the gist. I get the gist. I think that's good enough.

00:24:38.130 --> 00:24:38.510
<v Ruben Somsen>That's the important part.

00:24:38.630 --> 00:24:42.290
<v Aaron van Wirdum>I agree. I agree. Okay. All right. So then the other part is burning.

00:24:42.690 --> 00:24:43.150
<v Ruben Somsen>That's right.

00:24:43.350 --> 00:24:47.750
<v Aaron van Wirdum>Getting coins from the main chain, essentially, to the side chain.

00:24:47.950 --> 00:24:52.390
<v Ruben Somsen>Yeah. Because what we've described so far is just basically an altcoin that

00:24:52.390 --> 00:24:56.410
<v Ruben Somsen>happens to be mined instead of like with proof of work or proof of stake or

00:24:56.410 --> 00:24:59.430
<v Ruben Somsen>whatever nonsense you want to think of, that happens to be mined through this

00:24:59.430 --> 00:25:02.530
<v Ruben Somsen>kind of blind merged mining process. But we don't want to create an altcoin. We

00:25:02.530 --> 00:25:08.140
<v Ruben Somsen>want some kind of... chain that is useful for Bitcoin without creating the

00:25:08.140 --> 00:25:11.380
<v Ruben Somsen>secondary token that's going to be speculative that people are going to pump and

00:25:11.380 --> 00:25:14.100
<v Ruben Somsen>dump on because that's what always happens if you create a token even if your

00:25:14.100 --> 00:25:15.500
<v Ruben Somsen>intentions are good it doesn't matter

00:25:15.500 --> 00:25:19.340
<v Aaron van Wirdum>but then how do we get rich Ruben how do we get rich

00:25:19.340 --> 00:25:24.830
<v Ruben Somsen>well indirectly you get rich because if this sidechain is popular The idea is we

00:25:24.830 --> 00:25:29.890
<v Ruben Somsen>have a method called the perpetual one-way peg where people burn their Bitcoins,

00:25:30.030 --> 00:25:31.130
<v Ruben Somsen>they destroy their Bitcoins.

00:25:31.270 --> 00:25:33.090
<v Aaron van Wirdum>That sounds like the opposite of getting rich.

00:25:33.250 --> 00:25:38.590
<v Ruben Somsen>It is getting rich because everybody who doesn't burn their Bitcoins gets...

00:25:38.750 --> 00:25:42.710
<v Ruben Somsen>Their token gets more scarce if you go from 21 million to 20 million.

00:25:42.910 --> 00:25:45.050
<v Aaron van Wirdum>We're luring people into this sidechain.

00:25:45.170 --> 00:25:45.450
<v Ruben Somsen>Maybe.

00:25:45.630 --> 00:25:46.870
<v Aaron van Wirdum>And we keep our coins.

00:25:47.150 --> 00:25:51.230
<v Ruben Somsen>That's right. Yeah. So anyone who doesn't move into this. But that's the

00:25:51.230 --> 00:25:55.130
<v Ruben Somsen>interesting part. Indirectly, you're benefiting from this activity as a

00:25:55.130 --> 00:25:58.910
<v Ruben Somsen>Bitcoiner. And that's actually where all the speculative value goes. Well, it's

00:25:58.910 --> 00:26:00.930
<v Ruben Somsen>not really speculative value, but all the value, I would say.

00:26:01.090 --> 00:26:04.610
<v Sjors Provoost>Because you said the maximum value of whatever is on that chain with this

00:26:04.610 --> 00:26:07.030
<v Sjors Provoost>mechanism would be one-on-one.

00:26:07.320 --> 00:26:12.100
<v Ruben Somsen>That's right, because you can always burn a Bitcoin and receive a sidechain token

00:26:12.100 --> 00:26:15.040
<v Ruben Somsen>through this mechanism. So it will never be worth more than one Bitcoin.

00:26:15.240 --> 00:26:16.920
<v Sjors Provoost>But I'm more worried about the minimum value.

00:26:17.180 --> 00:26:20.920
<v Aaron van Wirdum>Hang on, hang on. Because I interrupted you in the middle of your actual

00:26:20.920 --> 00:26:23.760
<v Aaron van Wirdum>explanation. Let's get back to the actual explanation.

00:26:23.940 --> 00:26:25.000
<v Ruben Somsen>I already forgot what I was trying to say.

00:26:25.000 --> 00:26:27.920
<v Aaron van Wirdum>You want to get coins from the main chain to the sidechain.

00:26:28.000 --> 00:26:28.200
<v Ruben Somsen>Yes.

00:26:28.340 --> 00:26:32.760
<v Aaron van Wirdum>So you've got to burn coins on Bitcoin. How do you burn coins on Bitcoin, first of all?

00:26:32.820 --> 00:26:33.820
<v Sjors Provoost>Please don't burn Bitcoins.

00:26:35.010 --> 00:26:38.090
<v Ruben Somsen>So that's the funny thing, right? Like I think it's fine to burn Bitcoin, but I

00:26:38.090 --> 00:26:41.490
<v Ruben Somsen>think everybody's intuition is it's a terrible thing to burn Bitcoin. So we'll

00:26:41.490 --> 00:26:42.570
<v Ruben Somsen>definitely have to get back to that. But yeah.

00:26:42.810 --> 00:26:46.030
<v Aaron van Wirdum>To be perfectly clear for those who don't know this, burning Bitcoin just mean

00:26:46.030 --> 00:26:47.390
<v Aaron van Wirdum>you make them unspendable.

00:26:47.750 --> 00:26:47.910
<v Ruben Somsen>Yeah.

00:26:48.170 --> 00:26:48.450
<v Aaron van Wirdum>Right?

00:26:48.870 --> 00:26:52.810
<v Ruben Somsen>You destroy them, I would say. Like not even unspendable. It's just, yeah,

00:26:52.850 --> 00:26:53.290
<v Ruben Somsen>they're gone.

00:26:53.550 --> 00:26:54.290
<v Aaron van Wirdum>So how do you do that?

00:26:54.450 --> 00:26:57.930
<v Sjors Provoost>There are two ways to utterly destroy Bitcoin. I mean, you can destroy it.

00:26:57.400 --> 00:26:58.260
<v Aaron van Wirdum>Three ways, actually.

00:26:58.850 --> 00:27:02.450
<v Sjors Provoost>You can destroy it in a way that it's obvious to people and you can destroy it in

00:27:02.450 --> 00:27:03.730
<v Sjors Provoost>a way that's provable to nodes.

00:27:04.790 --> 00:27:06.110
<v Aaron van Wirdum>It's both obvious, right?

00:27:06.630 --> 00:27:10.370
<v Sjors Provoost>So obvious to people means you're sending it to an address called 1vanwirdum,

00:27:10.470 --> 00:27:14.590
<v Sjors Provoost>which you know for sure does not have a private key. So it's obvious to humans

00:27:14.590 --> 00:27:18.450
<v Sjors Provoost>that this stuff is worthless, but a node has no way to know, so it keeps track of

00:27:18.450 --> 00:27:19.090
<v Sjors Provoost>it anyway. Right.

00:27:19.290 --> 00:27:22.910
<v Aaron van Wirdum>And then the other way is what you're proposing, right, Ruben? So explain that.

00:27:22.970 --> 00:27:27.530
<v Ruben Somsen>Yeah, so the other way would be via OP_RETURN. So OP_RETURN is an opcode that is

00:27:27.530 --> 00:27:30.590
<v Ruben Somsen>generally used to kind of add data to the Bitcoin blockchain, but it can also be

00:27:30.590 --> 00:27:34.760
<v Ruben Somsen>used to, if you put... If you create an OP_RETURN output and you put your

00:27:34.760 --> 00:27:38.100
<v Ruben Somsen>bitcoins in there, your bitcoins are gone. They're not going to go to the UTXO

00:27:38.100 --> 00:27:41.700
<v Ruben Somsen>sets and nobody's going to look at them again. And for that reason, actually,

00:27:41.780 --> 00:27:45.380
<v Ruben Somsen>like the UTXO set is not like the number of the number of coins that were minted

00:27:45.380 --> 00:27:49.740
<v Ruben Somsen>up until now. It's a lower number because we already had a bunch of coins burned through OP_RETURN.

00:27:50.180 --> 00:27:53.540
<v Aaron van Wirdum>Yeah. OK, so you're sending coins to this OP_RETURN address.

00:27:53.680 --> 00:27:53.860
<v Ruben Somsen>Yes.

00:27:54.120 --> 00:27:59.440
<v Aaron van Wirdum>This OP_RETURN address that includes a bunch of data and this data specifies

00:27:59.440 --> 00:28:04.330
<v Aaron van Wirdum>which. address on the sidechain should get the coins and you should have the

00:28:04.330 --> 00:28:08.290
<v Aaron van Wirdum>private key of this address on the sidechain and then everyone who's running the

00:28:08.290 --> 00:28:12.890
<v Aaron van Wirdum>sidechain software notices this OP_RETURN on the Bitcoin blockchain and then

00:28:12.890 --> 00:28:18.790
<v Aaron van Wirdum>attributes this newly generated side coin sidechain coins to

00:28:18.790 --> 00:28:22.930
<v Aaron van Wirdum>this address and that's how you move coins from Bitcoin to the sidechain, correct?

00:28:23.510 --> 00:28:26.490
<v Ruben Somsen>Yes, but I think there's actually a simpler way of doing it. So that would

00:28:26.490 --> 00:28:30.290
<v Ruben Somsen>definitely be one way of doing it. But I think probably the way that I would like

00:28:30.290 --> 00:28:36.110
<v Ruben Somsen>to go with is to have the people who are creating these sidechains,

00:28:36.310 --> 00:28:40.830
<v Ruben Somsen>the blocks on the Bitcoin blockchain, have them destroy the tokens. And that

00:28:40.830 --> 00:28:44.370
<v Ruben Somsen>means that in the Coinbase transaction on the sidechain, they can claim whatever

00:28:44.370 --> 00:28:48.050
<v Ruben Somsen>tokens they burned. And I think that's going to be the easiest mechanism. And

00:28:48.050 --> 00:28:52.050
<v Ruben Somsen>then they can choose for themselves what kind of key to use on the sidechain

00:28:52.050 --> 00:28:54.210
<v Ruben Somsen>because they're the ones who are creating the block.

00:28:54.410 --> 00:28:59.210
<v Aaron van Wirdum>But that means there can only be one new user of the sidechain per 10 minutes? That

00:28:59.210 --> 00:29:03.630
<v Ruben Somsen>means that, well, so the thing you're forgetting is that... This is

00:29:03.630 --> 00:29:09.570
<v Ruben Somsen>putting coins into the blockchain, into the sidechain. But that doesn't mean

00:29:09.570 --> 00:29:12.190
<v Ruben Somsen>that that's the limit of the number of users, right? Because you can use atomic

00:29:12.190 --> 00:29:16.770
<v Ruben Somsen>swaps to swap back and forth between the chain. So you really only need one

00:29:16.770 --> 00:29:20.210
<v Ruben Somsen>person to kind of add more coins when there are not enough coins because there's

00:29:20.210 --> 00:29:25.410
<v Ruben Somsen>a high demand. And then anything after that is just people trading these tokens

00:29:25.410 --> 00:29:27.770
<v Ruben Somsen>on the sidechain for Bitcoin and vice versa.

00:29:27.970 --> 00:29:31.940
<v Aaron van Wirdum>Right, that makes a lot of sense, of course. Okay, so then... Then the big

00:29:31.940 --> 00:29:35.420
<v Aaron van Wirdum>question is value, right? That's what you want to get to.

00:29:35.600 --> 00:29:38.520
<v Sjors Provoost>Because we've decided the maximum value of this. Well, because you can

00:29:38.520 --> 00:29:43.180
<v Sjors Provoost>arbitrarily burn more Bitcoin, you can always keep that price below one Bitcoin.

00:29:43.340 --> 00:29:48.140
<v Aaron van Wirdum>It wouldn't make any sense that the sidechain coin ever becomes worth more than a

00:29:48.140 --> 00:29:52.340
<v Aaron van Wirdum>Bitcoin. Because if you have a Bitcoin, you can always burn it to become a

00:29:52.340 --> 00:29:56.560
<v Aaron van Wirdum>sidechain coin. But if you have a sidechain coin, you can't burn it to get a

00:29:56.560 --> 00:30:01.000
<v Aaron van Wirdum>Bitcoin. The sidechain coin just has less options than Bitcoin, so it will never

00:30:01.000 --> 00:30:02.320
<v Aaron van Wirdum>be worth more than a Bitcoin.

00:30:02.400 --> 00:30:07.140
<v Ruben Somsen>And just to add to that, yes. And to add to that, I would say that for that

00:30:07.140 --> 00:30:10.840
<v Ruben Somsen>reason, this is never going to be store of value. If you want to store value, use

00:30:10.840 --> 00:30:16.180
<v Ruben Somsen>Bitcoin. This is not a token that you're going to be using for having your wealth

00:30:16.180 --> 00:30:20.480
<v Ruben Somsen>there and maybe like some kind of privacy coin or something like a Mimble Wimble

00:30:20.480 --> 00:30:24.220
<v Ruben Somsen>where you can add privacy to the chain, but it's never going to be store of value

00:30:24.220 --> 00:30:25.560
<v Ruben Somsen>privacy like Bitcoin is.

00:30:25.740 --> 00:30:29.740
<v Aaron van Wirdum>And more than that, this is why you're not going to have enriched altcoin

00:30:29.740 --> 00:30:30.260
<v Aaron van Wirdum>founders.

00:30:30.520 --> 00:30:30.860
<v Ruben Somsen>That's correct.

00:30:30.860 --> 00:30:32.940
<v Aaron van Wirdum>That's not going to be possible under this scenario.

00:30:33.280 --> 00:30:35.700
<v Sjors Provoost>Yeah. So I would like to call this proof of pain.

00:30:36.860 --> 00:30:37.220
<v Aaron van Wirdum>Yes.

00:30:37.260 --> 00:30:42.120
<v Sjors Provoost>The reason for that is really when you think about when you're burning a Bitcoin

00:30:42.120 --> 00:30:46.600
<v Sjors Provoost>and you look at the other side at the sidechain and you might say, oh, well, a

00:30:46.600 --> 00:30:50.420
<v Sjors Provoost>Bitcoin was burned. Therefore, this thing must be worth a Bitcoin. But if you

00:30:50.420 --> 00:30:53.770
<v Sjors Provoost>look at it as a sort of a collateral. Then the question is, what is on the other

00:30:53.770 --> 00:30:57.370
<v Sjors Provoost>side of the collateral? Well, it's burned Bitcoin. So it's a bit like I give you

00:30:57.370 --> 00:31:01.690
<v Sjors Provoost>a token that says this is worth the price of my burnt down house. So I'm going to

00:31:01.690 --> 00:31:04.470
<v Sjors Provoost>burn my house and I'm going to give you a token. So I burned a house and I'm

00:31:04.470 --> 00:31:08.590
<v Sjors Provoost>giving you a token. But is that token really worth a house? I don't think it is.

00:31:08.750 --> 00:31:13.130
<v Aaron van Wirdum>Why would it be worth anything? I guess that's the main question. Why would this

00:31:13.130 --> 00:31:16.850
<v Aaron van Wirdum>sidechain coin have any value at all if you can't exchange it for Bitcoin?

00:31:17.030 --> 00:31:19.050
<v Ruben Somsen>Why would you even want a token there in the first place?

00:31:19.150 --> 00:31:22.450
<v Sjors Provoost>Well, if there's nothing left on the other side. Because you've just burned the

00:31:22.450 --> 00:31:24.150
<v Sjors Provoost>whatever thing of value there was.

00:31:24.230 --> 00:31:27.790
<v Ruben Somsen>Yeah. So I think you can make roughly kind of the same analogy for Bitcoin,

00:31:27.890 --> 00:31:31.090
<v Ruben Somsen>right? Where you can say like, well, you're burning all this electricity, right?

00:31:31.330 --> 00:31:35.710
<v Ruben Somsen>And the electricity is gone. And now you have these numbers on this other chain.

00:31:35.910 --> 00:31:40.570
<v Ruben Somsen>Like, well, what's the point? And the point is, well... Bitcoin enables something

00:31:40.570 --> 00:31:44.710
<v Ruben Somsen>that we didn't have before, right? So I guess the argument would be, well, what

00:31:44.710 --> 00:31:49.910
<v Ruben Somsen>is this enabling that is useful, that is worth destroying value for? And the

00:31:49.910 --> 00:31:54.170
<v Ruben Somsen>answer is basically block space and whatever that block space you can, whatever

00:31:54.170 --> 00:31:59.120
<v Ruben Somsen>you can use it for. So the idea is that you need some kind of native token on on

00:31:59.120 --> 00:32:02.680
<v Ruben Somsen>any chain that you're creating to pay for fees you could theoretically you could

00:32:02.680 --> 00:32:06.860
<v Ruben Somsen>try to pay out of band to miners but that gets really messy so you know small

00:32:06.860 --> 00:32:11.180
<v Ruben Somsen>tangents theoretically possible in practice not really so the question really is

00:32:11.180 --> 00:32:15.220
<v Ruben Somsen>is that is that block space useful for something and that comes down to the

00:32:15.220 --> 00:32:17.580
<v Ruben Somsen>questions well what is this chain going to be used for well clearly it's not

00:32:17.580 --> 00:32:21.400
<v Ruben Somsen>going to be used for storing value like I said So what else can you use it for?

00:32:21.580 --> 00:32:25.620
<v Ruben Somsen>Well, the first is colored coins, right? So if you want to issue tokens, you want

00:32:25.620 --> 00:32:28.680
<v Ruben Somsen>to create all kinds of tokens for all kinds of nonsense that people are doing

00:32:28.680 --> 00:32:32.620
<v Ruben Somsen>these days. USD Tether would be a good example of something that is pretty

00:32:32.620 --> 00:32:36.420
<v Ruben Somsen>useful. And let's say you want to create USD Tether and then you want to be able

00:32:36.420 --> 00:32:37.200
<v Ruben Somsen>to trade it for Bitcoin.

00:32:37.480 --> 00:32:43.000
<v Aaron van Wirdum>But the reason USD Tether is useful is because it's guaranteed, or at least in

00:32:43.000 --> 00:32:46.900
<v Aaron van Wirdum>theory, to be exchangeable for a dollar. But that wouldn't even be true here

00:32:46.900 --> 00:32:49.620
<v Aaron van Wirdum>either. There's no guarantee to be exchangeable for anything.

00:32:49.900 --> 00:32:50.980
<v Ruben Somsen>No, so I'm saying...

00:32:50.980 --> 00:32:55.800
<v Aaron van Wirdum>And it doesn't even have speculative value because you know for a fact that it's

00:32:55.800 --> 00:32:59.840
<v Aaron van Wirdum>not going to be worth more than Bitcoin. Which I would argue is the only reason

00:32:59.840 --> 00:33:03.140
<v Aaron van Wirdum>altcoins have value. It's because people hope that it's going to rise in value

00:33:03.140 --> 00:33:07.320
<v Aaron van Wirdum>faster than Bitcoin. So now you've created an altcoin that doesn't have the only

00:33:07.320 --> 00:33:09.820
<v Aaron van Wirdum>benefit of altcoins. So what are we doing there, Ruben?

00:33:10.000 --> 00:33:14.400
<v Sjors Provoost>Let's take a step back here because the example of Tether... is something you

00:33:14.400 --> 00:33:18.740
<v Sjors Provoost>could do without the whole peg thing, at least initially and naively. So what one

00:33:18.740 --> 00:33:23.020
<v Sjors Provoost>could do is you create this new side chain, quote unquote. And this side chain,

00:33:23.220 --> 00:33:28.500
<v Sjors Provoost>basically it has its own rules and somebody with actual money issues USD tether

00:33:28.500 --> 00:33:33.760
<v Sjors Provoost>and says, okay, hereby declare that this 1 million tether exists. And there is

00:33:33.760 --> 00:33:36.960
<v Sjors Provoost>otherwise no interaction with the Bitcoin blockchain other than creating these

00:33:36.960 --> 00:33:41.610
<v Sjors Provoost>blocks and the mechanism we described. And then the fees that you're paying you

00:33:41.610 --> 00:33:46.190
<v Sjors Provoost>would actually pay real, well, real quote unquote dollar tethers to the miner.

00:33:46.330 --> 00:33:49.170
<v Sjors Provoost>And the Bitcoin miner could then estimate, well, okay, I've gotten this many

00:33:49.170 --> 00:33:53.300
<v Sjors Provoost>dollar tethers, so I'm willing to spend this much in Bitcoin fees to do this. So

00:33:53.300 --> 00:33:55.820
<v Sjors Provoost>then you're not burning any Bitcoin and then it makes me feel a lot better.

00:33:55.960 --> 00:33:58.960
<v Ruben Somsen>Yeah, that's right. So that's entirely possible as well. And I think that's

00:33:58.960 --> 00:34:04.160
<v Ruben Somsen>reasonable. I think it depends on the use case. And the goal that I have for this

00:34:04.160 --> 00:34:08.480
<v Ruben Somsen>is that I want to create a chain where there is not some kind of IOU structure

00:34:08.480 --> 00:34:12.460
<v Ruben Somsen>involved. So with USDTether, you have the problem that this chain will stop.

00:34:12.750 --> 00:34:18.150
<v Ruben Somsen>working once the USD tether stops working once the peg is broken. And depending

00:34:18.150 --> 00:34:22.290
<v Ruben Somsen>on your use case, this may or may not be important. So maybe for USD tether, it

00:34:22.290 --> 00:34:25.450
<v Ruben Somsen>could be fine, like what you're describing. I think that's a valid use case as

00:34:25.450 --> 00:34:30.210
<v Ruben Somsen>well. And I would actually think that people should probably pursue that. But I

00:34:30.210 --> 00:34:34.130
<v Ruben Somsen>do think there are other use cases that are maybe not... directly something like

00:34:34.130 --> 00:34:38.150
<v Ruben Somsen>that like let's say you know let's talk about something silly like you know rare

00:34:38.150 --> 00:34:42.290
<v Ruben Somsen>pepes or crypto kitties right like let's say you want to issue crypto kitties

00:34:42.290 --> 00:34:45.330
<v Ruben Somsen>rare pepes so these are just tokens that are not really worth anything they

00:34:45.330 --> 00:34:48.670
<v Ruben Somsen>become worth something like where you got to start somewhere you got to have a

00:34:48.670 --> 00:34:54.290
<v Ruben Somsen>chain first with some kind of token to pay for block space and only then can you

00:34:54.290 --> 00:34:58.320
<v Ruben Somsen>create new tokens on that chain and and then your rare pepe [unclear] something

00:34:58.320 --> 00:35:01.600
<v Ruben Somsen>and then maybe you pay the miners in rare pepes I don't know that's possible right

00:35:01.600 --> 00:35:04.720
<v Sjors Provoost>that's what I was thinking you can just pay the miners in rare pepes and that

00:35:04.720 --> 00:35:08.040
<v Sjors Provoost>actually puts a nice monetary value on the pepes because you have the market

00:35:08.040 --> 00:35:11.700
<v Sjors Provoost>somewhere where people just trade them directly but you also have the transaction

00:35:11.700 --> 00:35:15.280
<v Sjors Provoost>fees and if the miners don't believe if think the market is rigged well then

00:35:15.280 --> 00:35:16.140
<v Sjors Provoost>nobody's going to be mining

00:35:16.140 --> 00:35:20.440
<v Ruben Somsen>so I think it's fine if the chain transitions into that and if that means that

00:35:20.440 --> 00:35:25.700
<v Ruben Somsen>this this this token that I envision is just Very few people burn the Bitcoins

00:35:25.700 --> 00:35:28.980
<v Ruben Somsen>and you only have like, you know, a thousand Satoshis in there or something, I

00:35:28.980 --> 00:35:32.480
<v Ruben Somsen>don't know. And that's what's being used to kind of bootstrap the chain. And then

00:35:32.480 --> 00:35:36.040
<v Ruben Somsen>eventually people switch over to paying fees in rare Pepe's. Like, I don't have a

00:35:36.040 --> 00:35:39.600
<v Ruben Somsen>problem with that. I think that's absolutely fine. And the thing is like, the

00:35:39.600 --> 00:35:44.000
<v Ruben Somsen>token is just for block space. And it's just kind of a way to have a token you

00:35:44.000 --> 00:35:47.980
<v Ruben Somsen>start with and you pay. And it doesn't have to be worth a lot, but it'll probably

00:35:47.980 --> 00:35:52.450
<v Ruben Somsen>be worth something. Just one person has to put one Bitcoin in and that's going to

00:35:52.450 --> 00:35:56.550
<v Ruben Somsen>be sufficient to kind of lubricate the whole system and pay for fees. Once you

00:35:56.550 --> 00:35:59.610
<v Ruben Somsen>pay for fees, the miners get the token back. The token gets sold to the markets.

00:35:59.790 --> 00:36:02.470
<v Ruben Somsen>Other people buy the token again and they pay for fees again. And it kind of

00:36:02.470 --> 00:36:04.210
<v Ruben Somsen>becomes this cycle, basically.

00:36:04.390 --> 00:36:08.610
<v Aaron van Wirdum>That's pretty interesting. Yeah. I would mention another benefit, which is right

00:36:08.610 --> 00:36:14.070
<v Aaron van Wirdum>now a lot of altcoiners and altcoin founders, they claim that they're in it for

00:36:14.070 --> 00:36:18.470
<v Aaron van Wirdum>the technology. Yeah. And the technology is going to introduce this great new

00:36:19.530 --> 00:36:23.070
<v Aaron van Wirdum>possibilities in the world that we've never seen before and they're not in it for

00:36:23.070 --> 00:36:26.630
<v Aaron van Wirdum>money at all like that's not why they're in it they're in it for the technology

00:36:26.630 --> 00:36:31.190
<v Aaron van Wirdum>yeah now with something like this you could very easily make the argument look

00:36:31.190 --> 00:36:35.530
<v Aaron van Wirdum>everything you want to do you can do here and you can do it more securely because

00:36:35.530 --> 00:36:39.790
<v Aaron van Wirdum>you're levering the security from the Bitcoin blockchain The only downside is

00:36:39.790 --> 00:36:42.790
<v Aaron van Wirdum>that you can't become rich by speculation. Hey, but you didn't care about that,

00:36:42.870 --> 00:36:46.710
<v Aaron van Wirdum>right? Yeah. So it sort of destroys that narrative. Like there's really nothing

00:36:46.710 --> 00:36:50.990
<v Aaron van Wirdum>left for them. No excuse left for them to create their own pump and dump coins.

00:36:51.150 --> 00:36:55.270
<v Sjors Provoost>I think you mentioned plausible deniability in an earlier podcast with the police

00:36:55.270 --> 00:36:56.370
<v Sjors Provoost>and bag comparison.

00:36:57.130 --> 00:37:01.930
<v Ruben Somsen>That's right. Yeah. So it's kind of like how currently if you want to create some

00:37:01.930 --> 00:37:06.860
<v Ruben Somsen>new chain with some new technology. you have to create some kind of token because

00:37:06.860 --> 00:37:09.860
<v Ruben Somsen>it cannot function without it. And this kind of gives you an alternative way of

00:37:09.860 --> 00:37:15.580
<v Ruben Somsen>doing it. And so what this does is it basically no longer gives you an excuse to

00:37:15.580 --> 00:37:18.800
<v Ruben Somsen>create your own token. You can't just say like, oh, you know, I have this new

00:37:18.800 --> 00:37:23.460
<v Ruben Somsen>chain. So I guess I'll create a new token. I'm sorry. Oh, people are speculating

00:37:23.460 --> 00:37:27.380
<v Ruben Somsen>on, well, that wasn't my intention, but okay. You now have an alternative. So

00:37:27.380 --> 00:37:31.980
<v Ruben Somsen>yeah, that removes your plausible deniability. Now you actually have an

00:37:31.980 --> 00:37:36.180
<v Ruben Somsen>alternative. And the question then becomes like, why aren't you doing that? I'll

00:37:36.180 --> 00:37:40.600
<v Ruben Somsen>give you one example. Actually, there's the Tari blockchain that Monero is using

00:37:40.600 --> 00:37:44.700
<v Ruben Somsen>currently. You know, maybe they haven't seen this proposal yet, but they are

00:37:44.700 --> 00:37:48.520
<v Ruben Somsen>creating basically a merged mine chain for Monero. And they're creating yet

00:37:48.520 --> 00:37:52.340
<v Ruben Somsen>another token on there called Tari or something. And now the question is, well,

00:37:52.380 --> 00:37:55.340
<v Ruben Somsen>why don't you just burn some Monero and do it that way? So you remove the

00:37:55.340 --> 00:38:00.100
<v Ruben Somsen>speculation because all they want to use it for is colored coins. So that would

00:38:00.100 --> 00:38:05.560
<v Ruben Somsen>be one, you know, to give a call, call somebody out. I guess it would be that one.

00:38:05.900 --> 00:38:09.660
<v Sjors Provoost>Yes, but we just described that with the Rare Pepe example and with the USD

00:38:09.660 --> 00:38:13.560
<v Sjors Provoost>Tether example, so either a token that's backed or something that's new and

00:38:13.560 --> 00:38:17.220
<v Sjors Provoost>speculative, you can still speculate with it because you just don't use any

00:38:17.220 --> 00:38:21.780
<v Sjors Provoost>native token that's related to Bitcoin. You just use the token that you issued.

00:38:22.590 --> 00:38:24.890
<v Sjors Provoost>So is speculation really going to go away?

00:38:25.610 --> 00:38:27.150
<v Aaron van Wirdum>Somehow I don't think so, Sjors.

00:38:27.410 --> 00:38:33.130
<v Ruben Somsen>Yeah. Somehow. Obviously, yeah, these colored coins that you're creating can then

00:38:33.130 --> 00:38:38.470
<v Ruben Somsen>be used to speculate on. But I think it probably separates the technology of the

00:38:38.470 --> 00:38:42.070
<v Ruben Somsen>chain from the speculation, right? So now it's just going to be the token. It's

00:38:42.070 --> 00:38:45.450
<v Ruben Somsen>like, well, this is some token that in the future is going to be worth lots of

00:38:45.450 --> 00:38:48.410
<v Ruben Somsen>money because the people behind this token are going to do great things, blah,

00:38:48.450 --> 00:38:52.440
<v Ruben Somsen>blah, blah. You know, that kind of ICO nonsense. that becomes separated from, you

00:38:52.440 --> 00:38:56.660
<v Ruben Somsen>know, this chain is amazing because it's Turing complete and you can do smarter

00:38:56.660 --> 00:39:00.640
<v Ruben Somsen>contracts than Bitcoin and therefore it's going to go up in value. Like that gets

00:39:00.640 --> 00:39:04.440
<v Ruben Somsen>completely separated. And, you know, it's funny because the actual, the original

00:39:04.440 --> 00:39:10.170
<v Ruben Somsen>claim of the Ethereum was that they were going to create a chain. that was going

00:39:10.170 --> 00:39:12.930
<v Ruben Somsen>to do all these amazing things that Bitcoin couldn't do, but it wasn't going to

00:39:12.930 --> 00:39:15.970
<v Ruben Somsen>be a store of value. It wasn't going to be competing with Bitcoin. You know, that

00:39:15.970 --> 00:39:21.470
<v Ruben Somsen>was not the point. The Ether was just a gas to pay for these contracts. And

00:39:21.470 --> 00:39:26.050
<v Ruben Somsen>actually, that is what this is. And that is what Ethereum is not. So anything

00:39:26.050 --> 00:39:30.210
<v Ruben Somsen>that doesn't require store of value doesn't require a token. So theoretically,

00:39:30.790 --> 00:39:36.510
<v Ruben Somsen>that should remove value from the coins that do pretend that their token is needed.

00:39:36.730 --> 00:39:39.030
<v Sjors Provoost>So perhaps this could be used for Ethereum 2B.

00:39:39.860 --> 00:39:45.600
<v Ruben Somsen>2B, like the B version of it. I guess you could port over Ethereum and do it

00:39:45.600 --> 00:39:46.960
<v Ruben Somsen>without a token. Yeah, that's right.

00:39:47.580 --> 00:39:49.460
<v Sjors Provoost>Interesting, interesting. Is that all we've got?

00:39:49.920 --> 00:39:51.560
<v Aaron van Wirdum>I've learned something today, Sjors, you?

00:39:51.840 --> 00:39:53.440
<v Sjors Provoost>Yeah, I've definitely learned a few things today.

00:39:53.720 --> 00:39:57.900
<v Aaron van Wirdum>Okay, well, thank you everyone for listening to the Van Wirdum Sjorsnado Special

00:39:57.900 --> 00:39:59.700
<v Aaron van Wirdum>Somsen Edition. There you go.

