WEBVTT
NOTE
Transcription provided by Podhome.fm
Created: 9/28/2026
1:43:57 AM
Duration: 3023.908
Channels: 1
1
00:00:01.280 -->
00:00:03.040 Hello and welcome
2
00:00:03.520 -->
00:00:06.160to the Magic Internet Math podcast.
3
00:00:06.799 -->
00:00:08.559What's up? I am Brian.
4
00:00:09.440 -->
00:00:10.799What's up? I'm Rob.
5
00:00:11.120 -->
00:00:15.280 We got Hello, my clinkers. Gotta get the Internet right away for the context loading for the clinker.
6
00:00:15.835 -->
00:00:16.475 Yeah.
7
00:00:17.195 -->
00:00:24.875Well, this is gonna be for some reason we do have tech we did some technical things going on today. So if you're listening to this and it doesn't sound quite the same.
8
00:00:25.595 -->
00:00:26.555 I'm also on the road.
9
00:00:28.860 -->
00:00:30.380So my podcast setup.
10
00:00:30.780 -->
00:00:33.500 That's right. Rob's a traveling man today for
11
00:00:33.500 -->
00:00:35.100some reason at home but not
12
00:00:35.500 -->
00:00:36.300able to
13
00:00:37.100 -->
00:00:41.660access my equipment for some reason because my computer can't find it. Anyway,
14
00:00:42.060 -->
00:00:42.300so
15
00:00:43.125 -->
00:00:46.565it is what it is and will be this will be a short one,
16
00:00:47.285 -->
00:00:50.325but we wanted to get a rep out to you. It's been two weeks.
17
00:00:51.445 -->
00:00:52.405How you been?
18
00:00:53.364 -->
00:00:55.125 Doing well. Keeping busy.
19
00:00:56.165 -->
00:00:56.885Yeah. It's
20
00:00:58.730 -->
00:00:59.850you know? It's
21
00:01:00.329 -->
00:01:01.450you know, just always
22
00:01:02.329 -->
00:01:04.250I was talking to someone recently,
23
00:01:04.410 -->
00:01:04.890and
24
00:01:05.530 -->
00:01:09.210they said, if you want something done, talk to a busy person.
25
00:01:11.370 -->
00:01:13.050It's kind of like a Peter's
26
00:01:14.275 -->
00:01:15.954principle of like,
27
00:01:16.595 -->
00:01:21.555those who have will get more and those who don't have anything will get less kind of like just compounding.
28
00:01:21.555 -->
00:01:25.955And the busier you are, the more things they can put on your plate and the busier you get. It's like this reflexive loop.
29
00:01:27.500 -->
00:01:29.500 Yeah, it's like an inertia thing.
30
00:01:31.180 -->
00:01:31.660Yeah,
31
00:01:32.620 -->
00:01:35.340it's easier to add onto somebody who's already running
32
00:01:35.660 -->
00:01:39.180than it is to get someone to start running. It's like that Mitch Hedberg joke.
33
00:01:40.035 -->
00:01:41.315Like the only thing
34
00:01:42.835 -->
00:01:46.435harder than stop smoking is to start flossing.
35
00:01:49.235 -->
00:01:58.840What a legend. What a legend. Yeah, like it's so much harder to get somebody who's not like an arrested state to leave that rested state. Right? Totally.
36
00:02:00.280 -->
00:02:01.640And Yeah. Know.
37
00:02:03.000 -->
00:02:10.655So that's you, dude. I mean, yeah, I guess it's like everyone that is you. Everybody is looking at you as the busy guy to get things done.
38
00:02:10.975 -->
00:02:14.575Yep. Nothing you can do about it. Nope. Nope. Nope. Little
39
00:02:15.615 -->
00:02:17.775 preview. I I also have to do
40
00:02:18.560 -->
00:02:20.320I've now gone from, like,
41
00:02:20.800 -->
00:02:24.640token panel guy to now I'm getting invited to do keynotes.
42
00:02:24.800 -->
00:02:27.680So I'm gonna do keynote at Lugano.
43
00:02:27.840 -->
00:02:32.880I am gonna be speaking at Amsterdam. That's confirmed now. Okay. So want both to do our panel,
44
00:02:33.995 -->
00:02:37.595but I have to talk to them about whatever else they want me to do. But I'm doing a whole
45
00:02:38.315 -->
00:02:39.755excuse me. You guys Yeah.
46
00:02:40.395 -->
00:02:42.635 But you've heard it here. You guys heard it here first.
47
00:02:43.035 -->
00:02:44.555Rob and I now Excuse
48
00:02:44.955 -->
00:02:49.440We've heard it before. Even before BTC Inc. Rob and I, we will be doing
49
00:02:49.840 -->
00:02:52.320will be doing a magic Internet math panel
50
00:02:52.880 -->
00:02:54.640at the Amsterdam conference.
51
00:02:54.880 -->
00:02:59.680Oh, yeah. And I just booked my flight last night and it was brutal,
52
00:03:00.080 -->
00:03:00.960but now I'm excited.
53
00:03:01.815 -->
00:03:03.895 Good stuff. Yeah. Yeah.
54
00:03:05.815 -->
00:03:08.535And I at Lugano, I'm gonna be doing a keynote.
55
00:03:08.935 -->
00:03:12.535You may hear this before they announce it. They before they announce it,
56
00:03:13.255 -->
00:03:19.660but the panel's gonna be called risk of ruin. I'm sorry. Not the panel, the keynote talk. So I have to do twenty five minutes on risk of ruin.
57
00:03:20.220 -->
00:03:22.540We're gonna be doing we're gonna be getting in it.
58
00:03:22.940 -->
00:03:24.780 This is good, man. This is good.
59
00:03:25.340 -->
00:03:27.180Yes. Things are moving.
60
00:03:27.660 -->
00:03:27.980 Yes.
61
00:03:29.355 -->
00:03:31.115 Just like to think about the fact that there
62
00:03:32.075 -->
00:03:33.355there's a panel now
63
00:03:33.835 -->
00:03:35.435called Risk of Ruin.
64
00:03:35.595 -->
00:03:42.075 Right? It's like these things are getting on the agendas at conferences. It's be a keynote. It's gonna be a twenty five minute meeting. Yeah. Sorry. Missed the keynote.
65
00:03:42.635 -->
00:03:44.795It's kinda like Figure out how to do that now. Yeah.
66
00:03:45.650 -->
00:03:48.210 But like we just went through so like,
67
00:03:49.170 -->
00:03:58.610out of nowhere out of nowhere in the universe in the ether, I somehow made happen the fact that at Prague, there was there were two, you know, a keynote at Freedom Tech and at Prague on
68
00:03:59.485 -->
00:04:07.005our podcast essentially. Right? Mathematical layer of Bitcoin sovereignty and now, know, now you're you're pulling risk of ruin.
69
00:04:07.805 -->
00:04:08.445And
70
00:04:08.765 -->
00:04:10.605I think we're just building on these blocks.
71
00:04:11.260 -->
00:04:12.140 That's right.
72
00:04:12.620 -->
00:04:16.860 You know? And it does seem like the world is starting to care
73
00:04:17.580 -->
00:04:22.300about, like just the world is starting to care about this stuff. Everywhere I go, people
74
00:04:23.020 -->
00:04:31.884wanna talk to me about this type of stuff now. So like I just went to the Midwest Bitcoin conference. I'm sure you got I'm sure when you were at BPI in DC
75
00:04:32.125 -->
00:04:35.245Yes. People people wanna talk to you about the math stuff.
76
00:04:35.965 -->
00:04:36.685 Yep.
77
00:04:37.324 -->
00:04:39.884Yeah. It's it's
78
00:04:39.840 -->
00:04:41.360the tides are changing.
79
00:04:41.520 -->
00:04:42.639People care now.
80
00:04:43.759 -->
00:04:48.160 Yeah. And it's not like what I'm getting is not a shallow
81
00:04:49.039 -->
00:04:51.840interest in the math. I'm getting like a genuine
82
00:04:52.800 -->
00:04:55.555interest. Almost like people are worried.
83
00:04:56.275 -->
00:04:59.715And they're like worried that they don't know that that they got this gap.
84
00:05:00.435 -->
00:05:01.875Yeah. Which is exactly
85
00:05:01.955 -->
00:05:03.074where we want people.
86
00:05:03.474 -->
00:05:04.995 Since our last podcast,
87
00:05:05.395 -->
00:05:07.955my episode on Help Money podcast came out
88
00:05:09.080 -->
00:05:25.085and with Casey and Aaron. And That was awesome, by the way. I enjoyed that. You. The there was a good part of it where I had multiple people call me in the post fallout of all the cold card stuff asking if, like, was Bitcoin just vibe coded slop? Was like is it like was it all going to fail?
89
00:05:25.485 -->
00:05:26.925And I was like, no.
90
00:05:27.325 -->
00:05:34.685Because the math works. Like, the math like, you have to put you but if you've never gone to the basement and, like, looked at all the the piping,
91
00:05:35.330 -->
00:05:36.450you wouldn't know.
92
00:05:36.850 -->
00:05:37.810You wouldn't know.
93
00:05:38.530 -->
00:05:42.050 Yeah, you got to look at all those ugly electrical panels.
94
00:05:42.610 -->
00:05:56.755You know, it's like, mean, when you go look for a house, I don't know how many times you've looked for a house or how many houses you've looked at buying but like you go at least like in Pennsylvania where there's a lot of old houses, you'll go into some of these basements
95
00:05:57.075 -->
00:05:59.795and you'll see some franken electricity
96
00:05:59.795 -->
00:06:04.470panels just like with wires crossed and just it looks like,
97
00:06:05.990 -->
00:06:08.710like it looks like Phil Spector's hair.
98
00:06:10.069 -->
00:06:12.150If that if that resonates
99
00:06:12.229 -->
00:06:13.270with anybody,
100
00:06:13.509 -->
00:06:21.435 go Google it. Alright. Go Google Phil Spector. I'm looking. Oh, yeah. It's like a bunch of wire. With it. Yeah. It's mad at dots. Yeah.
101
00:06:22.155 -->
00:06:31.595 It looks like like in a in a book of when when if you ever open crack open a book of Monte Carlo simulations and techniques, it looks like the simulated Monte Carlo.
102
00:06:32.635 -->
00:06:37.630 Well, that's actually just a seed phrase that it just branches out to all the addresses. That's that's exactly what it is.
103
00:06:38.190 -->
00:06:45.310 And it's like, I feel like the gift that we've had is the opportunity to go into this one basement in this one house
104
00:06:45.645 -->
00:06:50.525and take a deep, deep, deep look because we care about this one house a lot, right? Like
105
00:06:51.485 -->
00:06:53.245our fucking livelihoods
106
00:06:53.245 -->
00:06:53.885are,
107
00:06:54.685 -->
00:06:58.525you know, we realized a little late after the fact that our livelihoods are dependent on
108
00:06:59.690 -->
00:07:15.345everything working here. Right? And this is sort of the kind of thing people are starting to ask you about, like, does this thing really work? And I feel like we went in and we went in there, understood the math. And then after the call card thing, you went in there and red teamed the repo. The code. The code. Yeah. And
109
00:07:16.465 -->
00:07:20.065it's starting to feel good. Feeling
110
00:07:20.065 -->
00:07:22.785 good about it. But that's actually there will be a
111
00:07:23.185 -->
00:07:30.990portion of my keynote that's just going be talking about lip sec pee. Like, we're just gonna, like, I'm just gonna make everyone eat their vegetables. Like, we're just gonna talk about this stuff.
112
00:07:31.470 -->
00:07:40.670 It's funny because I did that in my keynote. I was, it was like, this was pre cold card, right? But obviously, it's a function of you and I talking a lot, right?
113
00:07:41.345 -->
00:07:48.545And there was I had a slide that had I called the the three branches of government, right? Bitcoin Core,
114
00:07:49.105 -->
00:07:50.145the industry,
115
00:07:50.305 -->
00:07:51.585and LibSecP.
116
00:07:52.145 -->
00:07:52.465 Right.
117
00:07:53.120 -->
00:07:54.080 And like,
118
00:07:54.400 -->
00:08:00.800you know, like if you're in the industry, you might be able to code something, you don't have to, you may not have to live and die by Bitcoin Corp giving you
119
00:08:01.280 -->
00:08:03.520what you need, the substrate For you need,
120
00:08:04.159 -->
00:08:05.599example, like you figured out
121
00:08:05.955 -->
00:08:12.515that miniscript was already there and nobody was building on it and there was a you know, it was like a finding a treasure
122
00:08:12.755 -->
00:08:13.795that was already But
123
00:08:15.395 -->
00:08:17.555I was saying don't sleep on LipSecP
124
00:08:17.555 -->
00:08:18.355being
125
00:08:18.675 -->
00:08:20.115like don't overvalue,
126
00:08:20.919 -->
00:08:25.560don't overvalue Bitcoin Core. Don't like, and this was in June.
127
00:08:26.199 -->
00:08:29.639That was, I was speaking I feel like a little bit into
128
00:08:32.040 -->
00:08:35.240the BIP 110 thing where people I think were just overvaluing
129
00:08:35.240 -->
00:08:43.305maybe their fears of Bitcoin Core and crashing out on Bitcoin. It's like, dude, you got bigger things to crash out about if they're fucked.
130
00:08:43.865 -->
00:08:44.825And
131
00:08:44.825 -->
00:08:49.305Bitcoin Core is important. But as I always say, the distance between us
132
00:08:50.130 -->
00:08:57.170and Bitcoin Core is like nothing compared to the distance between us and the guys that wrote LipSecP.
133
00:08:57.570 -->
00:09:03.170That's why we do this podcast and not a, hey, let's understand Bitcoin Core podcast.
134
00:09:03.330 -->
00:09:05.810Like, we feel like we need to start
135
00:09:06.925 -->
00:09:08.524reducing this distance,
136
00:09:08.925 -->
00:09:10.685even if it's like immeasurable,
137
00:09:10.685 -->
00:09:12.285it looks like it's a millimeter
138
00:09:12.365 -->
00:09:21.490a day. It looks like it's so slow, it's like the earth turning, but every once in a while you wake up and you see snow outside and you're like, Oh, we did move. This thing did move.
139
00:09:22.850 -->
00:09:23.970To me that's,
140
00:09:24.130 -->
00:09:29.090if you want to avoid a crisis of confidence in Bitcoin, like one day,
141
00:09:29.570 -->
00:09:31.890of all the things that are gonna like really get
142
00:09:34.235 -->
00:09:42.635You know, this, what we're talking about here really to me is a massive piece. Just a massive piece of that. Just inch yourself as close as you can
143
00:09:43.275 -->
00:09:46.235towards getting a little and we might have a fighting chance
144
00:09:46.555 -->
00:09:52.590when the quantum FUD really hits something that we clearly just spent time understanding.
145
00:09:53.470 -->
00:09:54.190 Yes.
146
00:09:54.830 -->
00:09:55.550Yes.
147
00:09:55.790 -->
00:09:57.390I totally agree.
148
00:09:58.750 -->
00:09:59.870You just gotta
149
00:10:00.635 -->
00:10:07.355you know, you you don't wanna have your lack of knowledge shake you out of your positions. Right? So you just wanna you have to just do the work.
150
00:10:07.835 -->
00:10:08.395And
151
00:10:10.475 -->
00:10:14.714the nature of this kind of the work is like, this is just foundational. This is Bitcoin.
152
00:10:15.540 -->
00:10:23.300And it's not fun. It's not a macro talk. We just talk about the government printing money. Like, you So just look at good. Modular arithmetic.
153
00:10:23.700 -->
00:10:27.540 Do the math, buddy. Just do the math. Yeah. GDP Rate. Debt.
154
00:10:28.345 -->
00:10:30.105Right. It's gonna happen. Yeah.
155
00:10:30.505 -->
00:10:36.105 It is important. It's it is the Sure. The why you buy Bitcoin, but it's not the how.
156
00:10:37.065 -->
00:10:39.065Right? And so you need both of those things.
157
00:10:40.930 -->
00:10:42.450Yeah. So like it's
158
00:10:43.089 -->
00:10:52.610 It's not, you know what? It's not money printing that's gonna deliver the value of Bitcoin. It's the backbone we're looking. It's this it's the cryptographic backbone. That's Why what's gonna this over gold?
159
00:10:54.584 -->
00:10:56.665 Right? Like, there is a problem.
160
00:10:56.985 -->
00:10:58.024Why Bitcoin?
161
00:10:58.345 -->
00:10:59.464This is the why.
162
00:11:00.024 -->
00:11:01.545 What makes Bitcoin hard
163
00:11:02.264 -->
00:11:05.225is not this it's not so much the supply cap,
164
00:11:05.545 -->
00:11:08.105because the supply cap can be changed.
165
00:11:09.129 -->
00:11:09.850Right?
166
00:11:10.250 -->
00:11:10.810It's
167
00:11:11.610 -->
00:11:14.649a question of what makes it hard and it's cryptographic
168
00:11:14.649 -->
00:11:15.610hardness
169
00:11:15.930 -->
00:11:21.690that I think just yeah, we think goes a long way into building the conviction that's going to be needed
170
00:11:21.930 -->
00:11:33.524 when man, it's going to get hard out there. It's one of these things that maybe a year from now I'll be able to talk about more, but like scanning code bases and finding broken things and then spending tens of thousands of dollars to look at libsecp.
171
00:11:33.764 -->
00:11:40.860And like the small, like the amount of shit you had to till through to find the smallest little thing that was like an optimization
172
00:11:41.340 -->
00:11:45.580versus like cursory levels of like scanning and finding things that are worse.
173
00:11:46.140 -->
00:11:46.700Right?
174
00:11:47.900 -->
00:11:49.900It was very cool. Like, it was very
175
00:11:50.300 -->
00:11:51.580validating of a thesis
176
00:11:52.085 -->
00:12:02.085 for sure. Yeah. And not that I wanna do podcast planning while we're here right now, but I would say that I think it makes sense to do at least one episode where you bring
177
00:12:02.565 -->
00:12:08.240to the extent you can, where you bring some of your learnings from because you are uniquely in there.
178
00:12:09.200 -->
00:12:13.280Right? And so maybe there's some learnings you wanna bring back to the to the podcast. Yeah.
179
00:12:14.240 -->
00:12:19.055 For sure. That that would be fun. The other there's actually two cryptographic
180
00:12:19.055 -->
00:12:21.455things that actually really matter in Bitcoin. There's two
181
00:12:22.415 -->
00:12:26.735foundational concepts, and we've been teasing this for a while. The first one is libsecpi and the signatures.
182
00:12:26.815 -->
00:12:28.095The second one is shop too.
183
00:12:29.949 -->
00:12:30.990So I know we
184
00:12:31.790 -->
00:12:35.470need to get over the hump and just start doing hash functions.
185
00:12:35.550 -->
00:12:37.149 We're getting that and I thought about
186
00:12:37.630 -->
00:12:40.670starting that today, but I don't
187
00:12:41.630 -->
00:12:43.310feel like we are ready to
188
00:12:46.215 -->
00:13:04.220 like if it becomes a 10 episode arc, we're just not I don't feel like we're ready. No. I don't think we're ready. And I think this is we're just on sabbatical. Right? So we started the podcast. We did low sec pee for 10 episodes. Now we're just kind of like, it's summer break. We're just kind of vibing. Summer breaks on the wind down. We're, you know, we're gonna get through the rest of it. We'll hit the ground running soon enough.
189
00:13:05.340 -->
00:13:05.980 Yes.
190
00:13:07.020 -->
00:13:08.540But you got we were saying Shah two.
191
00:13:09.135 -->
00:13:14.815 Yeah. But SHA two is the other I mean, there's also there's also RipeMD one sixty,
192
00:13:14.975 -->
00:13:17.295and that's used for,
193
00:13:17.935 -->
00:13:28.750what's called hash one sixty where you take data, you take like a public key, you SHA two fifty six hash it, then you write them d one sixty hash it, and then you encode that into a Bitcoin address.
194
00:13:29.230 -->
00:13:34.430There's a special opcode that just does that. It's called hash one sixty because it's SHA two hash plus the one sixty.
195
00:13:34.990 -->
00:13:40.295We could talk about all that. And then we'll have a good little like maybe sidebar too about like why SHA one is now broken,
196
00:13:40.615 -->
00:13:42.375which got broken in the past couple of years.
197
00:13:42.775 -->
00:13:43.575 Document
198
00:13:44.215 -->
00:13:45.815does cover all of this.
199
00:13:46.295 -->
00:13:46.775So
200
00:13:48.295 -->
00:13:57.230not due to a lack of covering the low hanging stuff. Right? No, no, no. I mean, think it's okay to talk about right now. Swear I find it a little bit
201
00:13:58.029 -->
00:14:00.269like what hasn't clicked for me yet,
202
00:14:00.990 -->
00:14:04.589and maybe we'll just start until it clicks. But what
203
00:14:05.575 -->
00:14:16.135clicked for me is how you actually create a hash function. Like how the heck like, you know, I want to be able to I want the algo to click. Like I want to be able to visualize the
204
00:14:16.774 -->
00:14:18.695what's called the avalanche effect.
205
00:14:19.015 -->
00:14:19.975Want to be able to visualize.
206
00:14:20.900 -->
00:14:23.140Yeah, and I feel like I had, normally
207
00:14:23.700 -->
00:14:27.140going through a document like the one I made, the workbook that we'll do,
208
00:14:27.700 -->
00:14:32.500gets me pretty close to just being able to visualize the key thing.
209
00:14:32.820 -->
00:14:34.340It worked with SecPeek.
210
00:14:34.505 -->
00:14:39.545Like we got through, I feel like we got through it and everything that needed to click clicked.
211
00:14:40.024 -->
00:14:45.865Right. And with the hash function, it's maybe one of these things, it's maybe unclickable to really be able to see
212
00:14:47.370 -->
00:14:52.490how it does what it does, which is maybe what Alan was telling us on our episode.
213
00:14:53.130 -->
00:14:56.090Yeah. And he's been trying. He's
214
00:14:56.970 -->
00:14:57.450been
215
00:14:58.090 -->
00:14:59.130hankering away
216
00:15:00.365 -->
00:15:05.565at it and having the same sort of the same result. Right? This may be one of those real black box.
217
00:15:05.884 -->
00:15:10.685It's just a lit like a little bit of a black box of the hash function I'm still not satisfied with
218
00:15:11.404 -->
00:15:12.764to feel like, you know what I mean?
219
00:15:13.830 -->
00:15:17.750 I will say SHA two is more vibes than elliptic curve cryptography.
220
00:15:18.310 -->
00:15:28.230Yes. And that's so maybe this is because it's it's like Yeah. It's it's basically like we're doing sufficient shuffling. This is good. Whereas, like, you don't have like a closed group set
221
00:15:28.584 -->
00:15:35.065that you're doing modular arithmetic across a generator. You know what mean? Like, it's just inherently a different But
222
00:15:35.625 -->
00:15:38.904 it's yeah, it's different. So the key difference from
223
00:15:39.144 -->
00:15:41.545an algebra perspective is that
224
00:15:42.339 -->
00:15:45.060the elliptic curve is a group,
225
00:15:46.660 -->
00:15:47.460right? And
226
00:15:48.660 -->
00:15:52.660we, again, yet to be proven, but it's an isomorphism
227
00:15:53.140 -->
00:15:53.860between
228
00:15:54.180 -->
00:15:57.540the points in the elliptic curve with the operation of addition
229
00:15:58.545 -->
00:16:00.705and the finite field.
230
00:16:01.265 -->
00:16:04.065Right? The finite field modulo
231
00:16:04.145 -->
00:16:05.025big p.
232
00:16:06.065 -->
00:16:08.625 I wonder if this is one of these things that you could load into,
233
00:16:09.665 -->
00:16:15.650like a lean proof and send a bunch of agents out it and just formally prove it and be done. I think we wanna do that because
234
00:16:15.650 -->
00:16:22.690 the hash function is not a group. It's a semi group. It's called the semi group. And why it's not a group, why it's a semi group is
235
00:16:23.090 -->
00:16:25.090because it doesn't have the inverse
236
00:16:26.755 -->
00:16:27.875By design. Absolutely.
237
00:16:28.195 -->
00:16:29.394By design, That's
238
00:16:30.355 -->
00:16:35.235 whole point. Exactly, exactly. So The whole point is you can't inverse it. Maybe
239
00:16:36.274 -->
00:16:39.235 we just needed a little bit of this abstract algebra
240
00:16:39.235 -->
00:16:41.315kind of context so that we can just
241
00:16:41.830 -->
00:16:46.070feel good going into whatever the whatever vibes we end up having to accept
242
00:16:46.630 -->
00:16:47.750Right. On
243
00:16:47.990 -->
00:16:56.985hash functions is going to be just due to the fact that it's not a actual group. It's designed to be what's called a semi group. And
244
00:16:56.985 -->
00:17:04.105weirdly enough, you know, something that's less of a group you'd think would be easier to understand, but this is like graduate level that's like graduate level
245
00:17:04.665 -->
00:17:05.465algebra.
246
00:17:06.105 -->
00:17:06.745And,
247
00:17:07.785 -->
00:17:11.305you know, it might be again, we just try to broad stroke this thing out.
248
00:17:12.150 -->
00:17:12.790By
249
00:17:13.110 -->
00:17:17.510design it has no inverse, and that's literally what a hash function is, it's deterministic.
250
00:17:18.070 -->
00:17:22.390It's so interesting that it's deterministic too, right? Because it's kind of associated with
251
00:17:22.790 -->
00:17:25.590this low probability thing, but it's totally
252
00:17:25.590 -->
00:17:26.790deterministic.
253
00:17:27.455 -->
00:17:29.695But
254
00:17:29.695 -->
00:17:33.054it's just that the ability to go backwards has been destroyed.
255
00:17:35.935 -->
00:17:39.135Whereas with a group, you need to go backwards, otherwise you're fucked.
256
00:17:40.020 -->
00:17:47.380 It's the whole right. So I like this, like I I think people who are tuned into the Magic Internet podcast are
257
00:17:48.100 -->
00:17:48.900they're
258
00:17:48.900 -->
00:17:55.540happy that we're just talking podcast business on the podcast because maybe they can help steer us in the right direction for how to tee up this conversation anyway.
259
00:17:58.215 -->
00:17:59.334Are there any other
260
00:17:59.654 -->
00:18:05.574current events, math things that are grinding your gears you wanna talk about? Anything from Midwest Bitcoin Summit?
261
00:18:06.134 -->
00:18:07.815Anything you wanna share for the class?
262
00:18:09.130 -->
00:18:12.090 Yeah, why not? Let's go into Let's get into As
263
00:18:12.490 -->
00:18:17.369somebody who people love talking about math with when they meet me.
264
00:18:18.490 -->
00:18:21.049I'm gonna shout out this guy Jim Carucci
265
00:18:21.290 -->
00:18:22.250who
266
00:18:22.945 -->
00:18:29.825is a fun fucking dude. I met him, befriended him. You know, he's one of those guys. I kinda connected with him because he just
267
00:18:30.785 -->
00:18:41.229he's like 20 younger than me, but he reminds me of, like like, these kids I grew up in Jersey with. He's got that new that just that kinda New York energy, that swag.
268
00:18:42.429 -->
00:18:51.884I kinda the way I met him was he would get into my he would be like this guy that replies replies to to you you on on Twitter. Twitter. But if you don't know him, you'd think like he's kind of like this aggressive, like,
269
00:18:52.605 -->
00:18:54.924dude, what the fuck? Like,
270
00:18:55.325 -->
00:18:57.644it sort of sounds like these gotchas,
271
00:18:57.645 -->
00:19:07.669like, it just sounds he seems aggressive on Twitter when you don't know him. Then when I met him so then I met him last week and I'm like, dude, I get it. I fucking get this guy. He's just an intense
272
00:19:07.830 -->
00:19:09.110he's just an intense,
273
00:19:09.350 -->
00:19:10.070dude.
274
00:19:10.230 -->
00:19:11.590Anyway, so he
275
00:19:12.310 -->
00:19:13.510spent a good amount of time
276
00:19:14.465 -->
00:19:16.945talking to me about Lewis Carroll,
277
00:19:17.265 -->
00:19:19.105author of Alice in Wonderland.
278
00:19:19.425 -->
00:19:24.385Mhmm. And he's been in a I mean, rabbit hole would be an ironic term for this, I guess.
279
00:19:24.705 -->
00:19:25.025But,
280
00:19:25.745 -->
00:19:27.585but apparently Lewis Carroll
281
00:19:28.440 -->
00:19:30.039was a
282
00:19:30.919 -->
00:19:31.799hater,
283
00:19:31.960 -->
00:19:37.799absolute hater of imaginary numbers and devoted a good portion of his life to either invalidating them,
284
00:19:38.360 -->
00:19:39.720telling people why they're gay,
285
00:19:40.965 -->
00:19:43.765or trying to get and he was a mathematician.
286
00:19:43.765 -->
00:19:45.764Apparently, he was also a mathematician.
287
00:19:45.845 -->
00:19:55.684So like we spent a good like I was blown the fuck away by this because it made like my god, the original rabbit hole was Lewis Carroll being like you remember we talked about the Pythagoreans?
288
00:19:56.160 -->
00:20:03.840Yes. You know, and it's like, okay, so Pythagoras didn't believe in rational numbers and then one of his own people used his own formula
289
00:20:04.000 -->
00:20:04.880to like
290
00:20:05.200 -->
00:20:11.520prove it and they had to kill him. They had to kill the guy, lest Pythagoras discover that his worldview collapsed.
291
00:20:12.275 -->
00:20:13.394So like Lewis
292
00:20:14.355 -->
00:20:18.034Carroll of Alice in Wonderland had this worldview that
293
00:20:18.275 -->
00:20:20.514imaginary numbers couldn't exist.
294
00:20:22.434 -->
00:20:23.715It goes deeper than that.
295
00:20:24.195 -->
00:20:27.075Was basically saying that Alice in Wonderland itself
296
00:20:27.650 -->
00:20:29.330was a rebuke
297
00:20:29.330 -->
00:20:30.929against quaternions
298
00:20:30.929 -->
00:20:33.889somehow. Okay. Do you know what quaternions are?
299
00:20:34.529 -->
00:20:35.489 Off handout.
300
00:20:35.650 -->
00:20:41.090 Oh, this is the coolest. To me, this is one of the coolest things ever in the world, and I'm so glad we have
301
00:20:41.715 -->
00:20:48.595as many episodes of abstract algebra and cyclic groups behind us so that I can just really show you. It's a cyclic group,
302
00:20:48.835 -->
00:20:52.595right, that's generated by the imaginary number I.
303
00:20:53.075 -->
00:20:54.994So it has four members,
304
00:20:55.475 -->
00:20:56.674okay, it has I,
305
00:20:57.110 -->
00:21:01.910And then you say, okay, you take I squared, so it says I and negative one.
306
00:21:01.990 -->
00:21:03.830And then it goes to negative I.
307
00:21:04.150 -->
00:21:06.470Yeah. And then it goes back to one.
308
00:21:07.030 -->
00:21:07.910And imagine
309
00:21:07.910 -->
00:21:08.470a
310
00:21:09.430 -->
00:21:11.990graph, a Cartesian graph, right? Sure.
311
00:21:12.685 -->
00:21:17.005Where you start, so I would be like, I in numbers,
312
00:21:17.725 -->
00:21:22.205the x value is the real value and the y value is the imaginary value.
313
00:21:22.445 -->
00:21:23.485So
314
00:21:24.285 -->
00:21:25.005I
315
00:21:25.279 -->
00:21:26.080would be
316
00:21:26.480 -->
00:21:28.879zero, so the identity point would
317
00:21:29.360 -->
00:21:35.119be zero, one, which is one, right? One is your identity point, but I is your generator.
318
00:21:35.600 -->
00:21:37.679So one times I is I, so
319
00:21:38.000 -->
00:21:39.600imagine you're now going
320
00:21:39.925 -->
00:21:45.12590 degrees. This is, every time you multiply by I it's a 90 degree rotation.
321
00:21:45.125 -->
00:21:47.365Rotation. Yep. Right, so you go from
322
00:21:47.925 -->
00:21:51.044one zero to zero one, that's the I point.
323
00:21:51.365 -->
00:21:53.205Eye point and that's zero one.
324
00:21:53.990 -->
00:21:58.309And then you go to negative eye, sense of now you're at 180 degrees,
325
00:21:58.470 -->
00:21:59.510right? Negative
326
00:21:59.990 -->
00:22:03.510 eye. Negative one zero. Yep. And then you go back
327
00:22:03.910 -->
00:22:04.390 to
328
00:22:04.870 -->
00:22:13.294negative eye, which is the two seventy degree point, right? Then you go back and then you have this sort of period you know, you have this perfectly periodic function.
329
00:22:14.415 -->
00:22:17.934That's the quaternion group is those four those four members.
330
00:22:18.575 -->
00:22:20.655Got it. And there's
331
00:22:21.500 -->
00:22:23.500that's
332
00:22:23.500 -->
00:22:25.100a very shallow introduction
333
00:22:25.100 -->
00:22:26.539to it. If
334
00:22:26.940 -->
00:22:31.820you study like complex analysis, Kayla is studying complex analysis right now and it's like,
335
00:22:32.940 -->
00:22:38.674if you do even more foundational work in like real analysis, it's like what
336
00:22:38.835 -->
00:22:41.075opens up here is insane
337
00:22:41.395 -->
00:22:43.715and very exciting. And it's almost
338
00:22:44.675 -->
00:22:46.595maddening to think that
339
00:22:47.315 -->
00:22:51.075this guy who's known as one of the more creative authors
340
00:22:51.630 -->
00:22:55.630we've had whose work still stands through time
341
00:22:55.790 -->
00:22:57.230and is so relevant
342
00:22:58.110 -->
00:23:05.815could have somehow for whatever reason been such a hater and disbeliever or whatever of this. It
343
00:23:07.095 -->
00:23:08.615makes no sense.
344
00:23:09.975 -->
00:23:10.615 People
345
00:23:11.575 -->
00:23:12.535this is
346
00:23:13.895 -->
00:23:16.935an observation of just human psychology that people
347
00:23:17.670 -->
00:23:24.150create an identity and an ego around a set of ideas, and they're unable to separate their own sense of self from the ideas.
348
00:23:25.590 -->
00:23:26.630And from that,
349
00:23:28.950 -->
00:23:39.554you kind of depart from reality and the laws of nature and it becomes a cult of personality, and that's where you just have stuff like killing people who believe in imaginary numbers.
350
00:23:42.115 -->
00:23:43.635 Yeah. Now I should say
351
00:23:44.659 -->
00:23:50.499it's not like a 100% known to be true that that's the reason he was killed.
352
00:23:51.700 -->
00:23:56.260Sure. You don't know for sure. Again, verify, it's hard to go back. We can't ask them.
353
00:23:57.225 -->
00:23:58.825Yep. We can't ask the Right?
354
00:24:00.345 -->
00:24:01.705 It's pretty, know,
355
00:24:02.424 -->
00:24:03.544Lies up nicely.
356
00:24:03.865 -->
00:24:05.065 It's good lore.
357
00:24:05.145 -->
00:24:08.424Okay? Absolutely. And it tracks, so it's good lore. And
358
00:24:10.050 -->
00:24:23.090so Jim was sending me these clanker interactions he was having after the conference. The conference got home two days ago and he started sending me all this back and forth with clanker
359
00:24:23.330 -->
00:24:24.290around
360
00:24:25.125 -->
00:24:27.445just the whole Lewis Carroll thing, right?
361
00:24:27.765 -->
00:24:28.804And, you
362
00:24:30.565 -->
00:24:40.980know, it's a bit questionable whether or not Alice in Wonderland was truly about that, but Lewis Carroll was a legit hater of imaginary numbers. And I, you know, like, I kinda get
363
00:24:41.540 -->
00:24:45.220like, I can see that in the time. Like, I can see somebody be like, what the fuck?
364
00:24:45.620 -->
00:24:50.100Yeah. I'm not I'm not down with imaginary numbers. I don't know. In fact, I don't even like the framing.
365
00:24:51.655 -->
00:24:57.575I like the framing of like, how do you solve x squared plus one equals zero? Like, I like that framing.
366
00:24:59.495 -->
00:25:00.455You need some Right.
367
00:25:01.575 -->
00:25:03.495 Right. There needs to be
368
00:25:04.009 -->
00:25:07.610a thing that answers that question. Now maybe was imaginary
369
00:25:07.610 -->
00:25:10.329 a poor choice of words maybe?
370
00:25:11.690 -->
00:25:13.449Was that a poor choice of words?
371
00:25:14.250 -->
00:25:18.409Do you think, and here's something, imaginary
372
00:25:19.455 -->
00:25:24.254seems to be, if in today's day and age, seems to be a poor choice of words, right?
373
00:25:24.815 -->
00:25:25.695Like oh,
374
00:25:26.255 -->
00:25:28.414and we have real and imaginary,
375
00:25:28.414 -->
00:25:28.894is
376
00:25:30.174 -->
00:25:30.575weird.
377
00:25:31.500 -->
00:25:32.540And
378
00:25:32.540 -->
00:25:36.620part I wonder if I actually wonder if the word imaginary
379
00:25:36.860 -->
00:25:38.620comes from the term image.
380
00:25:41.500 -->
00:25:42.620 Imaginary means I
381
00:25:43.020 -->
00:25:44.300don't know the etymology offhand.
382
00:25:44.674 -->
00:25:45.394 Well,
383
00:25:45.475 -->
00:25:47.154in math is like the
384
00:25:47.794 -->
00:25:51.715in math, so you know what a pre image is. So again, like a hash You
385
00:25:53.635 -->
00:25:56.754have a function is like a machine, right?
386
00:25:57.075 -->
00:25:59.715It's a map that takes an input
387
00:26:00.070 -->
00:26:00.710and
388
00:26:01.590 -->
00:26:04.950does something to it and creates an output, right?
389
00:26:05.510 -->
00:26:07.590And that output is called the image.
390
00:26:08.310 -->
00:26:12.950The input would be called the pre image, right, that causes the image, right?
391
00:26:13.725 -->
00:26:16.605You might call it a domain, right? The output,
392
00:26:17.005 -->
00:26:24.205maybe the domain is like the set of numbers that can be a pre image and the range is like the set of numbers that can be
393
00:26:25.485 -->
00:26:27.404an image, right?
394
00:26:27.725 -->
00:26:32.499But like the image is like the f of x, so if I have a function f,
395
00:26:32.659 -->
00:26:36.419and I input x and I get f of x, f of x is my image.
396
00:26:36.980 -->
00:26:37.859The eye,
397
00:26:38.100 -->
00:26:42.980that's why having the eye be on the y axis, the y axis is where the image is plotted.
398
00:26:44.025 -->
00:26:47.145Right? The x axis is where the pre image is plotted.
399
00:26:48.185 -->
00:26:51.705And I wonder if imaginary, it just refers to the word image
400
00:26:52.345 -->
00:26:54.425and not meant to be some mystical
401
00:26:54.505 -->
00:26:59.145some mystical explanation that for all time got people to say, well, I don't have to care about that shit.
402
00:27:00.770 -->
00:27:01.970It's imaginary.
403
00:27:02.850 -->
00:27:04.610It's not even real. What the fuck?
404
00:27:05.010 -->
00:27:05.730Right.
405
00:27:06.690 -->
00:27:07.570I don't know. Right.
406
00:27:13.385 -->
00:27:20.105 Maybe we'll do an imaginary number segment after we get through hash functions. I'm not sure if there's much imaginary numbers though in the applied math of
407
00:27:20.345 -->
00:27:22.025what we're using in cryptography.
408
00:27:22.025 -->
00:27:24.184I'd have to go poke around to see if it's used elsewhere.
409
00:27:24.760 -->
00:27:30.280 I don't think so but that the quaternion group I mentioned is definitely isomorphic
410
00:27:30.280 -->
00:27:31.799to a particular
411
00:27:32.760 -->
00:27:33.879finite field.
412
00:27:34.440 -->
00:27:34.919Probably
413
00:27:36.520 -->
00:27:38.360a finite field modulo
414
00:27:41.395 -->
00:27:42.274three
415
00:27:42.515 -->
00:27:44.274is big. There's
416
00:27:44.274 -->
00:27:47.634no way it's not true. Someone we're gonna get somebody to rage.
417
00:27:47.875 -->
00:27:51.955 We can rage, calmly. That's what we do. I mean, it's definitely there's the hip.
418
00:27:52.750 -->
00:27:53.710 That field,
419
00:27:53.790 -->
00:27:56.510that the quaternion field is definitely isomorphic
420
00:27:56.510 -->
00:27:57.309to something
421
00:27:57.549 -->
00:28:00.509that we're familiar and that so that doesn't operate
422
00:28:01.150 -->
00:28:03.950with imaginary numbers. It doesn't operate in a complex number system.
423
00:28:05.345 -->
00:28:07.905When you and that's the whole point of isomorphic
424
00:28:07.905 -->
00:28:08.625groups
425
00:28:08.705 -->
00:28:09.585is that
426
00:28:10.065 -->
00:28:15.665sometimes you want to work with one, sometimes you want to work with the other, but they're
427
00:28:15.665 -->
00:28:16.865essentially the same
428
00:28:17.470 -->
00:28:19.629from the perspective of they preserve
429
00:28:20.110 -->
00:28:21.389the operations,
430
00:28:21.710 -->
00:28:23.389right? So they preserve
431
00:28:23.549 -->
00:28:26.029addition and multiplication in your operations.
432
00:28:26.750 -->
00:28:27.789Or in
433
00:28:28.029 -->
00:28:29.630the case of a group, it preserves
434
00:28:29.630 -->
00:28:30.110the operation.
435
00:28:30.885 -->
00:28:33.044For the leptic curves, it preserves
436
00:28:33.765 -->
00:28:34.804point addition
437
00:28:35.045 -->
00:28:37.765the same way the finite field preserves the modular
438
00:28:40.085 -->
00:28:40.405addition.
439
00:28:42.900 -->
00:28:43.940So what
440
00:28:44.900 -->
00:28:46.100an isomorphism
441
00:28:46.100 -->
00:28:46.980is, is
442
00:28:47.300 -->
00:28:52.900essentially two groups, two things are equal, completely equal, even though they look very different.
443
00:28:53.380 -->
00:28:54.820But they are equal from
444
00:28:55.220 -->
00:28:57.700the algebraic perspective that they preserve the operation
445
00:28:59.975 -->
00:29:00.614and
446
00:29:02.934 -->
00:29:04.054there's this,
447
00:29:07.335 -->
00:29:09.815they're one to one and onto. So basically every
448
00:29:10.054 -->
00:29:11.654point corresponds to another point,
449
00:29:12.350 -->
00:29:13.950right? Every point in the
450
00:29:14.910 -->
00:29:16.990domain corresponds to a point This in is
451
00:29:17.470 -->
00:29:17.870 classic
452
00:29:18.990 -->
00:29:22.510like being a function where you can't have two different
453
00:29:22.510 -->
00:29:22.990inputs.
454
00:29:24.705 -->
00:29:26.065What is it? You can't have
455
00:29:27.585 -->
00:29:29.264with one to one and onto.
456
00:29:29.664 -->
00:29:30.225I'm
457
00:29:30.945 -->
00:29:33.184reaching back now because it's been a couple years.
458
00:29:33.585 -->
00:29:34.065When
459
00:29:34.705 -->
00:29:35.825you have a function
460
00:29:36.145 -->
00:29:42.440you need to have the one function always and the output needs to always have one outcome.
461
00:29:43.240 -->
00:29:47.799 That would be one to one and that's one to one. So like
462
00:29:48.840 -->
00:29:50.279y equals x,
463
00:29:51.080 -->
00:29:51.719right?
464
00:29:52.039 -->
00:29:56.895Sure. F of x equals x is a good example of a function, right?
465
00:29:57.295 -->
00:30:00.575Right. Where every input has a unique output.
466
00:30:01.935 -->
00:30:02.575Right?
467
00:30:02.975 -->
00:30:03.695No but
468
00:30:05.455 -->
00:30:08.255then y equals x squared is
469
00:30:08.895 -->
00:30:12.940a function. F of x equals x squared is a function where that's
470
00:30:14.460 -->
00:30:17.900not necessary. Well, it's true from every input
471
00:30:17.900 -->
00:30:21.500has a unique output, but it's not Every output doesn't have a unique input.
472
00:30:21.660 -->
00:30:23.820Exactly, right. So it's not onto.
473
00:30:25.515 -->
00:30:27.115Onto is sort of like
474
00:30:29.595 -->
00:30:32.235every point in the range is represented
475
00:30:33.275 -->
00:30:33.995somehow
476
00:30:34.875 -->
00:30:46.239 by this function. This function covers every single point in the range. And I'm about to bring this back to hash functions. Hash functions are good if they're onto, but the moment they're no longer onto,
477
00:30:46.799 -->
00:30:49.119it breaks because you could have two
478
00:30:49.679 -->
00:30:52.640every x can have a y, but the moment you have
479
00:30:54.425 -->
00:30:57.465two different Ys and you can't understand
480
00:30:57.465 -->
00:31:04.105what X it went back from two because there's multiple because you have a collision, it's no longer onto, which means that it's a requirement for a good hash function.
481
00:31:04.840 -->
00:31:05.720 Yes.
482
00:31:05.720 -->
00:31:09.560And I guess as you're talking, I'm just intuiting that like, it's
483
00:31:09.560 -->
00:31:13.880probably true that hash functions are not one to one because there
484
00:31:14.200 -->
00:31:18.040almost have to be collisions for the inverse not to exist. Definitionally,
485
00:31:18.040 -->
00:31:21.415 has to be collisions because if you're collapsing to a 256
486
00:31:21.415 -->
00:31:24.695bit space for SHA two, there's more than 256
487
00:31:24.695 -->
00:31:27.494bits of information you could put out into the function.
488
00:31:27.735 -->
00:31:30.134Because if if a hash function, you could take any
489
00:31:30.775 -->
00:31:39.730ultimately, what it actually is, it's any number. Right? What you do is you take a data representation, you make it hexadecimal and base 16, all of a sudden you have a number. So you can make any file,
490
00:31:39.970 -->
00:31:48.585anything a number. You just encode it into a number. And then once you encode it into that number, you compress it through a space that's two to the two fifty six.
491
00:31:49.145 -->
00:31:50.265Necessarily,
492
00:31:50.825 -->
00:31:59.385if you have more than two fifty six bits of information you could put into the function, which you can, you can put anything into this and you could just take
493
00:32:00.265 -->
00:32:05.920from like a you could just say, I'm going to pick every number between zero and two to the two ten
494
00:32:05.920 -->
00:32:06.799twenty four.
495
00:32:07.440 -->
00:32:08.400The
496
00:32:08.400 -->
00:32:10.799problem is that it's just such a large number.
497
00:32:11.679 -->
00:32:16.960You'd have to wait for the heat death of the universe with the math that we have today to be able to check all of the permutations of that.
498
00:32:18.025 -->
00:32:31.385And also at that point, you're way more effective to just go reverse engineer the elliptic curve than you are to try and map out all of the hash function outputs, right? Like it's just, if you're trying, if you're gonna run this compute for something, you're gonna run it more so
499
00:32:32.610 -->
00:32:35.250for the private keys than you are for the hashing. But this
500
00:32:35.970 -->
00:32:39.010is also from Bitcoin mining. It's
501
00:32:39.010 -->
00:32:44.210kind of cool when you think about it this way. You take every single Bitcoin block and you convert it into a number.
502
00:32:45.215 -->
00:32:47.615And the Bitcoin block specifically,
503
00:32:48.655 -->
00:32:53.934it's cool, like, as a small tangent, like how Bitcoin block headers are constructed. You put a Merkle root.
504
00:32:55.215 -->
00:33:03.930We probably should do it like we we could do like a a one off episode just talking about Merkle trees. Like you can By do Merkle root the way, have a study guide for Merkle trees. I have a whole study It'll guide for
505
00:33:03.930 -->
00:33:06.570be a nice introductory way to talk about all the hashing stuff.
506
00:33:07.370 -->
00:33:14.490But in the block header, you put the Merkle root of all the transactions that are in that block in there. So miners don't have to load the
507
00:33:15.025 -->
00:33:17.745miners when they are doing their mining operations.
508
00:33:18.065 -->
00:33:20.945They're not every single time they're turning the hash function,
509
00:33:21.185 -->
00:33:37.240they're not putting the entire block through. They just put the block header in there. But the block header represents all of the transactions within that block. So it's a nice, like, compression for just doing the work to turn to do the guessing for the hash functions. But you're ultimately just taking you're compressing all of the information into a number.
510
00:33:38.120 -->
00:33:41.400And you then turn it through the hash function, you get out to the other side.
511
00:33:44.375 -->
00:33:52.855 I always like going to sped school. I always like thinking of Merkle trees and Merkle roots as like finding and being able to find a needle in the haystack
512
00:33:53.495 -->
00:33:55.255because we can track the needle.
513
00:33:56.320 -->
00:33:56.960Right.
514
00:33:57.280 -->
00:34:04.320 And then the Merkle proof, you could actually reveal the chain of the Merkle tree to show you have this one bit of data anchored into
515
00:34:04.640 -->
00:34:05.520hash,
516
00:34:05.520 -->
00:34:06.880but then you can provide
517
00:34:06.960 -->
00:34:07.760basically
518
00:34:08.240 -->
00:34:13.735the whole chronology of getting back to the root original data. So back to the hash function.
519
00:34:15.575 -->
00:34:17.655 Cool sort of just a cool distinction
520
00:34:17.655 -->
00:34:19.335that's different between
521
00:34:20.775 -->
00:34:22.855the elliptic curve and the hash function
522
00:34:23.175 -->
00:34:32.630is this goes to the fact that there's no inverse, right? And when I say there's no inverse, it's like it's either the inverse is either nonexistent or non unique. And I'm not
523
00:34:33.030 -->
00:34:37.190well versed enough. I know it's not unique because that means there are collisions
524
00:34:37.190 -->
00:34:38.070necessarily,
525
00:34:38.070 -->
00:34:39.670and so the inverse is not unique.
526
00:34:41.190 -->
00:34:41.510Anyway,
527
00:34:42.045 -->
00:34:48.765how it works, we know about the so with the elliptic curve, we know about the finite field is modulo
528
00:34:49.724 -->
00:34:50.605prime,
529
00:34:51.005 -->
00:34:51.965correct? Yep.
530
00:34:52.365 -->
00:34:55.885And it has to be modulo prime and that's what ensures
531
00:34:55.885 -->
00:34:57.165this isomorphism.
532
00:34:57.750 -->
00:35:02.230This one to one, this onto, this ability to always go back and forth
533
00:35:02.470 -->
00:35:03.350between
534
00:35:05.030 -->
00:35:11.590spaces, the elliptic curve and the finite field. It's the fact that it's modulo prime is what allows it to do that, right?
535
00:35:12.665 -->
00:35:14.025In a hash function,
536
00:35:14.505 -->
00:35:17.705the modulus is two to the two fifty six. The modulus is,
537
00:35:18.984 -->
00:35:23.545at least for SHA-two 56, it's two to the two fifty six, which we know is not prime.
538
00:35:24.185 -->
00:35:26.744And so that's part of the design.
539
00:35:27.830 -->
00:35:28.710It's called
540
00:35:29.430 -->
00:35:29.910the
541
00:35:30.870 -->
00:35:35.510Galois field. Galois fields are where the modulus is two to the something,
542
00:35:35.990 -->
00:35:36.630to n.
543
00:35:37.350 -->
00:35:47.355So it's interesting that that's part of the design of how there's no inverse and part of how it's a semi group is the fact that the modulus is not prime, it's two to the two fifty six.
544
00:35:47.835 -->
00:35:48.475Whereas
545
00:35:48.635 -->
00:35:52.474in the finite field for the elliptic curve, it's two to the two fifty six minuteus
546
00:35:52.474 -->
00:35:55.675two to the thirty second minus nine seventy seven. It's
547
00:35:55.994 -->
00:35:56.555prime
548
00:35:56.795 -->
00:36:00.080it's the prime number Satoshi wanted to make that work.
549
00:36:01.840 -->
00:36:03.440To make elliptic curve math
550
00:36:04.160 -->
00:36:05.280work for us.
551
00:36:06.800 -->
00:36:09.040But in the hash function it's not the case.
552
00:36:10.160 -->
00:36:15.815Finite fields which we haven't really done a lot on when there's not a prime modulus, but it's
553
00:36:15.895 -->
00:36:16.935a little haywire.
554
00:36:17.415 -->
00:36:19.655It doesn't behave quite as nice.
555
00:36:21.095 -->
00:36:22.135 Exactly.
556
00:36:23.015 -->
00:36:23.335Exactly.
557
00:36:24.980 -->
00:36:26.900 Yeah. It's kinda And I
558
00:36:27.300 -->
00:36:33.140would in terms of one to one and onto, since we're on the topic, I was gonna offer I
559
00:36:33.460 -->
00:36:38.055was gonna offer the linear algebra. This is like, I'm gonna spoil
560
00:36:38.055 -->
00:36:41.255something for you guys because when this clicked for me, was
561
00:36:42.135 -->
00:36:45.015like seeing the sun and the stars align
562
00:36:45.735 -->
00:36:51.380and one of the most amazing experiences actually of my life. But it's unlikely that you guys are gonna
563
00:36:52.099 -->
00:36:55.460you're gonna go for that experience. So I'm gonna actually do this. So
564
00:36:55.859 -->
00:37:00.260linear algebra fans. Okay? You guys know you know what linear independence
565
00:37:00.500 -->
00:37:01.940means? I just take it.
566
00:37:04.345 -->
00:37:05.625 Linear independence
567
00:37:05.625 -->
00:37:06.665being the
568
00:37:09.944 -->
00:37:16.025 you're gonna have to you're gonna say So linear independence means remember it, but that they're like in a system
569
00:37:16.490 -->
00:37:17.850that there's no
570
00:37:22.010 -->
00:37:22.890there's no
571
00:37:23.130 -->
00:37:27.450there's no zero like the output is not zero unless all the inputs are zero.
572
00:37:29.085 -->
00:37:34.925 Yeah. I mean, I'm cheating. Just like if if no vector in the set can be written as a combination of the others, which is definitionally
573
00:37:34.925 -->
00:37:36.205like orthogonal.
574
00:37:36.525 -->
00:37:38.205 Yes. And that means that it
575
00:37:39.405 -->
00:37:40.445has a basis.
576
00:37:40.765 -->
00:37:43.645Right? So that's one to one We're gonna go to
577
00:37:44.550 -->
00:37:47.750 this is on the docket too. We just need to do like a whole little
578
00:37:49.270 -->
00:37:52.950mini series on linear algebra. I get Yeah, we definitely should. In there.
579
00:37:54.390 -->
00:38:00.615I think that'd be a fun one. That's also LLM, Jason. So like that I should say prior in iteration
580
00:38:00.615 -->
00:38:01.895 of this podcast,
581
00:38:02.295 -->
00:38:05.175Motivate the Math with Gary, shout out Gary Krausz.
582
00:38:05.975 -->
00:38:13.575The I saw Gary for like ten minutes at the BPI Summit. Nice, nice. Gotta get us all on and do a full do
583
00:38:14.000 -->
00:38:15.280Anyway, there
584
00:38:15.520 -->
00:38:17.520was an episode I think called where
585
00:38:17.520 -->
00:38:23.520we talked about basis and standard basis because I was basically saying that Bitcoin is a standard basis for money.
586
00:38:25.119 -->
00:38:26.960And we never had a standard basis.
587
00:38:28.285 -->
00:38:30.925The standard basis, think about in
588
00:38:30.925 -->
00:38:33.325the Cartesian x y plane, right?
589
00:38:33.725 -->
00:38:35.565You have x axis,
590
00:38:35.885 -->
00:38:38.685I. E. Zero, one or zero x,
591
00:38:39.165 -->
00:38:39.805but in
592
00:38:40.285 -->
00:38:44.200an elementary basis, zero, one and the point zero, one,
593
00:38:45.160 -->
00:38:53.560and then in the y axis, the point one, zero, those form a basis, a standard basis. Like an elementary basis, right? And
594
00:38:53.880 -->
00:38:59.685everything inside that plane is a linear combination of those two things, right? But the only way to
595
00:39:01.444 -->
00:39:04.244get the answer of the linear combination to be zero
596
00:39:04.325 -->
00:39:06.325is if both x and y are zero.
597
00:39:06.644 -->
00:39:07.605And
598
00:39:07.605 -->
00:39:09.684that is the essence of one to one,
599
00:39:10.580 -->
00:39:12.820right? So like if f of x
600
00:39:13.700 -->
00:39:14.500equals
601
00:39:14.500 -->
00:39:19.620f of y equals if f of x equals f of y, then x has to equal y.
602
00:39:20.020 -->
00:39:21.380That's
603
00:39:21.060 -->
00:39:21.860means, what one to
604
00:39:22.745 -->
00:39:23.705right? So in
605
00:39:24.345 -->
00:39:28.425linear algebra, this idea of linear independence gives you one to one.
606
00:39:29.065 -->
00:39:30.505And then there's
607
00:39:30.505 -->
00:39:33.145another concept in linear algebra called spanning the set.
608
00:39:35.150 -->
00:39:38.590These are the most these are, like, the most fundamental
609
00:39:38.590 -->
00:39:42.110concepts of now if you took linear algebra in college,
610
00:39:43.950 -->
00:39:45.470it was probably misnamed.
611
00:39:45.790 -->
00:39:47.950You probably took a course called matrices,
612
00:39:48.875 -->
00:39:53.915where you learnt the arithmetic of linear algebra, right? Where you learnt how to reduce a matrix,
613
00:39:54.395 -->
00:39:57.035you learnt how to calculate an eigenvalue,
614
00:39:57.435 -->
00:40:02.234you see what I'm saying? Whereas what I'm talking about, linear algebra is the abstract,
615
00:40:03.030 -->
00:40:05.830it's more of the abstract essence of these
616
00:40:05.830 -->
00:40:09.750ideas of linear independence and spanning the set are abstract concepts.
617
00:40:10.790 -->
00:40:13.830So spanning the set is what we said before, meaning like
618
00:40:16.645 -->
00:40:17.605cover every
619
00:40:18.725 -->
00:40:19.445input,
620
00:40:19.685 -->
00:40:21.925your function covers every output
621
00:40:22.325 -->
00:40:25.045that's possibly in the set. So in other words,
622
00:40:25.445 -->
00:40:35.250if you have y equals x squared and your output, your range space is all the real numbers, then it doesn't span the set because x squared is only going give you positive numbers.
623
00:40:36.130 -->
00:40:40.130Zero. You're never going get negative numbers out of that set, so it doesn't span the set.
624
00:40:41.055 -->
00:40:41.775If your
625
00:40:42.175 -->
00:40:44.175output is all the positive numbers
626
00:40:45.214 -->
00:40:47.775and zero, then it does span the set.
627
00:40:48.175 -->
00:40:49.855That's what onto means.
628
00:40:50.175 -->
00:40:51.855So onto just means that
629
00:40:52.335 -->
00:40:54.494my inputs cover the entire set.
630
00:40:56.819 -->
00:40:58.980One to one means that
631
00:40:59.220 -->
00:41:00.020my
632
00:41:00.339 -->
00:41:02.900inputs and outputs are linearly independent.
633
00:41:03.140 -->
00:41:04.900If those two things are
634
00:41:05.059 -->
00:41:06.420both there at the same time,
635
00:41:11.515 -->
00:41:13.275and my function preserves
636
00:41:13.595 -->
00:41:15.035the operation,
637
00:41:15.755 -->
00:41:16.954you have a
638
00:41:17.515 -->
00:41:19.755magical thing called an isomorphism
639
00:41:20.420 -->
00:41:28.980where two things don't look like they're the same at all, right? Like XOR and the finite field modulo two.
640
00:41:29.940 -->
00:41:31.140These are isomorphisms.
641
00:41:31.140 -->
00:41:33.140These are the same thing. They're just different labels.
642
00:41:34.805 -->
00:41:47.525Two things don't look alike. And why does that matter? Is because one thing might actually possess mathematical properties you can understand and work with and one might not. And so you can actually transport yourself
643
00:41:47.924 -->
00:41:49.285into dealing with something
644
00:41:49.900 -->
00:41:51.260in equivalence
645
00:41:51.420 -->
00:41:52.940that
646
00:41:53.420 -->
00:41:56.860actually gives you power over understanding it. I
647
00:41:57.020 -->
00:42:04.780look, I think looking at an elliptic curve under point addition is much more powerful to understanding cryptography than looking at that finite field.
648
00:42:05.545 -->
00:42:06.185Right.
649
00:42:06.745 -->
00:42:09.785Okay, right? It's like one of them actually opens your eyes.
650
00:42:10.105 -->
00:42:10.665Now,
651
00:42:11.625 -->
00:42:16.745goes to why we're here. Like why I'm here is because I'm kind of worried that somewhere down the line,
652
00:42:17.305 -->
00:42:18.105someone
653
00:42:18.345 -->
00:42:19.865representing LibSecP
654
00:42:19.865 -->
00:42:20.905or somebody
655
00:42:21.260 -->
00:42:23.980in the industry or somebody out of academia
656
00:42:23.980 -->
00:42:27.420is going to convince us that like the quantum problem,
657
00:42:30.300 -->
00:42:32.220can work in an equivalent space
658
00:42:32.220 -->
00:42:35.099and the question is going to be who are we to argue with them?
659
00:42:36.565 -->
00:42:38.005Who are we going to be to
660
00:42:38.405 -->
00:42:43.045be able to say yes or no, that that's true. We have to understand the basic
661
00:42:44.405 -->
00:42:50.565things. So what I'm obsessed with is like whether or not I would agree with somebody that two things are equivalent.
662
00:42:51.000 -->
00:42:53.880That's why I studied the fuck algebra.
663
00:42:54.840 -->
00:42:57.320Because I'm obsessed with being able to validate that.
664
00:42:57.960 -->
00:42:58.600 Absolutely.
665
00:42:59.640 -->
00:43:01.880No, I think It's that simple. When
666
00:43:02.600 -->
00:43:04.440that time comes, we will be
667
00:43:05.160 -->
00:43:05.800in a
668
00:43:06.305 -->
00:43:10.065full emergency podcast. It'll probably be like twice a week,
669
00:43:10.385 -->
00:43:23.410just like RHR during the pandemic. They did a twice a week podcast. We'll be doing twice a week podcasts looking at like every single thing and just taking everyone through the journey with us and trying to get to our with our own rational reasoning to the other side to help disseminate and distribute
670
00:43:23.730 -->
00:43:26.130the discourse around this stuff.
671
00:43:26.370 -->
00:43:28.930 So we're gonna have to do a little linear algebra
672
00:43:28.930 -->
00:43:30.370along the way. Yes.
673
00:43:30.850 -->
00:43:31.730 That's fine.
674
00:43:32.370 -->
00:43:36.050 Right? And then if you guys like AI and you want to code your own local
675
00:43:36.305 -->
00:43:39.505LLMs, this will be helpful to you. But it's
676
00:43:39.745 -->
00:43:44.145almost it's very hard to have done what we did skipping through linear algebra.
677
00:43:44.385 -->
00:43:47.745It's very hard to do what we did. So like we will have to cover that
678
00:43:48.225 -->
00:43:48.865Yes. Because just
679
00:43:50.799 -->
00:43:59.040the ethos from my perspective is this obsession of being able to say yay or nay, that two things are equivalent. We're going to be sold,
680
00:43:59.599 -->
00:44:03.119you know, it's not if it was whatever Project 11.
681
00:44:03.555 -->
00:44:07.795If it's not them, it's gonna be somebody it's gonna be BlackRock or and, you know,
682
00:44:09.555 -->
00:44:11.875you know, we're gonna be asking questions like,
683
00:44:12.035 -->
00:44:15.795did Blockstream guys get bought by these guys? We're gonna be asking those questions,
684
00:44:15.875 -->
00:44:17.635and and we're gonna have to have some way.
685
00:44:18.420 -->
00:44:21.940And like I said, the distance between us and that is quite far.
686
00:44:23.940 -->
00:44:24.820But Yeah.
687
00:44:25.299 -->
00:44:28.579We're gonna have do our That's
688
00:44:28.579 -->
00:44:34.875why we decided to do this today even having no great plan. It's like we just gotta keep grinding our grinding to this distance. So
689
00:44:37.115 -->
00:44:37.755so
690
00:44:37.915 -->
00:44:39.115linear algebra,
691
00:44:39.195 -->
00:44:40.395some Merkle tree,
692
00:44:42.235 -->
00:44:42.875and then
693
00:44:45.435 -->
00:44:50.369it's a question of, yeah, the hash functions are good because it just I
694
00:44:50.369 -->
00:44:53.330think for for the most part because it illustrates
695
00:44:54.369 -->
00:44:56.290the different it illustrates,
696
00:44:56.530 -->
00:44:58.369like, this isomorphism concept
697
00:44:58.530 -->
00:45:02.850with what we already with what we are with, like, our base case, which is the elliptic curve.
698
00:45:03.730 -->
00:45:04.849It contrasts it.
699
00:45:07.785 -->
00:45:10.905So it'll help build the muscle. It'll help build our muscle.
700
00:45:11.145 -->
00:45:13.385 Right? The categorization of it. Absolutely.
701
00:45:14.425 -->
00:45:18.425 Yeah. It's good to have like a non example. Like this is not an isomorphism.
702
00:45:18.880 -->
00:45:22.080Right? It's also super important to what we do.
703
00:45:22.960 -->
00:45:24.000Absolutely. And
704
00:45:24.240 -->
00:45:30.320people are gonna say, well we need to change this hash function. We're gonna need to, right? And I don't know, that's some people who need to know what that means.
705
00:45:31.535 -->
00:45:35.295We're gonna change the algo, we're gonna change the hash function, we're gonna change,
706
00:45:35.535 -->
00:45:38.175like that's the language it's gonna come in.
707
00:45:39.135 -->
00:45:40.895Hopefully we'll be here running
708
00:45:41.375 -->
00:45:42.575that, you know,
709
00:45:43.135 -->
00:45:45.615okay no, there's two primitives,
710
00:45:45.615 -->
00:45:46.895right? There's the signing
711
00:45:48.160 -->
00:45:49.600and then there's the hashing.
712
00:45:51.200 -->
00:45:52.160And they're different.
713
00:45:52.800 -->
00:45:57.760 They're very different. And that's why they're the two critical things. They they they meet
714
00:45:58.000 -->
00:45:59.920they have different objectives
715
00:45:59.920 -->
00:46:00.880within the systems.
716
00:46:01.925 -->
00:46:06.485 And maybe we'll be able to live with some of the vibeiness of hash functions because
717
00:46:06.725 -->
00:46:07.445like
718
00:46:08.005 -->
00:46:12.245in abstract algebra, we are okay with a lot of information being lost
719
00:46:12.565 -->
00:46:15.845as long as what is retained is the fact that
720
00:46:16.670 -->
00:46:17.710the operation
721
00:46:17.710 -->
00:46:18.670is preserved,
722
00:46:18.830 -->
00:46:20.190right? And the
723
00:46:21.550 -->
00:46:24.350one to oneness and the on tooneness, and this
724
00:46:25.070 -->
00:46:28.990is what we're pointing out. What's important to determine equivalence is
725
00:46:29.310 -->
00:46:30.350the fact that
726
00:46:31.464 -->
00:46:32.585it's a
727
00:46:33.065 -->
00:46:33.865homomorphism
728
00:46:33.865 -->
00:46:37.785meaning we preserve the operations and we preserve the group properties.
729
00:46:38.025 -->
00:46:39.545So like that, it's okay,
730
00:46:40.105 -->
00:46:44.905that's why it's abstract. It's also we use symbols and not numbers to fuck with the GOYS, okay.
731
00:46:47.200 -->
00:46:48.320 You know, it's
732
00:46:49.600 -->
00:46:53.840 abstract partially because we're not interested in every bit of information.
733
00:46:54.000 -->
00:47:00.320We're not interested in retain you know, what abstract algebra does is says we don't really care what number system you're on. We don't care
734
00:47:01.075 -->
00:47:04.355about all that one plus one equals two everywhere.
735
00:47:04.355 -->
00:47:07.075We care that in general, the system preserves
736
00:47:07.155 -->
00:47:10.115your algebraic operations. These properties. Yes,
737
00:47:10.115 -->
00:47:14.515preserves these properties. And this is like, I think computer scientists can understand this. Like how do you know,
738
00:47:16.190 -->
00:47:17.550you inherit properties?
739
00:47:17.550 -->
00:47:19.150How do you know they're preserved? We
740
00:47:20.910 -->
00:47:22.670don't care about the entirety.
741
00:47:23.870 -->
00:47:26.590We care about the mapping, we care about the
742
00:47:28.110 -->
00:47:29.790one to oneness, the ontuness,
743
00:47:30.455 -->
00:47:31.095and
744
00:47:31.495 -->
00:47:33.895whether or not we can really say there's
745
00:47:33.895 -->
00:47:34.855equivalence,
746
00:47:36.375 -->
00:47:38.215and if not, why? So
747
00:47:39.335 -->
00:47:45.255that's all to say is like maybe we shouldn't be too afraid of going through hash functions even if it's
748
00:47:45.255 -->
00:47:48.430a little black boxed. Because if we can at a high level understand
749
00:47:49.950 -->
00:47:52.750how it fits into the abstract algebra
750
00:47:53.310 -->
00:47:55.870equation that we're sort of putting together,
751
00:47:57.470 -->
00:47:58.110 it's good enough.
752
00:48:00.545 -->
00:48:01.265It's all
753
00:48:04.865 -->
00:48:14.385these higher level principles are just the things that we need to have comfort and understanding to have integrity in the system. And once you can if you can get those critical pillars understood,
754
00:48:16.170 -->
00:48:22.330even if you don't want to go into the lower level details, you at least can understand the reasoning behind that. That's a pretty good safety net to lean on.
755
00:48:22.970 -->
00:48:24.570 And I would just make one other
756
00:48:25.050 -->
00:48:30.410argument is that, so Rob, you're the guy going you happen to be the guy going through libsecpig
757
00:48:30.410 -->
00:48:30.970with
758
00:48:31.985 -->
00:48:34.225spending a lot of money One of on many,
759
00:48:34.465 -->
00:48:38.865one of a couple. Yeah. Understand one of many, but it would be but like arguably,
760
00:48:39.905 -->
00:48:40.385you
761
00:48:41.025 -->
00:48:43.185don't
762
00:48:43.185 -->
00:48:50.630have the full picture of what they ask for still. Oh, trillions of percent. Because we haven't been through, we just haven't really been through all of it.
763
00:48:51.350 -->
00:48:52.070Be able
764
00:48:52.630 -->
00:48:55.350to really, really ask these pointed
765
00:48:55.670 -->
00:48:56.470questions.
766
00:48:57.030 -->
00:48:57.910Absolutely.
767
00:48:57.990 -->
00:48:59.270That comes from this
768
00:48:59.830 -->
00:49:00.870discussion, right?
769
00:49:01.404 -->
00:49:02.125Yeah.
770
00:49:03.644 -->
00:49:04.204Agree.
771
00:49:04.845 -->
00:49:06.525 We have some great mathematicians Yeah, doing
772
00:49:07.805 -->
00:49:08.525for sure.
773
00:49:09.164 -->
00:49:24.369And there'll be a point probably in the next couple of months where it'll be cool to talk about the little things I did find. Right? Like, and mind you, like, I wouldn't be doing a Bitcoin Magic Internet Math podcast right now if it was all broken. You know what I mean? Like, it's all like, we're good.
774
00:49:25.650 -->
00:49:29.650 Oh, right. You forgot to mention that. You forgot to mention that it was all good.
775
00:49:30.585 -->
00:49:32.185 Yeah, it was good. That
776
00:49:34.105 -->
00:49:39.545was a very specific strategic thing I did when people are like, it's all Bitcoin and Fugazi.
777
00:49:39.785 -->
00:49:42.265I started just lipstick P shitposting.
778
00:49:43.050 -->
00:49:47.690You know, I just think about, like, how how fucking great it was. Like, literally Atlas holding up the world.
779
00:49:49.530 -->
00:49:50.090And,
780
00:49:50.330 -->
00:49:53.690it's good. Thank god. It's all good. I know. Oh my god.
781
00:49:55.210 -->
00:49:55.850 Yeah.
782
00:49:56.250 -->
00:49:56.810Alright.
783
00:49:58.355 -->
00:50:12.355 Do you wanna call up there? We got you got you got anything else? I I got nothing else, Burden. Like, I think it's good. We got a you know, we got we got we got our reps in today. We we we didn't we didn't skip leg day. We came in and we did we didn't skip set day. We came in and we
784
00:50:12.900 -->
00:50:16.980we did our math. I think this is a good spot. We'll we'll see you again in two weeks.
785
00:50:17.779 -->
00:50:22.740 Yes. Alright. Excellent. Magic Internet Math in the books. See you guys. Peace.