CD33: build your own hardware wallet for $50 with @seedsigner and @keithmukai
EPISODE: 0.3.3
BLOCK: 694094
PRICE: 2610 sats per dollar
TOPICS: build your own hardware wallet for $50
@seedsigner: https://twitter.com/seedsigner
@keithmukai: https://twitter.com/keithmukai
streamed live every tuesday:
https://citadeldispatch.com
twitch: https://twitch.tv/citadeldispatch
bitcointv: https://bitcointv.com/video-channels/citadeldispatch/videos
podcast: https://anchor.fm/citadeldispatch
telegram: https://t.me/citadeldispatch
support the show: https://tippin.me/@odell
stream sats to the show: https://www.fountain.fm/
join the chat: http://citadel.chat/
00:10 - What does the SEC have to do with crypto and why is the chair of the SEC talking about crypto?
00:33 - The lack of investor protection in crypto trading platforms and lending platforms
02:01 - The importance of promoting investor protection in the crypto industry
49:43 - Importance of keeping devices physically secure
50:21 - Mitigating concerns about tampered memory cards
51:47 - Standardization and bug detection in SeedSigner
01:37:27 - Bitcoin and its early adoption
01:38:21 - Mining cryptocurrencies in a computer lab
01:39:58 - Licensing and open-source projects
NOTE
Transcription provided by Podhome.fm
Created: 3/17/2024 8:33:41 PM
Duration: 7652.232
Channels: 1
1
00:00:00.160 --> 00:00:03.220
2
00:00:10.725 --> 00:00:16.825
What does the SEC have to do with crypto and why is the chair of the SEC talking about crypto?
3
00:00:17.205 --> 00:00:19.064
Now, technologies come along
4
00:00:19.510 --> 00:00:24.570
decade after decade, but those that have a chance to thrive, grow, come within
5
00:00:25.030 --> 00:00:41.110
public policy framework. To be clear, I think that the SEC should be technology neutral. But one thing we're not neutral on is investor protection. Our agency, the SEC, has had rules for decades to protect people when companies wanna raise money from them
6
00:00:41.489 --> 00:00:42.950
or when we, as investors,
7
00:00:44.185 --> 00:00:45.245
buy and sell
8
00:00:45.785 --> 00:00:46.285
securities
9
00:00:47.065 --> 00:01:09.945
on an exchange like the New York Stock Exchange. But you see crypto trading platforms, crypto lending platforms don't have the same level of investor protection that you've come to expect buying and selling stocks on a stock exchange or investing in a mutual bond or a 401, Ken. In the years since Bitcoin was started, literally thousands of other tokens have been launched.
10
00:01:10.270 --> 00:01:12.369
Many of which traded on platforms
11
00:01:12.990 --> 00:01:16.930
may well be securities under our laws. That means if the platforms
12
00:01:17.545 --> 00:01:21.245
and certain of the tokens don't register with the SEC, they're noncompliant
13
00:01:22.105 --> 00:01:24.205
with the important federal protections
14
00:01:24.585 --> 00:01:30.729
in our laws. So I've asked staff, the SEC to use all of our authorities anywhere we can
15
00:01:31.270 --> 00:01:32.010
to uncover
16
00:01:32.470 --> 00:01:33.290
any wrongdoing.
17
00:01:34.045 --> 00:01:35.345
Authorities aren't enough.
18
00:01:35.725 --> 00:01:37.905
I've also recommended to Congress
19
00:01:38.604 --> 00:01:39.744
for them to consider
20
00:01:40.765 --> 00:01:42.064
filling those gaps
21
00:01:43.040 --> 00:01:49.940
with a goal of investor protection. To those currently or considering investing in crypto, please remember
22
00:01:50.480 --> 00:01:52.865
not only are they a highly speculative
23
00:01:53.165 --> 00:01:53.985
asset class,
24
00:01:54.445 --> 00:01:55.425
but there are also
25
00:01:56.685 --> 00:01:57.905
significant gaps
26
00:01:58.365 --> 00:01:59.825
in the investor protection
27
00:02:00.510 --> 00:02:11.955
afforded to you. I think that moving forward, promoting investor protection is not only good for you and for anyone who would consider investing in these assets. I think that it's the only
28
00:02:12.415 --> 00:02:12.915
real
29
00:02:13.215 --> 00:02:16.355
viable path forward for this nascent technology.
30
00:02:16.655 --> 00:02:18.114
See, at the heart of finance
31
00:02:18.575 --> 00:02:19.555
is trust
32
00:02:20.480 --> 00:02:21.300
and trust
33
00:02:21.760 --> 00:02:26.980
rests on investor protection. And so that's what the SEC has to do with crypto
34
00:02:27.520 --> 00:02:28.580
investor protection.
35
00:03:09.925 --> 00:03:15.145
36
00:03:15.890 --> 00:03:20.950
The interactive live show about Bitcoin distributed systems privacy and open source software.
37
00:03:21.410 --> 00:03:24.390
To the freaks joining us through our audio feeds,
38
00:03:25.465 --> 00:03:29.724
that was the SCC chair, Gary Gensler, quite cringe video,
39
00:03:30.105 --> 00:03:30.905
announcing his,
40
00:03:32.030 --> 00:03:33.650
it seems like a war on crypto.
41
00:03:35.629 --> 00:03:37.890
It seems like his focus isn't really on Bitcoin,
42
00:03:38.750 --> 00:03:39.250
so
43
00:03:39.715 --> 00:03:40.995
take it as you will. But,
44
00:03:41.635 --> 00:03:47.655
either way you look at it, he is he does seem to be going after at least the low hanging fruit Chick Coins
45
00:03:47.960 --> 00:03:48.860
and the casinos
46
00:03:49.160 --> 00:03:50.620
that allow them to trade.
47
00:03:52.280 --> 00:03:57.580
I wanna do a quick shout out to our ride or dive freaks joining us in the live chat. I know this is a later
48
00:03:57.945 --> 00:04:00.525
dispatch than usual at 8 PM EST,
49
00:04:01.705 --> 00:04:02.765
midnight UTC.
50
00:04:03.625 --> 00:04:05.225
We're competing with prime time,
51
00:04:05.785 --> 00:04:06.605
East Coast
52
00:04:07.200 --> 00:04:08.340
Television, including,
53
00:04:10.160 --> 00:04:13.300
the the the Olympics that are going on right now.
54
00:04:13.760 --> 00:04:16.740
So I hope you find this conversation more interesting than
55
00:04:17.185 --> 00:04:19.285
those corporate filled NBC streams.
56
00:04:20.785 --> 00:04:26.805
I also wanna do a oh, of course, to join the live chat. I mean, my favorite way of doing it is through Twitch.
57
00:04:27.330 --> 00:04:30.070
We have people joining us on Twitch, Twitter, and YouTube.
58
00:04:31.090 --> 00:04:34.450
I think I might start phasing out YouTube. They did cut my stream,
59
00:04:35.165 --> 00:04:37.025
before the end last week,
60
00:04:37.565 --> 00:04:42.465
but we do have a lot of freaks that like using the YouTube stream, so I'm kinda battling with it. But,
61
00:04:42.820 --> 00:04:44.520
eventually, they'll probably ban us,
62
00:04:44.820 --> 00:04:47.480
and then you'll have no choice but to use Twitch or Twitter.
63
00:04:48.100 --> 00:04:52.485
As always, the videos are posted to Bitcoin TV after we air.
64
00:04:53.264 --> 00:04:55.365
So all the archives are there, bitcointv.com,
65
00:04:57.185 --> 00:04:59.044
and they are posted to our podcast
66
00:04:59.750 --> 00:05:03.610
feed. If you just search it, it'll dispatch in your podcast app of choice.
67
00:05:04.310 --> 00:05:11.165
Huge shout out to all the freaks who support the show and keep it ad free. I will never add ads to this show. We will never have sponsors.
68
00:05:12.185 --> 00:05:14.125
I like how the incentives align,
69
00:05:14.505 --> 00:05:15.405
with the audience.
70
00:05:16.490 --> 00:05:19.390
I'm here for you. I feel like you guys are here for me,
71
00:05:19.930 --> 00:05:21.310
and that's what it's about.
72
00:05:22.170 --> 00:05:28.655
My favorite way of you freaking supporting the show is using podcasting 2 point o platforms. If you go to new podcast apps.com,
73
00:05:29.515 --> 00:05:37.190
you can download a podcast app that supports streaming sats, search Civil dispatch, load it up with sats, and then as you listen to the feed,
74
00:05:37.570 --> 00:05:40.789
it'll stream sats directly to my lightning node.
75
00:05:41.695 --> 00:05:44.115
You can also contribute to the show,
76
00:05:44.575 --> 00:05:45.395
at sidildispatch.com
77
00:05:46.175 --> 00:05:48.995
via PayNIM. My PayNIM is Odell.
78
00:05:49.509 --> 00:05:50.729
Very easy to remember.
79
00:05:51.430 --> 00:05:56.090
There's also, Tipin. Me there if you want to contribute via lightning in that fashion.
80
00:05:56.525 --> 00:06:02.465
So thank you, Phryx, for supporting the show. That's what it's about. You also can support the show by getting merch.
81
00:06:03.405 --> 00:06:04.785
We have hats, magnets,
82
00:06:05.610 --> 00:06:07.470
and flasks available at citildispatch.com/stack.
83
00:06:10.250 --> 00:06:14.430
Also, big shout out to BTC pins, who's a ride or die freak and
84
00:06:15.095 --> 00:06:17.115
constantly joins us for these live shows.
85
00:06:17.735 --> 00:06:18.795
If you go to btcpins.com,
86
00:06:20.215 --> 00:06:21.195
he is currently
87
00:06:23.240 --> 00:06:25.340
selling free open source software
88
00:06:25.640 --> 00:06:26.140
pins,
89
00:06:26.520 --> 00:06:27.820
a collection of pins,
90
00:06:29.160 --> 00:06:30.780
that include pins from BTCPay,
91
00:06:31.320 --> 00:06:33.915
Zeus, Bisc, and Raspberry Blitz,
92
00:06:34.695 --> 00:06:38.155
and very honored, it also includes a pin for Citadel Dispatch.
93
00:06:38.775 --> 00:06:40.155
We do try and
94
00:06:40.940 --> 00:06:47.280
replicate the FOSS model here with the show, and it's quite an honor to be a part of that PIN set. All proceeds go to OpenSats,
95
00:06:48.165 --> 00:06:48.745
to support,
96
00:06:49.125 --> 00:06:51.945
open source Bitcoin development. So it's a really great initiative.
97
00:06:53.285 --> 00:06:56.025
I'm very excited about it. I will be auctioning off,
98
00:06:56.670 --> 00:06:57.650
a pin set
99
00:06:58.350 --> 00:06:59.410
for for devs,
100
00:07:00.350 --> 00:07:02.130
at the Bitblock Boom Conference
101
00:07:02.590 --> 00:07:03.330
in Dallas
102
00:07:04.525 --> 00:07:05.265
later this
103
00:07:05.805 --> 00:07:07.745
month. So all that, very exciting.
104
00:07:09.325 --> 00:07:16.390
This is a very looking forward to this conversation. It's a conversation I've wanted to have for a while now. It's a project that's been on my radar.
105
00:07:18.450 --> 00:07:19.350
This is dispatch
106
00:07:19.810 --> 00:07:20.310
33,
107
00:07:21.085 --> 00:07:27.425
and we will be focused on building your own Bitcoin hardware wallet with the seed signer team, 2 of the guys from the seed signer team.
108
00:07:27.884 --> 00:07:29.664
We have seed signer himself,
109
00:07:30.419 --> 00:07:33.400
which is both his name and the name of the project.
110
00:07:33.860 --> 00:07:36.199
He's lead maintainer. How's it going, SeedSigner?
111
00:07:36.659 --> 00:07:43.444
It's going great. How are you? Welcome to the show. It's a pleasure to have you. I'm super excited to be here. And we have Keith,
112
00:07:43.745 --> 00:07:49.900
who is a contributor, a recent recently new contributor to the Seed Signer project. How's it going, Keith?
113
00:07:50.280 --> 00:07:51.820
114
00:07:52.200 --> 00:07:53.260
115
00:07:54.414 --> 00:07:56.034
Happy Bitcoin Tuesday, guys.
116
00:07:57.215 --> 00:07:57.715
117
00:07:59.615 --> 00:08:05.620
118
00:08:09.440 --> 00:08:12.020
I I have a picture of what
119
00:08:12.715 --> 00:08:20.975
the finished product looks like for the people on the video stream. It looks something like this if you if you opt for a 3 d printed case to put around the enclosure.
120
00:08:23.130 --> 00:08:27.389
121
00:08:28.169 --> 00:08:38.205
122
00:08:38.720 --> 00:08:39.860
123
00:08:40.240 --> 00:08:43.760
a a new enclosure that I don't think it's in the repo yet, but it's gonna be in its,
124
00:08:44.640 --> 00:08:48.545
the the enclosure you just showed was a little bit more complex with multiple parts,
125
00:08:49.165 --> 00:08:53.745
and there's a a simplified one that's actually just one printed part, leaves the top
126
00:08:54.125 --> 00:08:55.010
kind of the top
127
00:08:55.410 --> 00:08:58.790
portion of the screen exposed and the button exposed, but it's
128
00:08:59.170 --> 00:09:01.990
it's kinda optimized for fast and simple,
129
00:09:02.530 --> 00:09:04.950
deployment if you just wanna put something together quickly.
130
00:09:05.714 --> 00:09:06.855
131
00:09:08.115 --> 00:09:10.214
So, I mean, let's just dive right in here.
132
00:09:10.755 --> 00:09:15.720
What what was your inspiration for the project? What was what's the project's goals?
133
00:09:16.900 --> 00:09:18.760
You know, why are we here to begin with?
134
00:09:19.780 --> 00:09:22.200
135
00:09:23.395 --> 00:09:26.935
are to reduce the cost and complexity of multisig.
136
00:09:29.475 --> 00:09:31.255
And the origins of the project
137
00:09:32.010 --> 00:09:32.670
come from,
138
00:09:33.770 --> 00:09:41.415
kinda like chat conversations I have with, a security research researcher named Michael Flaxman. I think you may have had him on the show before. And,
139
00:09:43.634 --> 00:09:46.774
interacting with some of the guys with Spectre Desktop,
140
00:09:47.154 --> 00:09:51.620
and they have a a similar kind of project called Spectre DIY, which is,
141
00:09:52.580 --> 00:09:54.120
to back out for a second.
142
00:09:54.740 --> 00:09:56.200
There's still kinda some
143
00:09:56.750 --> 00:09:57.250
the
144
00:09:57.955 --> 00:10:01.175
nomenclature is still being developed for this kind of signing model
145
00:10:01.555 --> 00:10:02.055
where,
146
00:10:02.755 --> 00:10:04.135
kind of the the wallet
147
00:10:04.515 --> 00:10:09.510
and the signing mechanism are separated. So with, like, a traditional wallet, like, if you think of,
148
00:10:10.210 --> 00:10:11.110
let's just say,
149
00:10:11.570 --> 00:10:12.790
Trezor or,
150
00:10:13.970 --> 00:10:14.630
a ledger.
151
00:10:15.265 --> 00:10:18.245
So your private key is being stored on the device
152
00:10:19.185 --> 00:10:19.685
and
153
00:10:20.305 --> 00:10:22.965
kind of the wallet functionality is such that you
154
00:10:23.410 --> 00:10:28.470
dial in through the device or the device interacts with a portal that's maintained kinda by the service provider.
155
00:10:30.370 --> 00:10:31.590
And we are
156
00:10:32.115 --> 00:10:37.975
kind of we we break that kinda traditional wallet into multiple pieces to where we you have 3 parts.
157
00:10:38.355 --> 00:10:41.930
1 is the wallet coordinator that is like Specter Desktop
158
00:10:42.470 --> 00:10:46.410
or Sparrow or BlueWallet Vaults, and that manages all the interaction
159
00:10:47.110 --> 00:10:48.010
with the protocol
160
00:10:48.310 --> 00:10:49.690
and publishes transactions,
161
00:10:50.545 --> 00:10:55.925
scans the blockchain for, you know, incoming transactions, maintain your your balance, that kind of stuff.
162
00:10:56.305 --> 00:10:57.765
And then there's 2 other components,
163
00:10:58.300 --> 00:10:59.180
which you might call,
164
00:10:59.660 --> 00:11:02.160
the signing device and then key storage.
165
00:11:02.700 --> 00:11:04.080
Key storage is just
166
00:11:04.620 --> 00:11:11.785
whatever you choose it to be. It could be as simple as a piece of paper. So, obviously, most people, you know, prefer to put their key in the in the metal
167
00:11:12.165 --> 00:11:12.725
so that,
168
00:11:13.445 --> 00:11:15.625
if something happens to their paper, they have a
169
00:11:16.199 --> 00:11:18.459
more durable backup. But then the signing device
170
00:11:18.839 --> 00:11:21.500
is kinda like the bridge between your key storage
171
00:11:21.879 --> 00:11:22.860
and the the
172
00:11:23.875 --> 00:11:26.135
wallet coordinator or the multisig coordinator.
173
00:11:26.515 --> 00:11:30.775
And what the sign device does is you input your
174
00:11:31.550 --> 00:11:35.090
private key, which is represented by your seed phrase, into the sign device.
175
00:11:35.790 --> 00:11:41.825
And the sign device basically proves to the wallet software that it knows the key without ever actually,
176
00:11:43.645 --> 00:11:47.105
without ever actually transferring the key to the wallet software. So the
177
00:11:48.120 --> 00:11:50.700
the model is it's an air gapped,
178
00:11:51.320 --> 00:11:51.820
transaction
179
00:11:52.440 --> 00:11:53.980
that's moved between
180
00:11:54.519 --> 00:11:58.365
the multisync coordinator and the signed device. I don't wanna get too much in a nuance here,
181
00:11:58.745 --> 00:12:05.380
but some devices do this with like, Coldcard does it with a micro SD card where you have something called a partially signed Bitcoin transaction
182
00:12:06.080 --> 00:12:07.940
that is moved back and forth between
183
00:12:08.240 --> 00:12:08.900
the coordinator
184
00:12:09.280 --> 00:12:10.340
and the signed device,
185
00:12:11.185 --> 00:12:17.445
with a micro SD card, but we use, like, it's called optical air gap signing. So it's just QR codes
186
00:12:17.959 --> 00:12:30.095
187
00:12:31.355 --> 00:12:37.190
188
00:12:37.810 --> 00:12:41.589
we have also another contributor working on a custom operating system
189
00:12:42.209 --> 00:12:45.785
that would give us a few additional features, one of which is
190
00:12:46.725 --> 00:12:47.225
additional,
191
00:12:49.045 --> 00:12:49.545
additional
192
00:12:50.810 --> 00:13:04.875
assurance for the users so that they could boot seed signer up. All of the operating system and everything you need gets loaded into memory, and then you can actually remove the micro SD card before you input your private key. So that's an additional kind of reassurance
193
00:13:05.470 --> 00:13:14.415
194
00:13:15.214 --> 00:13:24.810
195
00:13:25.270 --> 00:13:32.730
if some people prefer to do, moving the PSVTs back and forth with the micro SD card, that would allow us to add that feature to which,
196
00:13:34.135 --> 00:13:35.115
some people prefer.
197
00:13:35.495 --> 00:13:37.115
198
00:13:37.415 --> 00:13:38.635
I'm gonna call you
199
00:13:39.655 --> 00:13:41.755
seed for the rest of the show.
200
00:13:43.140 --> 00:13:45.480
So seed, I mean, don't feel
201
00:13:46.660 --> 00:13:53.654
the this the dispatch is all about going deep. So Okay. We can we I expect us to go deep here. That's what it's about.
202
00:13:54.675 --> 00:13:56.535
The freaks have already listened,
203
00:13:57.235 --> 00:14:02.230
to Craig Raw from Sparrow multiple times on the show, so they're familiar with Sparrow.
204
00:14:03.010 --> 00:14:04.710
They're very familiar with Spectre.
205
00:14:05.730 --> 00:14:08.535
They're familiar with the ideas around multisig. So
206
00:14:08.855 --> 00:14:13.915
the so the idea here is is is you have a multisig wallet. Right? And you have the coordinator,
207
00:14:15.415 --> 00:14:28.654
software on a computer that is connected to the Internet or in the case, blue wallet of the phone. Right. And then you have these multiple signing devices, which historically we've called hardware wallets. I understand in the industry, we're trying to move to signing devices,
208
00:14:30.395 --> 00:14:32.015
but, you know, names do stick.
209
00:14:32.750 --> 00:14:42.035
The so when you're doing that, you you're usually the 2 main methods is you have a 3 of 5 or a 2 of 3. And, basically, what you're deciding is,
210
00:14:42.815 --> 00:14:44.835
what devices are gonna make up,
211
00:14:45.935 --> 00:14:52.000
that that threshold of keys for you. And, you know, some people use cold cards, some people use Cobo Vault,
212
00:14:52.460 --> 00:14:53.360
some people use,
213
00:14:54.700 --> 00:14:58.385
Trezors or Ledgers. I don't think Ledger works really well with multi sig.
214
00:14:59.285 --> 00:14:59.565
But,
215
00:15:00.765 --> 00:15:05.345
they they use all these different devices, and they basically and then they also have a seed backup.
216
00:15:05.885 --> 00:15:06.945
217
00:15:08.770 --> 00:15:09.590
218
00:15:09.970 --> 00:15:14.070
fits in as one of those signing devices in this multisig threshold.
219
00:15:14.725 --> 00:15:16.565
220
00:15:17.045 --> 00:15:17.545
Obviously,
221
00:15:18.085 --> 00:15:18.985
you know, the
222
00:15:19.445 --> 00:15:20.585
the belt and suspenders
223
00:15:21.125 --> 00:15:24.660
best security model is to mix vendors and mix hardware platforms.
224
00:15:25.200 --> 00:15:30.580
So that if there's a vulnerability you're not aware of in one of those platforms, only one of your keys is compromised.
225
00:15:31.975 --> 00:15:34.795
But, you know, with security, there's always trade offs.
226
00:15:35.255 --> 00:15:40.075
So, a lot of people find their way to our project because they're curious to experiment with multisig
227
00:15:40.600 --> 00:15:42.300
and just kinda try it out and get started.
228
00:15:42.680 --> 00:15:43.900
But they don't wanna spend,
229
00:15:44.280 --> 00:15:50.380
you know, 2, 3, $400 on wallets. So the cool thing about SeedSigner is it can operate as
230
00:15:50.825 --> 00:15:58.765
any or every cosigner in in multi sig because it's it's, what's called a stateless device. So when you input your seed phrase,
231
00:15:59.970 --> 00:16:00.950
it only stays
232
00:16:01.410 --> 00:16:08.389
active in the device while the device is powered. It's just basically a variable in memory in the program. It's not written to the micro SD card,
233
00:16:09.115 --> 00:16:13.935
such that when you power the device off, your seed is not retained on there so you can,
234
00:16:14.395 --> 00:16:21.310
235
00:16:22.970 --> 00:16:25.790
the the the the seed is is
236
00:16:26.385 --> 00:16:27.525
is your
237
00:16:28.305 --> 00:16:37.389
interact was is the main way a person interacts with the private keys. Yeah. Exactly. You're entering the seed every time you use the device, and that that means
238
00:16:37.769 --> 00:16:38.269
that
239
00:16:38.970 --> 00:16:44.605
a lot of these more expensive devices incorporate secure elements. They're trying to secure the secret on the device.
240
00:16:45.705 --> 00:16:48.765
But because you're using off the shelf hardware and you're not,
241
00:16:49.305 --> 00:17:03.995
you you don't have a secure element in the device, you're not trying to necessarily protect the secret on the device because when it powers off, it should theoretically wipe any of the secrets from it. I wouldn't say it it wiped. The secrets are just in memory on the device, and when you unplug it,
242
00:17:04.935 --> 00:17:09.710
243
00:17:10.429 --> 00:17:13.490
so when you set up a cold card or or
244
00:17:13.870 --> 00:17:26.330
tracer or anything like that, the first thing that they have you do is write down, you know, your 24 word backup Right. Or 12 words or whatever you're doing. So you already have with with traditional hardware wallets, you already have this
245
00:17:26.710 --> 00:17:27.850
need to safeguard
246
00:17:28.150 --> 00:17:29.210
your seed phrase.
247
00:17:29.670 --> 00:17:30.330
And then,
248
00:17:30.710 --> 00:17:35.985
like I said, with security, it's trade offs. So they they're storing your seed on the device as well
249
00:17:36.445 --> 00:17:40.865
behind, like you said, a secure element. And then you have usually kinda like a shortcut,
250
00:17:41.325 --> 00:17:46.130
like a pin phrase or maybe a fingerprint or something like that that allows you
251
00:17:46.510 --> 00:17:49.810
to quickly and more conveniently have access to your private key.
252
00:17:50.670 --> 00:17:51.170
So
253
00:17:51.665 --> 00:17:54.485
our thing is more aimed at people who are,
254
00:17:55.105 --> 00:17:55.605
saving
255
00:17:56.145 --> 00:18:07.400
or huddling Bitcoin for the long term, who are gonna do less frequent spends. But, anyhow, I I just wanna point out, you're always gonna have to safeguard that private key. So if you're more of a saver and a less frequent spender,
256
00:18:08.795 --> 00:18:09.615
you know, it's
257
00:18:11.035 --> 00:18:24.950
to spend with our device, you have to access your private key, but it's the only thing after protection. And we can we can dive into the specifics of that, a little bit further into the show. I feel like we kinda got ahead of ourselves. We did. So before so,
258
00:18:27.085 --> 00:18:31.825
259
00:18:32.799 --> 00:18:34.259
Use off the shelf parts,
260
00:18:34.880 --> 00:18:39.779
to make a signing device. I think you were I may be involved with,
261
00:18:41.335 --> 00:18:58.020
like, creating a case for it or creating builds a build for it, like, to to sell it. And Right. Correct me if I'm wrong, kind of the inspiration for this was was that that build altogether comes in a little bit under 200, and this is significantly cheaper. Is that was that part of the inspiration of the project?
262
00:18:58.345 --> 00:18:59.885
263
00:19:00.265 --> 00:19:04.825
I can't upsize enough how much it was Spectre that kinda led me to it. I,
264
00:19:05.880 --> 00:19:06.380
before,
265
00:19:06.919 --> 00:19:09.100
you you know, I was always looking to get into multisig,
266
00:19:09.880 --> 00:19:15.865
and I come to Bitcoin kind of from a unique background that we can get more into. But, when I was looking for
267
00:19:16.565 --> 00:19:17.065
a
268
00:19:17.764 --> 00:19:21.945
long term kind of security setup for storing Bitcoin, I wanted to get into multisig,
269
00:19:22.610 --> 00:19:29.750
and it it was taking a long time for some of the different coordinators to get online. And I happen to listen to this podcast that Flaxman did with Stefan Lavera
270
00:19:30.275 --> 00:19:38.375
and heard kind of some of his tips, and that was the first place I'd heard of Spectre. I hadn't heard of Spectre before that. So I download Spectre. I start looking at software.
271
00:19:38.700 --> 00:19:46.159
I find in the repo, they have this DIY or do it yourself wallet. I have a little bit of a background in hardware, so it didn't seem like a difficult thing to build.
272
00:19:46.675 --> 00:19:47.175
And
273
00:19:47.475 --> 00:19:49.415
prior to that, I had been using
274
00:19:50.035 --> 00:19:50.535
actually,
275
00:19:51.155 --> 00:19:53.895
this is probably horrible, but I was using a website called bidaddress.org,
276
00:19:54.850 --> 00:20:13.080
which I think is still out there. I think that's what I used right in the beginning when I first Right. Created Bitcoin. And I had used they have a setup to where I think you use Shamir's secret sharing and you can split up a private key among, like, different pieces and you that way you can kinda replicate a multisig setup, but it's not true on the protocol. So I had kind of a simple thing where I had, the you
277
00:20:16.179 --> 00:20:31.690
know, I I just I I wasn't totally satisfied with it. I wanted to, you know, I I just I I wasn't totally satisfied with it. I wanted to, like, have more confidence in my security setup. So I was kinda, like, looking for something when I heard that podcast, started playing around with with Spectre,
278
00:20:32.150 --> 00:20:34.010
found the DIY, put it together.
279
00:20:34.470 --> 00:20:36.490
And the first time I used Spectre
280
00:20:37.095 --> 00:20:46.875
with the kinda air gapped QR signing I described before where you scan QR's in and then you kinda, like, approve the transaction and scan it back into your laptop, like, that for me
281
00:20:47.210 --> 00:20:51.630
was the light bulb moment that was almost equivalent to my 1st Bitcoin transaction,
282
00:20:52.250 --> 00:20:58.475
my 1st lightning transaction. It was just like, this is like, this makes sense to me. This is the way that I wanna do it.
283
00:21:00.315 --> 00:21:01.934
And so like you mentioned,
284
00:21:02.635 --> 00:21:08.510
I think Flaxman again had a tweet where he was like, I love this wallet but somebody needs to build a case for it.
285
00:21:08.970 --> 00:21:13.630
Well, my background, like, one of the things I tinker with is 3 d printing and 3 d design.
286
00:21:14.255 --> 00:21:19.635
So I just kinda started iterating with the hardware and trying to find the best way to fit it into an enclosure.
287
00:21:20.335 --> 00:21:25.350
And I made one and I was, like, proud of it, and I started interacting with Stepan from,
288
00:21:26.130 --> 00:21:27.430
Spectre and I sent,
289
00:21:27.810 --> 00:21:31.675
I sent Flaxman 1 and I sent Stepan 1, and,
290
00:21:32.075 --> 00:21:34.895
I I started selling them in, like, a small square store.
291
00:21:36.155 --> 00:21:40.780
And as I started interacting with Flaxman more, he was describing to me,
292
00:21:41.980 --> 00:21:42.380
a,
293
00:21:42.780 --> 00:21:56.800
device he'd kinda thought of where you use a very specific version of Raspberry Pi. And it it's a Raspberry Pi 0, which if people aren't familiar, that's a smaller version of the Raspberry Pi that's smaller than the kind that people typically use in nodes. It's just a smaller form factor.
294
00:21:57.580 --> 00:22:07.534
And there's a very specific version of the Raspberry Pi 0. It's a version 1 dot 3, and it is built without Bluetooth and without Wi Fi. So it's kind of this naturally inexpensive
295
00:22:07.914 --> 00:22:09.294
air gap kind of system.
296
00:22:09.595 --> 00:22:11.134
And he talked about attaching
297
00:22:11.674 --> 00:22:13.855
a little screen and controls to that,
298
00:22:14.330 --> 00:22:18.670
Raspberry Pi 0 so that you could enter, like, the first 23 words of your seed phrase
299
00:22:19.130 --> 00:22:22.430
and then kind of in a a secure way, totally offline,
300
00:22:22.845 --> 00:22:26.145
be able to calculate the check some word and come up with a full,
301
00:22:27.005 --> 00:22:29.745
a full seed in a pretty secure independent way.
302
00:22:30.279 --> 00:22:30.779
And
303
00:22:31.159 --> 00:22:33.100
so I ordered some hardware pieces.
304
00:22:34.120 --> 00:22:36.220
I have a little bit of a background in technology.
305
00:22:37.000 --> 00:22:37.640
So I,
306
00:22:38.375 --> 00:22:39.995
I started playing around with that
307
00:22:40.855 --> 00:22:42.075
and was able
308
00:22:42.535 --> 00:22:56.304
to implement kind of the, the thing he was talking about where you kinda enter the words and it it calculates your 24th word. That's great, but I still love the Spectre DIY, and I got to thinking, like, if I attach, like, an inexpensive camera to this thing,
309
00:22:56.684 --> 00:23:01.184
can I replicate that core signing functionality that the Spectre DIY does?
310
00:23:02.205 --> 00:23:04.385
I I kinda joke that what I contributed
311
00:23:04.880 --> 00:23:08.740
to the seed signer project is being a cheapskate because I wanted to see kinda
312
00:23:09.120 --> 00:23:12.100
how how low could we drive down the cost to build something
313
00:23:12.495 --> 00:23:16.355
that maybe doesn't have all the features of a DIY, but is like a basic
314
00:23:16.975 --> 00:23:20.755
signing device that's that's pretty darn secure and that people can build cheaply
315
00:23:21.460 --> 00:23:25.480
themselves from, you know, things that they can buy in various places on the Internet. So
316
00:23:25.860 --> 00:23:30.680
that's, that's, I think, an answer to your question. And I mean, specifically, I mean, we're gonna
317
00:23:31.015 --> 00:23:39.115
318
00:23:40.179 --> 00:23:44.520
the fact that you can build this off of off the shelf parts makes it more resistant,
319
00:23:45.700 --> 00:23:47.640
to government action. I mean, if
320
00:23:47.995 --> 00:23:52.255
you could foresee a situation where in certain parts of the world, it might be hard to get,
321
00:23:53.115 --> 00:23:55.215
a purpose built Bitcoin device,
322
00:23:56.510 --> 00:23:58.450
while it's still easy to get RASPIs.
323
00:23:59.309 --> 00:24:04.975
324
00:24:05.455 --> 00:24:07.635
unspecified country in the miss Middle East,
325
00:24:08.015 --> 00:24:15.010
and I think they can actually get hardware wallets there, but they're not through official distributor channels. They're all kind of third party.
326
00:24:15.310 --> 00:24:28.735
So there's a high degree of uncertainty as to whether or not the hardware has been tampered with. But like you're saying, yeah. So if you live in some place where it's outright banned or you just don't want people to know that you're interacting with the Bitcoin protocol or that you're saving or storing Bitcoin,
327
00:24:29.150 --> 00:24:32.210
like, you can order these seemingly innocuous pieces and
328
00:24:32.590 --> 00:24:33.070
and,
329
00:24:33.630 --> 00:24:45.340
330
00:24:45.880 --> 00:24:47.900
And in in this case, that wouldn't happen.
331
00:24:49.480 --> 00:24:53.100
So, I mean, let's dive into this. You you have the Raspberry Pi 0.
332
00:24:54.175 --> 00:24:57.395
You know, I checked Amazon. They're they're pricing that at $20.
333
00:24:59.055 --> 00:25:00.995
Then you have a Waveshare LCD
334
00:25:02.400 --> 00:25:04.100
that's priced at around $17.
335
00:25:04.640 --> 00:25:06.980
You have the camera module, which is 14,
336
00:25:07.360 --> 00:25:09.140
and then you have a micro SD,
337
00:25:09.635 --> 00:25:12.375
at least 4 gig micro SD, which is basically
338
00:25:13.235 --> 00:25:22.539
shipping cost. I mean, that's they're pricing that at, like, $8. And then Right. You have an optional case if you wanna if you have a 3 d printer, you can print the case yourself. Yep.
339
00:25:23.480 --> 00:25:28.605
So, I mean, you are kinda pushing it a little bit. Right? Like, really, the cost comes into, like, mid fifties.
340
00:25:29.305 --> 00:25:31.565
341
00:25:32.185 --> 00:25:33.485
so if we go to,
342
00:25:34.880 --> 00:25:35.860
shout out to
343
00:25:36.559 --> 00:25:37.440
shoot. I
344
00:25:38.080 --> 00:25:38.580
addafruit.addafruit.com
345
00:25:39.679 --> 00:25:40.659
if you're in America.
346
00:25:41.840 --> 00:25:46.725
You can get a pie mailed to you through standard mail for less than $10.
347
00:25:47.265 --> 00:25:49.045
348
00:25:50.110 --> 00:26:12.160
349
00:26:12.800 --> 00:26:17.845
install them when you get them from the manufacturer. So you're either gonna have to buy one with the pins preinstalled
350
00:26:18.705 --> 00:26:20.165
or, you know, if it's
351
00:26:20.785 --> 00:26:25.765
soldering may seem kinda, like, overwhelming to some people, but it's not as crazy as you think.
352
00:26:26.630 --> 00:26:34.409
And I've had a lot of people that have contacted me privately and say, like, I'm gonna try this and they watch a few YouTube videos and they're able to pull it off and it works fine.
353
00:26:35.125 --> 00:26:41.625
But I I'll also mention, shameless plug that, I sell the presoldered Raspberry Pis for $15
354
00:26:42.669 --> 00:26:44.850
through the Square shop that I operate.
355
00:26:45.309 --> 00:26:45.809
So,
356
00:26:46.669 --> 00:26:49.169
if you're okay with, you know, buying it
357
00:26:49.630 --> 00:26:58.475
not yourself at, you know, a brick and mortar retailer or something, you're okay ordering it. I sell them for 15 with the pins attached, so that's kind of a way for people to get in the door there.
358
00:26:59.790 --> 00:27:00.290
359
00:27:03.230 --> 00:27:07.505
So we have the parts. What I'm just curious. What does the Spectre DIY use
360
00:27:07.985 --> 00:27:09.205
as their baseboard?
361
00:27:10.305 --> 00:27:11.125
362
00:27:11.585 --> 00:27:16.220
I believe you'd call it, like, a development board. So it's it's more geared towards,
363
00:27:17.640 --> 00:27:20.540
people who are experimenting with different hardware platforms
364
00:27:21.160 --> 00:27:21.820
and their
365
00:27:22.235 --> 00:27:28.095
form factor is much like a mobile phone, and it has a lot of the same, kind of hardware features of a mobile phone.
366
00:27:29.960 --> 00:27:30.679
But they're,
367
00:27:31.240 --> 00:27:31.740
the
368
00:27:32.600 --> 00:27:33.080
the,
369
00:27:33.720 --> 00:27:45.025
it's called a disco board. I I can't remember the model number, but I think they retail for, like, $62 is probably a good price for those at least. Yeah. The best one that I found. The core processor is, STM 32.
370
00:27:45.405 --> 00:27:48.880
371
00:27:50.940 --> 00:27:53.200
372
00:27:54.059 --> 00:27:54.559
373
00:27:55.100 --> 00:27:57.840
374
00:27:59.565 --> 00:28:00.465
375
00:28:00.765 --> 00:28:01.404
So it's,
376
00:28:02.365 --> 00:28:03.505
for us, like,
377
00:28:04.684 --> 00:28:15.975
your what I I like to kinda think of it as seed signers maybe closer to entry level, though I think it's getting better and better. But Specter DIY is kinda like mid grade and then Specter shield that they have with their
378
00:28:16.275 --> 00:28:16.775
proprietary,
379
00:28:17.395 --> 00:28:21.175
add on board. I kinda call that, like, the premier kinda top tier.
380
00:28:22.299 --> 00:28:32.175
So for us, yeah, you don't get that big touchscreen that you're gonna be able to, at least at this point, type letters into. But we've come up with some pretty creative ways to to use the joystick.
381
00:28:32.795 --> 00:28:34.955
Keith can talk more about that, absolutely, and,
382
00:28:35.675 --> 00:28:38.495
more creative ways to get the seed into the device that
383
00:28:39.120 --> 00:28:40.500
that Keith came up with.
384
00:28:43.280 --> 00:28:48.500
385
00:28:49.025 --> 00:28:49.525
And
386
00:28:50.705 --> 00:28:54.805
in general, when we're talking about multisig, you know, the more options, the better.
387
00:28:55.265 --> 00:28:57.605
We don't want everyone using the same exact
388
00:28:58.225 --> 00:28:58.725
setup.
389
00:28:59.970 --> 00:29:01.830
Keith, so you wanna talk about,
390
00:29:02.450 --> 00:29:04.550
I I think I know where this is going.
391
00:29:07.330 --> 00:29:08.310
I I guess,
392
00:29:09.765 --> 00:29:15.865
yeah. Let let's let's talk about that. So let's let's talk about so you have this you have this seed. You have these words.
393
00:29:18.120 --> 00:29:19.340
Personally, I think,
394
00:29:20.120 --> 00:29:24.914
you should keep those in steel. I don't know if you guys disagree with me on that. Totally agree.
395
00:29:25.394 --> 00:29:27.414
Because it's fire and water resistant,
396
00:29:27.794 --> 00:29:28.455
and, obviously,
397
00:29:28.914 --> 00:29:34.020
EMPs or or whatever things that can destroy an electronic device cannot destroy steel.
398
00:29:34.640 --> 00:29:39.140
If anything, the biggest negative of storing your seeds in steel is it's really hard to,
399
00:29:40.320 --> 00:29:42.545
destroy them if you wanna destroy them,
400
00:29:43.105 --> 00:29:44.245
which is the benefit.
401
00:29:45.025 --> 00:29:48.405
So you're entering the seed every single time you use the device.
402
00:29:50.640 --> 00:29:53.700
And, Keith, you came up with a pretty novel way of
403
00:29:54.080 --> 00:29:56.820
making that not a pain in the ass. You wanna talk about that?
404
00:29:57.440 --> 00:29:59.780
405
00:30:00.365 --> 00:30:03.424
Steve give his demo in the Phosstome in, in Miami,
406
00:30:04.605 --> 00:30:12.130
you know, I was just like I was blown away. Right? I I I wanted to make sure I caught his presentation because we had interacted a bit on on Twitter beforehand.
407
00:30:13.950 --> 00:30:16.289
But I noticed that while he was demoing,
408
00:30:16.750 --> 00:30:23.595
you know, you so you have to enter enter your seat, and he's got, like, you know, a 20 minute slot or if even that in in the phosstome.
409
00:30:24.855 --> 00:30:29.410
And so he's just hitting abandon, abandon, abandon, abandon. Right? The very first,
410
00:30:29.870 --> 00:30:30.610
dip 39,
411
00:30:31.710 --> 00:30:36.164
mnemonic seed board. And so that's his, like, quote, you know, high entropy,
412
00:30:36.544 --> 00:30:38.565
private key that he's, you know, configuring,
413
00:30:39.585 --> 00:30:45.980
just for the purpose of the demo. Right? Just to get it in there so he's got a seed signer that can do its thing.
414
00:30:46.680 --> 00:30:51.500
And so I get home from Miami. I get the parts. I assemble my seed signer. I'm so excited.
415
00:30:51.905 --> 00:30:52.725
And then,
416
00:30:54.705 --> 00:31:02.920
someone says I'm really quiet. Let me see. I raised your volume on my side for what it's worth. Okay. Alright. Yeah. Well, hit me up in the chat if it's still quiet.
417
00:31:05.540 --> 00:31:08.520
And so yes. I've got my assembled seed signer,
418
00:31:08.975 --> 00:31:09.475
and
419
00:31:09.775 --> 00:31:19.380
I, you know, generate a a a fake key that I can, you know, toss away. And I start entering my 24 words. I'm like, oh my god. This is, you know, it's
420
00:31:19.760 --> 00:31:23.300
like 5 minutes, right, to type in a full 24, word seed.
421
00:31:25.440 --> 00:31:31.775
And so I think the first thing I did was just changing the input UI. So it was using, like, a vertical,
422
00:31:32.955 --> 00:31:37.055
like, cylinder, basically. We you know, you'd scroll through the alphabet,
423
00:31:39.059 --> 00:31:43.800
letter by letter. And then as you enter each individual letter, it can start eliminating
424
00:31:44.180 --> 00:31:44.680
letters,
425
00:31:45.300 --> 00:31:48.925
you know, as as like the the matches against the word list,
426
00:31:49.645 --> 00:31:50.465
narrow down.
427
00:31:51.085 --> 00:31:53.665
But it still takes too long. So then
428
00:31:54.020 --> 00:32:00.440
I was able to build a keyboard UI where you can use the joystick to move across a virtual keyboard,
429
00:32:00.820 --> 00:32:04.424
click the joystick to select your letters. It's a little bit quicker.
430
00:32:05.785 --> 00:32:06.445
And then
431
00:32:06.825 --> 00:32:10.420
the the next thing was, okay, I've got it down to, like,
432
00:32:10.900 --> 00:32:14.760
I don't know. I can do this in 2 minutes now with this keyboard UI, but it's still
433
00:32:15.220 --> 00:32:21.255
too long. And, you know, I'm just thinking about my own, like, I'm a lazy jerk. Right? And
434
00:32:21.555 --> 00:32:26.135
if I know that, oh my god, you know, I should get my coins off of the exchange.
435
00:32:26.500 --> 00:32:30.200
But, crap. I gotta, you know, type in all these damn words on this damn thing.
436
00:32:31.620 --> 00:32:34.975
If it's too hard, I'm just not gonna do Right? That's like the bane of security.
437
00:32:35.275 --> 00:32:39.375
You put up too many barriers, and then you just start taking bad lazy shortcuts.
438
00:32:41.115 --> 00:32:41.615
So
439
00:32:42.155 --> 00:32:42.655
the
440
00:32:43.000 --> 00:32:46.380
the seed word list is 2,048,
441
00:32:47.240 --> 00:32:49.420
you know, specifically defined words.
442
00:32:49.960 --> 00:32:52.220
And when you're entering your seed,
443
00:32:52.605 --> 00:32:53.425
they're basically
444
00:32:54.285 --> 00:33:01.105
just being interpreted as the index number that they appear on the list. So the very first word in the list is abandon.
445
00:33:01.600 --> 00:33:03.140
Abandon equals 0.
446
00:33:03.520 --> 00:33:10.740
And then whatever the second word is, that equals 1. Because, you know, we're computer science. We we zero index our our counts.
447
00:33:11.664 --> 00:33:13.684
So your 24 words
448
00:33:14.145 --> 00:33:15.525
are really just 24
449
00:33:15.985 --> 00:33:16.485
numbers
450
00:33:16.865 --> 00:33:19.445
that are at most 4 digits each.
451
00:33:19.950 --> 00:33:20.450
So,
452
00:33:21.070 --> 00:33:26.049
you know, at first, like, okay. Well, we could just enter them by digit. That that'd be a little bit quicker,
453
00:33:27.735 --> 00:33:31.355
but not really great for, like, as a human UI.
454
00:33:31.735 --> 00:33:33.995
Like, you know, if I write down the wrong number,
455
00:33:34.375 --> 00:33:38.190
now I've just screwed up everything, and I've, you know, lost access to my funds.
456
00:33:40.090 --> 00:33:41.470
But then because
457
00:33:41.850 --> 00:33:49.215
the seed signer already has a camera on board, and it's built to read QR codes, I was like, okay. We have 24
458
00:33:49.835 --> 00:33:50.975
4 digit numbers.
459
00:33:51.755 --> 00:33:54.655
How big is a QR code that would store that?
460
00:33:55.460 --> 00:33:59.640
And it turns out you can fit it in a, what is it, 29 by 29,
461
00:34:01.220 --> 00:34:01.720
SploC
462
00:34:02.100 --> 00:34:03.155
QR code.
463
00:34:04.115 --> 00:34:04.615
And
464
00:34:05.075 --> 00:34:06.535
so on on a weekend,
465
00:34:06.835 --> 00:34:11.630
I was like, okay. This might be just the dumbest idea ever, but I'm gonna render
466
00:34:11.930 --> 00:34:13.470
my 24 words
467
00:34:14.329 --> 00:34:17.789
as a QR code, 29 by 29, put it up on the screen.
468
00:34:18.170 --> 00:34:25.174
I'm just gonna print out a grid, and I'm gonna see if I can just manually manually transcribe this thing. And, you know, at first,
469
00:34:25.555 --> 00:34:38.645
like With a Sharpie. Like, you put it. Right. Right. You fill in the squares with a Sharpie. Yeah. So the first version, though, like, it was just so primitive. It was just showing the entire QR on this tiny, like, 1.3 inch screen.
470
00:34:39.265 --> 00:34:44.085
And, you know, I'm trying to, like, look at, like, the individual blocks, how they line up.
471
00:34:44.460 --> 00:34:48.480
And I was able to transcribe it and and scan it back and show that it worked,
472
00:34:48.859 --> 00:34:50.960
but, like, I was blind afterwards.
473
00:34:51.420 --> 00:34:56.385
You know, my eyes were so sore because I was squinting at this tiny screen, these tiny little pixels.
474
00:34:57.885 --> 00:35:10.289
And then so I spent a little more time, and I was like, okay. Can I zoom into the QR code, and can I show it to you, like, a 5 by 5 chunk at a time and let you, you know, pan through
475
00:35:10.755 --> 00:35:11.735
the entire QR,
476
00:35:12.275 --> 00:35:14.775
you know, 5 by 5 steps at a time?
477
00:35:15.235 --> 00:35:24.380
And when I got that working, I mean, that was just a a heavy lift of just, you know, UI stuff working in, in in the seed signer hardware.
478
00:35:25.240 --> 00:35:41.220
But once I got working, it was so easy to transcribe these QR codes. And then I made a matching template that had those 5 by 5 grid lines. And, you know, everyone had the same suggestion. They're like, this should be Battleship. You should be filling in square, you know, d 5.
479
00:35:42.224 --> 00:35:45.285
And so, you know, one axis is letters, the other axis is numbers.
480
00:35:45.585 --> 00:35:49.605
The seed signer, when it's zoomed in, it shows you
481
00:35:49.940 --> 00:35:55.880
the 5 by 5 grid that you're zoomed in on. It shows you the number. It shows you the letter, that identifies that spot.
482
00:35:56.740 --> 00:36:01.195
And, yeah, and then the Sharpie. And, you know, so now people are, like, going crazy
483
00:36:01.734 --> 00:36:05.515
just seeing how sloppy they can be, how quickly they can do it.
484
00:36:06.010 --> 00:36:08.349
And, like, QR codes are so resilient.
485
00:36:09.130 --> 00:36:15.685
Somebody just posted in the Telegram group, like, 5 minutes before the stream started, that I I think they said, like, their mom or their grandma
486
00:36:16.145 --> 00:36:17.045
is stitching
487
00:36:17.505 --> 00:36:28.200
a QR code. So they posted the photo of the, like, stitch you know, the the the lattice work of the, that they're gonna be stitching into. And they had already stitched the the 3,
488
00:36:28.660 --> 00:36:37.895
big concentric blocks in in the 3, corners of the QR code. So they've got, like, the basic template, and now they just need to, like, actually go, spot by spot,
489
00:36:38.910 --> 00:36:42.690
and and stitch it in. It looks so funny. It it's just so cool.
490
00:36:43.150 --> 00:36:50.275
491
00:36:50.575 --> 00:36:53.875
is because then your secret your private keys are on a computer
492
00:36:54.335 --> 00:37:00.280
and is stored in memory. A lot of these printers stored in memory, so you you don't you wanna avoid that step. That's why,
493
00:37:00.900 --> 00:37:06.985
you know, common practice is to to write it down on on piece of paper or put it into steel rather than,
494
00:37:08.245 --> 00:37:09.465
putting it into a computer.
495
00:37:09.845 --> 00:37:15.390
That's the whole that's the whole goal of SeedSigner in the first place is that your online device doesn't ever
496
00:37:16.010 --> 00:37:16.990
have this secret.
497
00:37:17.530 --> 00:37:18.990
498
00:37:19.530 --> 00:37:20.910
after Bitcoin 2021,
499
00:37:21.450 --> 00:37:21.930
like, what
500
00:37:22.955 --> 00:37:23.455
like,
501
00:37:23.915 --> 00:37:26.255
how how Jack Mallers has changed the world,
502
00:37:26.955 --> 00:37:28.095
was just so inspiring.
503
00:37:28.475 --> 00:37:28.975
And
504
00:37:29.275 --> 00:37:29.775
so
505
00:37:30.420 --> 00:37:30.920
everything
506
00:37:31.540 --> 00:37:33.640
it it it just changed the way that I view
507
00:37:34.099 --> 00:37:36.359
Bitcoin and this project in particular,
508
00:37:37.125 --> 00:37:40.984
which is like, hey. What if there are people that don't have printers?
509
00:37:41.285 --> 00:37:53.410
Like, forget the security issues. Right? They don't they don't have, like, you know, the the easy access to to tech and money that we have. So how would they be able to use this? Like, can someone in El Salvador who's making
510
00:37:54.109 --> 00:38:02.835
$300 a month buy a cold card for a 100 and, you know, $14, $20, whatever it is. Like, it'd be amazing if they can. The cold card is a phenomenal
511
00:38:03.135 --> 00:38:04.035
hardware wallet,
512
00:38:04.495 --> 00:38:11.619
but it becomes a really high barrier to entry when the price is creeping up to a $100 or a 100 plus or the $300,
513
00:38:12.865 --> 00:38:14.244
foundation devices thing.
514
00:38:15.984 --> 00:38:21.365
515
00:38:23.520 --> 00:38:23.920
your
516
00:38:24.320 --> 00:38:27.380
you power on your seed signer, you plug it into power,
517
00:38:29.360 --> 00:38:31.780
through micro USB. Right? And then
518
00:38:32.545 --> 00:38:36.484
you scan the QR code that you have. And I guess the QR code is, like,
519
00:38:37.825 --> 00:38:39.444
your your easy access
520
00:38:39.825 --> 00:38:40.325
to
521
00:38:40.660 --> 00:38:44.840
the seed, but then you also have a separate seed backup. Right?
522
00:38:47.060 --> 00:38:52.275
523
00:38:53.055 --> 00:38:54.515
jig to to pound,
524
00:38:55.295 --> 00:38:56.495
my seed words into,
525
00:38:56.815 --> 00:38:57.635
steel washers.
526
00:38:58.940 --> 00:39:03.360
Yeah. And and those are gonna be, you know, the, like, survive a fire, survive an earthquake,
527
00:39:03.660 --> 00:39:04.160
backups.
528
00:39:04.700 --> 00:39:09.065
529
00:39:10.165 --> 00:39:11.785
530
00:39:12.565 --> 00:39:13.545
you you know, I
531
00:39:14.245 --> 00:39:18.250
I getting a little ahead of us of ourselves, but I I'm even imagining,
532
00:39:18.710 --> 00:39:19.770
you know, like
533
00:39:20.150 --> 00:39:24.010
like a collaborative custody company. You know, you've got Casa Unchained.
534
00:39:25.505 --> 00:39:29.205
They hold one key, at least, for all their customers.
535
00:39:29.825 --> 00:39:36.140
I mean, do they have, like, a cold card or a ledger or a treasure sitting in a drawer for each customer.
536
00:39:36.520 --> 00:39:41.900
You know, imagine if they just had, like, secured QR code sheets for each customer.
537
00:39:42.280 --> 00:39:45.405
And when they need to help cosign on a transaction,
538
00:39:46.025 --> 00:39:51.244
they just unlock their customer secure sheet, scan it scan it with a seed signer,
539
00:39:51.900 --> 00:39:52.800
sign the transaction,
540
00:39:53.180 --> 00:39:55.520
and then, you know, lock up their sheet again.
541
00:39:55.980 --> 00:39:57.500
So it you know, it
542
00:39:58.435 --> 00:40:01.575
like, this QR based seed entry model
543
00:40:01.875 --> 00:40:04.455
can work for the poorest of people.
544
00:40:05.530 --> 00:40:06.350
But then also
545
00:40:06.890 --> 00:40:08.430
these, like, collaborative custody
546
00:40:08.810 --> 00:40:12.670
companies that, you know, could be making 1,000,000 and 1,000,000,000 of dollars.
547
00:40:14.685 --> 00:40:18.225
548
00:40:18.605 --> 00:40:20.705
can see the value in it pretty quickly.
549
00:40:21.830 --> 00:40:22.810
So, I mean, another
550
00:40:23.190 --> 00:40:26.650
big issue with these devices is how to generate a secure,
551
00:40:28.630 --> 00:40:31.290
seed in the first place. You you need
552
00:40:31.725 --> 00:40:32.625
proper randomness,
553
00:40:33.965 --> 00:40:35.105
in order to
554
00:40:35.725 --> 00:40:37.985
have a seed that can't be brute forced.
555
00:40:38.925 --> 00:40:40.385
And we've seen in the past
556
00:40:42.690 --> 00:40:48.470
different services that offer to generate your private keys or or different tools that offer to generate your private keys,
557
00:40:48.875 --> 00:40:53.455
and they don't have sufficient random to have some kind of broken randomness. And as a result,
558
00:40:54.475 --> 00:40:57.775
the seeds aren't secure in the first place when they're originally generated.
559
00:40:58.950 --> 00:41:05.050
560
00:41:05.670 --> 00:41:06.650
561
00:41:08.425 --> 00:41:10.045
for their entropy, and
562
00:41:11.865 --> 00:41:15.325
and and there was, like, a 404 error when a bunch of people
563
00:41:15.750 --> 00:41:20.650
their address. Oh, god. Generated their seeds, so they didn't have actually any entropy whatsoever.
564
00:41:21.030 --> 00:41:21.530
565
00:41:22.230 --> 00:41:23.690
566
00:41:24.705 --> 00:41:27.285
But the big fear is, like, if you use a,
567
00:41:30.705 --> 00:41:39.670
most computers have, like, random number generators, but, you know, one of the big conspiracy theories is that those random number generators are compromised, like, by Intel and stuff.
568
00:41:40.744 --> 00:41:46.924
Right. Either Intel or see, like like, bid address, like, makes you, like, shake your mouse or something to add entropy.
569
00:41:48.839 --> 00:41:54.700
570
00:41:55.000 --> 00:41:56.299
some sort of predictable
571
00:41:57.145 --> 00:41:58.045
quote entropy
572
00:41:58.665 --> 00:42:03.405
into a hardware device and then in an undetermined amount of years when they're ready
573
00:42:03.865 --> 00:42:06.560
to go, they, they can sweep some things.
574
00:42:07.520 --> 00:42:08.340
575
00:42:09.360 --> 00:42:13.460
one of the ways to get around that was dice rolls, and I guess that's what you guys used originally.
576
00:42:14.160 --> 00:42:15.140
But I saw
577
00:42:15.684 --> 00:42:17.385
you have a new method for entropy.
578
00:42:18.164 --> 00:42:26.330
579
00:42:26.630 --> 00:42:27.130
So,
580
00:42:27.510 --> 00:42:28.630
you know, if if,
581
00:42:29.590 --> 00:42:35.755
any of the freaks out there who know way more about this than I do, if this is a terrible idea, please, please
582
00:42:36.055 --> 00:42:36.875
let us know.
583
00:42:37.655 --> 00:42:39.994
You know, I I consider all of this experimental
584
00:42:40.295 --> 00:42:42.750
until it's vetted by the community.
585
00:42:44.730 --> 00:42:47.470
But it's pretty simple. Seed signer has a camera on board.
586
00:42:47.850 --> 00:42:49.550
What if we just took a photo
587
00:42:50.095 --> 00:42:53.475
with that camera? It's 7 20 by 480 pixels
588
00:42:53.855 --> 00:42:55.955
times 3 color channels, RGB.
589
00:42:56.575 --> 00:42:58.279
That's a lot of data.
590
00:42:58.900 --> 00:43:03.079
Each pixel each of those channels is, you know, ranging from 0 to 255.
591
00:43:05.700 --> 00:43:06.599
Take a picture,
592
00:43:07.305 --> 00:43:08.765
hash it with SHA 256,
593
00:43:09.785 --> 00:43:14.845
run that as your entropy, and what comes out? A 24 word seed.
594
00:43:17.530 --> 00:43:20.030
And because, we get because of SHA 256,
595
00:43:20.730 --> 00:43:23.390
if a single pixel value is changed
596
00:43:23.770 --> 00:43:24.990
by a single integer,
597
00:43:25.305 --> 00:43:26.045
You know, red
598
00:43:26.825 --> 00:43:27.325
248
599
00:43:27.705 --> 00:43:29.165
is changed to red 249,
600
00:43:29.465 --> 00:43:31.725
but the entire rest of the image is identical.
601
00:43:32.720 --> 00:43:34.660
That should generate a completely
602
00:43:35.039 --> 00:43:35.539
different
603
00:43:35.839 --> 00:43:36.339
seed,
604
00:43:36.799 --> 00:43:39.059
once you run it through shot 25 256.
605
00:43:41.119 --> 00:43:41.619
And,
606
00:43:42.385 --> 00:43:43.845
you know, some people have
607
00:43:44.705 --> 00:43:48.085
tried to poke holes in this. And again, I invite that a 1000%.
608
00:43:48.705 --> 00:43:49.985
You know, what if there's,
609
00:43:51.110 --> 00:43:56.890
the sensor noise is this? What if there's smoothing applied to that? What if there's a, like a a grid
610
00:43:57.270 --> 00:44:03.365
pattern that's, you know, invisible to the naked eye, but inherent to the sensors themselves? You know, what if there's more structure there
611
00:44:03.665 --> 00:44:04.165
than,
612
00:44:05.425 --> 00:44:06.805
than you think there is?
613
00:44:07.265 --> 00:44:07.765
And
614
00:44:08.119 --> 00:44:15.339
I, you know, I I I just keep doing these thought experiments. Like, okay, let's say every other pixel is pure black. There's just no data there.
615
00:44:16.075 --> 00:44:20.255
And let's cut it down from RGB down to just down to just monochrome.
616
00:44:21.994 --> 00:44:25.295
I it it's still there's just so many pixels
617
00:44:25.820 --> 00:44:27.680
going into the hashing function
618
00:44:28.780 --> 00:44:32.400
that, you know, for for my layman's understanding
619
00:44:32.860 --> 00:44:37.915
of hashing, I just I don't see how there's a problem. But So
620
00:44:38.535 --> 00:44:42.474
621
00:44:43.079 --> 00:44:45.339
use a similar setup for entropy.
622
00:44:46.119 --> 00:44:50.140
They tell you to drag a random file in to the OpenDime
623
00:44:50.440 --> 00:44:51.980
at at creation,
624
00:44:53.265 --> 00:44:54.805
to generate the private key.
625
00:44:55.424 --> 00:45:00.645
But what they do is they also use entropy from the device, so they combine the 2.
626
00:45:02.730 --> 00:45:06.190
So where my monkey brain goes is it'd be kinda cool if you can combine
627
00:45:07.210 --> 00:45:10.590
the entropy from the photo with entropy from the dice
628
00:45:13.035 --> 00:45:17.215
if you want to. Like, have have that as an option could could be
629
00:45:19.000 --> 00:45:21.100
a nice little paranoid extra step.
630
00:45:21.880 --> 00:45:25.260
631
00:45:25.640 --> 00:45:28.060
632
00:45:29.515 --> 00:45:33.855
633
00:45:34.395 --> 00:45:39.140
tickles me. Like, you know, if if I wanted to set up a
634
00:45:39.520 --> 00:45:41.540
a Bitcoin fund for my nieces,
635
00:45:41.920 --> 00:45:44.865
I would take my seed signer over to their house,
636
00:45:45.245 --> 00:45:46.625
use it to take a picture
637
00:45:47.165 --> 00:45:48.065
of my nieces.
638
00:45:48.525 --> 00:45:50.705
You know? And so their faces would be
639
00:45:51.240 --> 00:45:51.900
the entropy
640
00:45:52.280 --> 00:45:52.780
for
641
00:45:53.160 --> 00:45:53.660
their
642
00:45:54.200 --> 00:45:57.420
mnemonic phrase for their, you know, seed that I'm gonna
643
00:45:57.880 --> 00:46:05.190
help fund their their, you know, college or whatever money, in the future. Like, I just think it's so cool that you can attach, like,
644
00:46:05.670 --> 00:46:06.170
sentimental
645
00:46:06.790 --> 00:46:07.290
representation
646
00:46:07.829 --> 00:46:09.690
to the creation of a new seed.
647
00:46:11.109 --> 00:46:14.755
648
00:46:16.095 --> 00:46:17.955
That's a that's a cool idea.
649
00:46:21.980 --> 00:46:23.180
Yeah. That that's
650
00:46:24.700 --> 00:46:34.785
so so I think we've nailed all the basics here. I mean, that's awesome. I mean so so that's currently in beta right now. Right? Like, is that is that in the in the proper,
651
00:46:36.045 --> 00:46:36.545
release?
652
00:46:36.925 --> 00:46:42.200
653
00:46:42.980 --> 00:46:46.440
do you have the ability to show, like, a YouTube video up in the stream?
654
00:46:46.819 --> 00:46:48.049
I didn't know that.
655
00:46:50.135 --> 00:46:52.715
656
00:46:53.495 --> 00:46:55.195
657
00:46:55.970 --> 00:47:01.190
It's, we have kinda like we can just run-in the background, like, a 10 minute demo or something that kinda shows
658
00:47:02.930 --> 00:47:08.775
an overview of the process of, like, setting up a a wall and stuff, it'd probably be helpful for people who aren't
659
00:47:09.235 --> 00:47:10.215
familiar with,
660
00:47:11.475 --> 00:47:13.495
you know, just the air gap signing thing.
661
00:47:13.870 --> 00:47:19.950
662
00:47:22.365 --> 00:47:24.305
so trade offs and threat models,
663
00:47:28.125 --> 00:47:32.119
we have a stateless device, off the shelf parts, no secure element.
664
00:47:33.539 --> 00:47:34.359
It's gonna
665
00:47:34.819 --> 00:47:39.125
primarily be used in a multisig quorum. Do you think anyone should be using this in a single sig
666
00:47:40.405 --> 00:47:40.905
setup?
667
00:47:42.085 --> 00:47:45.885
668
00:47:46.325 --> 00:47:49.220
If if you're obviously, part of the trade off
669
00:47:50.480 --> 00:47:54.660
with with trying to find the right security setup is how much value are you protecting
670
00:47:55.335 --> 00:48:03.115
and, you know, what kind of barriers are you putting in place to protect that value. So if you're protecting, you know, like, this is your Huddl stash, this is what
671
00:48:03.470 --> 00:48:08.930
you're saving to pass on to your kids or deep into the future or whatever like that. I I have a strong feeling,
672
00:48:09.710 --> 00:48:19.815
that you should be in multisig. Some people think we're still early for that, but I I think the tools are there and it's accessible to enough people that, like, I wanna get more people in the multisig. That said,
673
00:48:20.355 --> 00:48:20.835
like, for
674
00:48:21.530 --> 00:48:34.635
you can kinda think of it savings versus checking. You have, like, a checking account where you're gonna be maybe buying things with Bitcoin or or, don't know, maybe you're an active trader and you're moving things between exchanges or whatever and into a personal wallet kind of in the interim,
675
00:48:35.174 --> 00:48:35.835
I think,
676
00:48:36.214 --> 00:48:45.470
a seed signer is perfectly fine in a single sig environment for that. We that was another feature we added on our 2 or 3 versions ago, so it's not just for multisig, but we do have
677
00:48:45.770 --> 00:48:48.590
a, a single sig mode and settings that you can use.
678
00:48:49.035 --> 00:48:50.255
679
00:48:51.275 --> 00:48:53.375
from a single sig point of view is
680
00:48:54.715 --> 00:48:56.095
the evil maid attack.
681
00:48:57.329 --> 00:48:58.790
So, like, we're entering
682
00:48:59.250 --> 00:49:03.430
we're scan we're entering our our secret into this device every time we use it,
683
00:49:04.290 --> 00:49:07.945
whether that's by QR code or entering 24 words.
684
00:49:08.245 --> 00:49:08.645
685
00:49:10.005 --> 00:49:13.705
686
00:49:14.325 --> 00:49:15.545
an evil maid
687
00:49:15.930 --> 00:49:17.790
that you have cleaning your house,
688
00:49:18.330 --> 00:49:18.830
replaces
689
00:49:19.370 --> 00:49:20.910
your your hardware
690
00:49:21.290 --> 00:49:21.790
device,
691
00:49:22.650 --> 00:49:24.110
with a compromised device
692
00:49:24.815 --> 00:49:25.555
that doesn't,
693
00:49:27.375 --> 00:49:32.195
that that has Wi Fi or Bluetooth enabled on it, and it transmits that secret,
694
00:49:33.055 --> 00:49:34.435
to the evil maid.
695
00:49:35.120 --> 00:49:36.740
And in a multisig setup,
696
00:49:37.360 --> 00:49:39.540
that threat is alleviated because
697
00:49:40.160 --> 00:49:45.195
you need a threshold of secrets. You it's not just one secret. Sure. But in a single sig,
698
00:49:47.495 --> 00:49:53.300
right, a single sig, all of a sudden, that becomes a threat. So you have to keep your device regardless, you should be keeping your devices
699
00:49:54.260 --> 00:50:01.320
physically secure. Right? You don't want people to easily see them or get access to them and swap them out. Right? Right. Right. Right.
700
00:50:03.315 --> 00:50:12.970
701
00:50:13.270 --> 00:50:15.770
kinda like money you'd carry in your wallet kinda thing.
702
00:50:17.830 --> 00:50:20.810
But, yeah, I I totally get what you're saying.
703
00:50:21.535 --> 00:50:24.115
One of the other things I'd point out with seed cider is
704
00:50:25.215 --> 00:50:26.995
if you have concerns about,
705
00:50:27.535 --> 00:50:31.810
that the memory card's been tampered with or whatever, like, that is something that you can
706
00:50:32.110 --> 00:50:36.450
remove and wipe between uses or just remove and keep in a more secure place between uses,
707
00:50:37.365 --> 00:50:40.585
to mitigate, like, you know, somebody having tampered with
708
00:50:40.885 --> 00:50:42.984
the, the data on the memory card?
709
00:50:48.380 --> 00:50:52.560
710
00:50:53.020 --> 00:50:54.655
711
00:50:55.675 --> 00:51:00.815
you know, if anyone's going to be using seed signer, either for single sig or multisig,
712
00:51:02.329 --> 00:51:04.349
you know, you should just you should always
713
00:51:04.730 --> 00:51:11.815
validate seed signer with a different device. So this is what I did in the the early days of Spectre desktop.
714
00:51:12.994 --> 00:51:15.175
I wanted to start using it for my multisig,
715
00:51:15.955 --> 00:51:16.455
and
716
00:51:16.835 --> 00:51:20.099
I basically created the exact same multisig
717
00:51:20.400 --> 00:51:22.500
in Spectre desktop and in Electrum,
718
00:51:22.960 --> 00:51:26.260
verified that the addresses that were generated were identical in each,
719
00:51:26.935 --> 00:51:35.195
was able to sign transactions in both of them. So I was very confident that Spectre wasn't doing anything, you know, weird or nonstandard.
720
00:51:36.020 --> 00:51:45.885
So that even if the project crashed and burned and disappeared off the face of the planet, I wouldn't you know, my Bitcoin wouldn't be stranded with that lost project.
721
00:51:47.065 --> 00:51:48.525
And there's so much standardization
722
00:51:48.904 --> 00:51:50.845
now that, like, it
723
00:51:52.240 --> 00:51:53.460
I I just feel like the
724
00:51:54.560 --> 00:51:56.020
the risks are getting
725
00:51:56.400 --> 00:51:58.100
less and less. That
726
00:51:58.615 --> 00:52:00.795
if if it works in SeedSigner
727
00:52:01.255 --> 00:52:03.915
talking to Specter, talking to Sparrow, talking to BlueWallet,
728
00:52:04.535 --> 00:52:11.460
then, you know, any other wallet that can talk to them is gonna work too. And if it if there's a bug in seed signer,
729
00:52:11.920 --> 00:52:13.380
you're gonna find out pretty quickly.
730
00:52:14.240 --> 00:52:16.500
You know, early on in
731
00:52:16.945 --> 00:52:19.445
Spectre desktop, I was messaging with Stefan,
732
00:52:20.065 --> 00:52:21.845
and this is back in, like, late 2019.
733
00:52:22.785 --> 00:52:23.285
And,
734
00:52:23.750 --> 00:52:33.915
you know, and he's he was really good about telling people, like, it's experimental. Don't use it for real value. Don't use it for real value. And I messaged him. I'm like, yo, man. So, I'm actually using it for real value.
735
00:52:34.935 --> 00:52:38.290
And he's like he's like, yeah. I am too, but I'm not telling people that.
736
00:52:39.570 --> 00:52:48.070
737
00:52:48.595 --> 00:52:55.654
and, he must have, like, progressed to the point where he was more comfortable with it because he he was like, no. I I think we're I think we're at that point.
738
00:52:58.510 --> 00:53:00.609
739
00:53:00.990 --> 00:53:03.490
PSBTs here, partially signed Bitcoin transactions.
740
00:53:03.869 --> 00:53:07.275
Yeah. Yeah. Yeah. Yeah. Does this video does this video show us using PSBTs?
741
00:53:07.815 --> 00:53:11.035
742
00:53:11.390 --> 00:53:15.170
you actually set up the wallet in Spectre from scratch. So you're gonna be inputting
743
00:53:15.869 --> 00:53:22.714
those, like Keith was talking about, the really simple repetitive seeds, and then you're gonna input the XPUBs into Spectre
744
00:53:23.415 --> 00:53:27.115
via QRs, and then I go through and sign a transaction. So it gives you
745
00:53:27.630 --> 00:53:28.930
gives you kind of the full
746
00:53:29.230 --> 00:53:36.930
747
00:53:38.905 --> 00:53:41.165
Okay. I'm gonna play this video. Cool.
748
00:53:44.820 --> 00:53:46.980
749
00:53:47.620 --> 00:53:55.275
it's probably painful in the beginning because it's repetitive that we're setting up. Are you doing abandon? Are you gonna about to do abandon, 24 times
750
00:53:55.575 --> 00:53:56.795
751
00:53:57.335 --> 00:54:02.635
752
00:54:03.920 --> 00:54:04.900
checksum word.
753
00:54:06.000 --> 00:54:08.099
754
00:54:08.480 --> 00:54:24.210
Yeah. Bacon times 24 is a valid seed. So the freaks that are wondering what we're talking about here, the it's actually you you have 23 words, and then the 24th word is just checking to make sure that those previous 23 words are,
755
00:54:25.390 --> 00:54:25.890
valid.
756
00:54:26.350 --> 00:54:27.890
It's, it's called a checksum.
757
00:54:28.270 --> 00:54:31.775
758
00:54:32.575 --> 00:54:41.635
did the, calculations and figure out there's there's probably a few dozen words that are their own checksum, so you can enter them times 24 and and they work. So,
759
00:54:42.450 --> 00:54:45.190
760
00:54:46.130 --> 00:54:58.085
761
00:54:58.630 --> 00:55:03.690
So for the purposes of the demo, I'm just going through and storing 3 seeds so that I can just
762
00:55:03.990 --> 00:55:12.455
use them. We probably didn't mention that before, but seed signer will currently store up to 3 seeds temporarily in memory while the device has power just in case you're
763
00:55:12.755 --> 00:55:15.735
setting up a multisig or you wanna sign with the
764
00:55:16.410 --> 00:55:25.415
multiple keys using that same device. But what you're seeing right now is kind of the old interface where Keith was talking about the the scroll wheel where you,
765
00:55:26.055 --> 00:55:31.735
enter the letters. And it's not a proper demo, the scroll wheel, because we're just doing repetitive words. But,
766
00:55:32.480 --> 00:55:33.619
767
00:55:34.040 --> 00:55:34.540
joystick.
768
00:55:34.960 --> 00:55:43.424
769
00:55:44.125 --> 00:55:44.865
770
00:55:45.244 --> 00:55:48.464
2 questions that I just saw come in here. Yeah. Yeah.
771
00:55:48.940 --> 00:55:52.400
The first one is, do you guys trust safe deposit boxes, multisig
772
00:55:53.100 --> 00:55:53.500
keys?
773
00:55:53.980 --> 00:55:55.920
I don't trust safe deposit boxes.
774
00:55:57.435 --> 00:55:58.895
They can be drilled into.
775
00:55:59.195 --> 00:56:01.935
You might not have access to them. But for multisig,
776
00:56:02.955 --> 00:56:04.175
if it's one key,
777
00:56:04.650 --> 00:56:08.430
if it's not, like, part of if if it's not the full quorum of keys,
778
00:56:09.130 --> 00:56:17.025
then worst comes to worst. You, you know, you lose access to a single key or someone takes a single key, gets access to a single key. It's not the end of the world.
779
00:56:18.445 --> 00:56:20.945
But I definitely went in with single sig.
780
00:56:21.640 --> 00:56:22.380
781
00:56:24.680 --> 00:56:26.300
782
00:56:27.480 --> 00:56:30.460
with the photo entropy, couldn't someone find the photo?
783
00:56:31.265 --> 00:56:33.365
784
00:56:33.745 --> 00:56:36.645
the photo is never stored on the device.
785
00:56:37.345 --> 00:56:37.845
And
786
00:56:38.440 --> 00:56:41.260
even if it was, as soon as you you turn the power off,
787
00:56:41.720 --> 00:56:43.260
the the device is blanked.
788
00:56:44.360 --> 00:56:45.100
And then
789
00:56:45.855 --> 00:56:48.035
the the the part that I really like is
790
00:56:48.575 --> 00:56:53.155
the photo's aspect ratio is wide. It's 7 20 by 480.
791
00:56:53.660 --> 00:57:00.000
But we only show you the center crop, the center 480 by 480, and then we we scale it down to fit on the screen.
792
00:57:00.540 --> 00:57:03.795
So there's image information that you never
793
00:57:04.255 --> 00:57:04.755
see.
794
00:57:05.295 --> 00:57:05.795
So
795
00:57:06.335 --> 00:57:07.555
you can take a photo
796
00:57:08.150 --> 00:57:09.290
of the seed signer
797
00:57:09.750 --> 00:57:10.250
displaying
798
00:57:10.550 --> 00:57:21.185
your image that you're going to use as the entropy for your new seed. You could tweet it out to the world. I I I have some demos of this. I know. I saw you tweeted it out. Yeah. Yeah. My dog.
799
00:57:21.964 --> 00:57:29.650
800
00:57:31.015 --> 00:57:31.515
automatic
801
00:57:31.895 --> 00:57:34.315
or, like, pretty good, denominators
802
00:57:34.615 --> 00:57:40.395
that I'll like a person is if they're a Bitcoiner and if they're a dog person. So they're both it it's a very good
803
00:57:41.000 --> 00:57:41.500
indicator.
804
00:57:41.880 --> 00:57:43.660
805
00:57:44.680 --> 00:57:45.900
But but yeah. So
806
00:57:47.000 --> 00:57:49.340
because the whole image is never shown,
807
00:57:49.925 --> 00:57:50.425
there's
808
00:57:50.725 --> 00:57:52.505
no way anyone can recreate
809
00:57:53.125 --> 00:57:58.905
the exact pixel for pixel values. And even if we show the entire image on screen,
810
00:57:59.640 --> 00:58:03.260
again, there's no way you're gonna recreate the entire 7 20 by 480
811
00:58:03.720 --> 00:58:14.145
812
00:58:14.445 --> 00:58:16.305
813
00:58:19.260 --> 00:58:19.760
814
00:58:21.339 --> 00:58:23.599
These are good questions, Freaks. Keep them coming.
815
00:58:24.465 --> 00:58:30.165
816
00:58:31.665 --> 00:58:32.645
I just got
817
00:58:33.570 --> 00:58:34.390
a transaction
818
00:58:35.090 --> 00:58:37.510
inbound from a faucet. This is all in testnet.
819
00:58:37.970 --> 00:58:38.470
And
820
00:58:40.290 --> 00:58:41.590
right now, I think
821
00:58:43.315 --> 00:58:45.415
we're gonna go to send. And
822
00:58:46.435 --> 00:58:52.455
to send, in this particular demo, we send some coins back to the faucet, back to their receiving address.
823
00:58:52.860 --> 00:58:56.880
So, like, you're familiar with with a lot of your wallets, I'm copying that from
824
00:58:57.180 --> 00:59:00.800
the faucet website and then pasting it back into the
825
00:59:01.525 --> 00:59:04.505
back into the Spectre or the multi sig coordinator,
826
00:59:05.125 --> 00:59:06.505
putting an amount in.
827
00:59:06.805 --> 00:59:09.065
I think I let it auto calculate the fee,
828
00:59:10.049 --> 00:59:13.349
and then it's going to say create this unsigned transaction.
829
00:59:14.450 --> 00:59:24.935
So Spector just created the unsigned transaction, which is multisig, so we need 2 of 3. So we're gonna choose to sign with the first key, and we're gonna sign with these animated QR codes.
830
00:59:25.795 --> 00:59:26.295
So
831
00:59:27.200 --> 00:59:30.340
I kinda have a rig when I recorded this video, but you're gonna see,
832
00:59:31.840 --> 00:59:35.140
it's asking me which key do you wanna sign with. I just picked the first key,
833
00:59:35.535 --> 00:59:37.795
And then you can't tell because it's picture
834
00:59:38.495 --> 00:59:38.995
it's
835
00:59:40.255 --> 00:59:48.090
a picture in picture video, but I just held the seed signer up, and I'm scanning that animated QR that that's dis displayed on the laptop screen.
836
00:59:48.470 --> 01:00:00.595
So it shows me the proposed transaction. It says this is, like, the last 13 characters of the address you wanna send to. This is the amount. This is the fee. Do you approve it? And then it just generated a QR code on the seed signer screen,
837
01:00:01.109 --> 01:00:06.490
And that is how I'm gonna communicate the partially signed transaction back to the laptop. So I hold it up to the screen.
838
01:00:07.270 --> 01:00:12.555
Specter reads the frames in 1 by 1. You're holding it to your webcam on your computer.
839
01:00:12.935 --> 01:00:14.795
So once it knows it has them all,
840
01:00:15.095 --> 01:00:20.490
it, closes the scanner face out, and it says, okay. We've signed with the, the first key.
841
01:00:21.110 --> 01:00:23.530
And then it's just that process repeated
842
01:00:24.390 --> 01:00:32.295
843
01:00:33.234 --> 01:00:35.415
844
01:00:36.400 --> 01:00:47.835
the the proposed transactions, QR codes, and laptop screen again. I'm gonna hold the seed center camera up to that. It's gonna give me indicators on the screen that it started collecting the frames.
845
01:00:49.575 --> 01:00:54.860
846
01:00:55.720 --> 01:00:58.140
feature set to be able to have multiple keys
847
01:00:58.485 --> 01:00:58.985
on
848
01:01:00.005 --> 01:01:01.465
a on a single device,
849
01:01:02.325 --> 01:01:08.185
especially for a demo or even, like, in an emergency situation where you need to recover a multisig.
850
01:01:09.349 --> 01:01:12.650
But the reason you wanna use multiple devices is because right now,
851
01:01:13.270 --> 01:01:15.130
if this was holding a lot of funds,
852
01:01:15.595 --> 01:01:21.454
all the secrets that are needed to move those funds are on this single device. So if that single device is compromised,
853
01:01:22.714 --> 01:01:24.790
so are your funds. Right? Yep.
854
01:01:25.170 --> 01:01:27.589
855
01:01:27.970 --> 01:01:31.510
mix vendors and mix hardware profiles for, your cosigners.
856
01:01:33.775 --> 01:01:34.915
857
01:01:35.375 --> 01:01:36.175
858
01:01:37.055 --> 01:01:46.210
we approved with the second signer, and that pops up a screen inspector that says, okay. You have the adequate number of signers. We broadcasted the transaction, and now it's just going back to the,
859
01:01:46.930 --> 01:01:49.750
the faucet to validate that they received a transaction.
860
01:01:51.405 --> 01:01:52.945
But that brings up, like
861
01:01:53.725 --> 01:01:55.105
like, I think you had said,
862
01:01:55.965 --> 01:02:00.961
practice, practice, practice with, like, whatever your setup is. I think part of,
863
01:02:01.418 --> 01:02:03.290
part of being secure
864
01:02:05.510 --> 01:02:09.895
in your security setup As Bitcoin moves in the future, I think we all think, like,
865
01:02:10.835 --> 01:02:13.895
the price is gonna move the number is gonna go up. And so
866
01:02:14.870 --> 01:02:18.810
at some point, you may get to that stage where you have a lot of paper gains
867
01:02:19.270 --> 01:02:21.770
and you know what number of Bitcoin you're holding
868
01:02:22.375 --> 01:02:31.195
and you know what the notional dollar amount of that is, but you start to wonder if those gains are real or if you're safeguarding them properly or stuff. And I can't emphasize
869
01:02:32.020 --> 01:02:36.920
enough how important it is to encourage everybody to first practice with testnet. And,
870
01:02:37.940 --> 01:02:38.440
most
871
01:02:39.665 --> 01:02:40.165
coordinators
872
01:02:41.025 --> 01:02:41.525
and
873
01:02:41.905 --> 01:02:51.230
all the wallets should be compatible with testnet. So, like, you can stand up a pruned testnet node in a couple hours on your machine and just practice your heart's content. Get comfortable with it.
874
01:02:51.609 --> 01:02:54.990
And then when you move to main net, like, start with some small transactions
875
01:02:56.010 --> 01:03:04.474
and get comfortable just moving the around. Because you you don't want that kinda, like, lingering in the back of your mind, like, can I really make this work when I need to?
876
01:03:05.619 --> 01:03:11.000
877
01:03:11.300 --> 01:03:15.974
the value you're holding is 10 times the amount of value you're holding. Yeah. That's fair.
878
01:03:17.875 --> 01:03:18.375
Totally.
879
01:03:19.394 --> 01:03:25.299
So we have future poll in the comments asking if you can use a USB keyboard to input the seat if you want.
880
01:03:27.920 --> 01:03:29.539
881
01:03:30.195 --> 01:03:33.015
I won't say it will never be supported, but it's probably
882
01:03:33.635 --> 01:03:36.935
with the optimizations that we we came up with the seed QR.
883
01:03:38.400 --> 01:03:44.660
I it it you can probably speak more to this, but it it may just add too much complexity to the the code.
884
01:03:45.600 --> 01:03:51.335
885
01:03:51.635 --> 01:03:52.135
into
886
01:03:52.595 --> 01:03:54.435
887
01:03:54.835 --> 01:03:59.340
888
01:03:59.640 --> 01:04:01.100
to USB power supplies,
889
01:04:01.720 --> 01:04:02.760
so that you have, like,
890
01:04:04.435 --> 01:04:07.655
well, a guarantee in in it's as far as we trust NVK.
891
01:04:08.035 --> 01:04:20.960
892
01:04:21.525 --> 01:04:32.819
893
01:04:33.680 --> 01:04:34.660
security risk.
894
01:04:35.680 --> 01:04:38.225
895
01:04:38.705 --> 01:04:44.625
a a good point with the issue of plugging things into seed sign or plugging anything into a hardware wallet. And that's kind of,
896
01:04:45.345 --> 01:04:46.725
in the back of my mind
897
01:04:47.270 --> 01:04:51.109
when I had because I've had, like, a keep key and I've had a Tresor and,
898
01:04:51.510 --> 01:04:52.650
some of the other ones.
899
01:04:52.950 --> 01:04:55.690
And with my background I have a background in digital forensics.
900
01:04:56.745 --> 01:04:58.445
When you would plug those devices
901
01:04:58.745 --> 01:04:59.965
into your computer,
902
01:05:00.265 --> 01:05:06.270
like, I always just got a queasy feeling, like, who knows what is going over the the USB serial bus? Like,
903
01:05:06.970 --> 01:05:12.430
if my computer is compromised or when I'm updating the firmware, could that be, like, some sort of, you know,
904
01:05:12.810 --> 01:05:13.310
unauthorized
905
01:05:13.935 --> 01:05:23.620
payload that goes in there and, like, makes my device vulnerable, or could it be exfiltrating the private keys? Like, I most of the time, it's completely benign in its operating as it should.
906
01:05:23.940 --> 01:05:24.440
But
907
01:05:24.980 --> 01:05:38.015
just having that device plugged into my laptop, like, always made me uneasy. I don't know if you guys or anybody else felt that way, but, like, the the level of paranoia was just kinda like, I'm not I'm not I'm not crazy about this.
908
01:05:39.360 --> 01:05:45.860
909
01:05:46.425 --> 01:05:52.605
or maybe you can be. Some people fuck they make themselves too complex. You don't wanna make it too complex, but at the same time,
910
01:05:52.984 --> 01:05:55.165
you don't you don't wanna plug these things into computers.
911
01:05:55.690 --> 01:05:59.950
912
01:06:00.890 --> 01:06:01.390
limited
913
01:06:01.690 --> 01:06:03.710
regulated protocol so that,
914
01:06:04.455 --> 01:06:08.635
if you're using the device as it's, you know, currently intended, the only way
915
01:06:08.935 --> 01:06:15.820
information comes into it is via the camera, and the only way that information goes out from it using in a properly air gapped fashion
916
01:06:16.200 --> 01:06:20.859
is via the QR codes that are displayed in the screen or, you know, words that are displayed in the screen.
917
01:06:21.160 --> 01:06:21.480
But,
918
01:06:22.495 --> 01:06:28.595
I really like the regulated protocol of doing the QR's back and forth between my laptop
919
01:06:28.975 --> 01:06:29.795
and SeedSigner
920
01:06:30.095 --> 01:06:30.835
or Spectre,
921
01:06:31.830 --> 01:06:34.570
just because it it limits tax surface
922
01:06:35.110 --> 01:06:37.210
of the interface between the two devices.
923
01:06:41.275 --> 01:06:47.694
924
01:06:49.240 --> 01:06:52.299
I guess, the QR code could be compromised on the online device.
925
01:06:52.680 --> 01:06:55.319
926
01:06:56.335 --> 01:07:05.875
you'd have to have some technical expertise to do this. But, I mean, you can scan either an XPub or, you know, any of the transaction with your phone and decode it that way,
927
01:07:06.690 --> 01:07:08.710
because it's none of that is secret information.
928
01:07:09.650 --> 01:07:11.269
929
01:07:11.730 --> 01:07:17.405
There is a privacy risk. And there's a privacy risk with your coordinator, whether that's on your computer,
930
01:07:17.705 --> 01:07:18.925
on an online device,
931
01:07:19.705 --> 01:07:22.685
if that's Spectre desktop, or if it's on a phone with BlueWallet.
932
01:07:23.150 --> 01:07:28.370
There's a privacy risk there. So in an ideal setup, you're using a dedicated machine
933
01:07:29.070 --> 01:07:30.050
for your coordinator.
934
01:07:30.664 --> 01:07:35.805
935
01:07:36.585 --> 01:07:40.599
So as the QR protocol standardize, because there there are a couple of different
936
01:07:41.220 --> 01:07:42.200
ways of,
937
01:07:42.660 --> 01:07:44.039
encoding a PSBT
938
01:07:44.500 --> 01:07:45.720
into QR codes.
939
01:07:46.339 --> 01:07:47.720
And as those
940
01:07:48.695 --> 01:07:50.155
as we converge on standards,
941
01:07:51.095 --> 01:07:53.115
I'm hoping that you'll be able to,
942
01:07:54.215 --> 01:07:56.875
use, like, your seed signer to validate
943
01:07:57.570 --> 01:08:00.310
the XPub that's produced by your Cobo Vault.
944
01:08:00.770 --> 01:08:01.270
So
945
01:08:01.570 --> 01:08:03.010
right now, if you,
946
01:08:03.730 --> 01:08:07.030
let's say you're using a Cobo Vault and you use inspector desktop
947
01:08:07.715 --> 01:08:12.455
and you wanna set up a multisig wallet with your Cobo Vault as one of the cosigners.
948
01:08:13.155 --> 01:08:13.895
So you,
949
01:08:14.435 --> 01:08:24.285
I'm not either you let it generate a seed for you or you input a seed that you've securely generated, and now you have this extended public key that you wanna input in the Spectre. So
950
01:08:24.665 --> 01:08:31.085
you do that via QR codes, you input the XPUB and a Spectre, and then in Spectre, you have, like, an alphanumeric string
951
01:08:31.520 --> 01:08:32.739
that represents your XPUB.
952
01:08:33.440 --> 01:08:37.300
What I'd encourage people to do is take another hardware device like SeedSigner
953
01:08:37.920 --> 01:08:40.179
and put your seed into that device too,
954
01:08:40.735 --> 01:08:50.275
And then go to generate next pub. And what we do is we'll also show you, like, the derivation path, the parent fingerprint, and then the extended public key so that you can
955
01:08:50.590 --> 01:08:51.490
compare that
956
01:08:51.950 --> 01:08:54.290
with, what your other hardware device
957
01:08:54.670 --> 01:08:57.170
already put into, say, Spectre. There's one
958
01:08:57.715 --> 01:08:59.415
attack that was just described.
959
01:09:00.595 --> 01:09:04.055
I I forget who described it, but it was like, what if what if basically
960
01:09:04.435 --> 01:09:09.080
you enter a seed into your hardware wallet it gives you an XPUB, but the XPUB isn't really
961
01:09:09.460 --> 01:09:11.320
representative of your seed. It's a
962
01:09:11.620 --> 01:09:12.840
preconceived XPUB
963
01:09:13.380 --> 01:09:13.945
that is,
964
01:09:14.465 --> 01:09:31.860
you know, some kind of retirement attack or it's it's it's Right. Representing something else. So getting to the point where these devices Someone else's ex pub. Right. So these devices can be used to kinda cross check each other. I think that'd be a great space for, like, the over overall kinda wallet ecosystem. Agreed.
965
01:09:32.535 --> 01:09:42.540
966
01:09:44.440 --> 01:09:45.820
what are your feelings here?
967
01:09:46.440 --> 01:09:56.605
968
01:09:56.985 --> 01:09:59.645
Pretty much a standard Raspberry Pi camera should work.
969
01:10:00.030 --> 01:10:00.690
And that
970
01:10:01.470 --> 01:10:01.970
Waveshare,
971
01:10:04.030 --> 01:10:07.730
combination controls and LCD hat is kind of our Achilles heel
972
01:10:08.125 --> 01:10:19.540
because only Waveshare makes it. And actually, Waveshare makes multiple versions of kinda the same thing. So we've had it to where people have bought, like, slightly wrong models that are, a different pixel count.
973
01:10:19.920 --> 01:10:24.500
And we're dialed in on this very specific 240 by 240 pixel,
974
01:10:25.435 --> 01:10:27.455
model display hat. So
975
01:10:27.915 --> 01:10:32.795
that's kind of an issue. If they discontinue that, we're we're gonna be hustling to,
976
01:10:33.195 --> 01:10:34.495
get to a different platform.
977
01:10:35.040 --> 01:10:37.200
But that's also a good avenue to,
978
01:10:38.960 --> 01:10:42.260
talk about. We're we're hoping in the future to move to
979
01:10:42.605 --> 01:10:45.985
supporting a secondary hardware profile to where we can keep the current,
980
01:10:47.005 --> 01:10:51.745
the current LCD hat, but we'd also like to get to a larger screen that's a touch screen profile
981
01:10:52.400 --> 01:10:55.220
just because we'd be able to pack more density in the QRs.
982
01:10:55.680 --> 01:10:57.700
And I think it'd be a little bit more approachable,
983
01:10:58.640 --> 01:11:01.060
maybe a little more intuitive interface for people.
984
01:11:01.465 --> 01:11:06.525
It's all kind of experimental, and and Keith is kind of the lead in figuring out,
985
01:11:06.985 --> 01:11:07.485
what
986
01:11:08.185 --> 01:11:08.665
what,
987
01:11:09.065 --> 01:11:09.565
LCD
988
01:11:10.020 --> 01:11:11.560
touchscreen makes sense,
989
01:11:12.179 --> 01:11:14.119
but that's the direction we'd like to get to.
990
01:11:14.500 --> 01:11:17.080
991
01:11:17.675 --> 01:11:21.855
less the animated QR codes would have to wouldn't be as long?
992
01:11:22.635 --> 01:11:26.415
993
01:11:26.969 --> 01:11:27.469
implemented,
994
01:11:28.010 --> 01:11:30.989
in his last one of his last 2 or 3 releases
995
01:11:31.370 --> 01:11:35.390
that helped us immensely because the number of squares that are in that QR code,
996
01:11:36.435 --> 01:11:37.335
basically dictates
997
01:11:37.635 --> 01:11:51.500
the density of the amount of information that you can encode into a single QR code. So if you make the QR code a little bigger and, like, pack more squares into it, you can reduce the overall amount of, like, say, animated QR frames that you have to exchange.
998
01:11:52.695 --> 01:11:54.495
That's just part of the process of
999
01:11:54.935 --> 01:11:58.315
we're optimizing it as much as we can on our end, and some of the the
1000
01:11:59.015 --> 01:12:05.600
the multisig coordinators have been super helpful with optimizing it on their end. But, yeah, like you're saying, so if if we go to a bigger screen,
1001
01:12:05.980 --> 01:12:09.280
we can put more squares in the QR code, and that means less frames
1002
01:12:09.955 --> 01:12:18.215
you have to pass back into your, laptop or, like, quite literally, it's less time that you're holding your your your device's screen up to your webcam.
1003
01:12:18.750 --> 01:12:19.489
1004
01:12:19.790 --> 01:12:20.290
things,
1005
01:12:20.670 --> 01:12:22.050
here to this answer.
1006
01:12:24.030 --> 01:12:27.010
Is first of all, SeedSigner is a free open source project.
1007
01:12:27.365 --> 01:12:30.265
So if something got discontinued, I assume,
1008
01:12:32.005 --> 01:12:35.945
either you guys or another contributor would step up to the plate to
1009
01:12:37.600 --> 01:12:42.980
make it compatible with something that continues to exist. Right. And regardless of that,
1010
01:12:43.865 --> 01:12:46.045
you know, the seed format is standardized,
1011
01:12:46.665 --> 01:12:54.310
so you should be able to, in an emergency situation, import that into some other kind of either signing device or software wallet,
1012
01:12:54.850 --> 01:13:01.990
that supports it. Yep. So your funds aren't at risk there. If if if your seed signer gets destroyed and you can't get the new parts,
1013
01:13:02.845 --> 01:13:04.865
you can migrate that to a new wallet.
1014
01:13:05.725 --> 01:13:11.345
1015
01:13:11.849 --> 01:13:14.349
any Raspberry Pi. You don't have to use
1016
01:13:14.650 --> 01:13:15.150
the
1017
01:13:15.530 --> 01:13:16.030
01.3.
1018
01:13:16.969 --> 01:13:20.510
We we prefer it as the safest method, but,
1019
01:13:21.085 --> 01:13:25.665
Kevin had a question. Can I use the version of the 0 that has Wi Fi? Like, yeah.
1020
01:13:26.765 --> 01:13:29.880
And that weight share display hat,
1021
01:13:30.760 --> 01:13:32.699
either just sits on the,
1022
01:13:33.080 --> 01:13:33.580
GPIO
1023
01:13:33.960 --> 01:13:36.300
pins of the the pi zero,
1024
01:13:36.600 --> 01:13:38.620
but the pi zero has the same pinout
1025
01:13:38.965 --> 01:13:42.825
as all the other Raspberry Pis. So, like, you could download
1026
01:13:43.285 --> 01:13:46.505
the the the seed signer, you know, image,
1027
01:13:46.805 --> 01:13:48.345
put it on an SD card,
1028
01:13:48.740 --> 01:13:55.400
power down your your your Bitcoin node. Right? Pop the SD card out of that, pop in the seed signer card,
1029
01:13:55.780 --> 01:14:18.465
and turn your Bitcoin node into a temporary seed signer. Just slap the the LCD head on top of it and and plug in a camera. Yeah. The camera is the you would need an additional camera. Yeah. I I mean and and, like, you know, they're standard. It's, like, literally, if you just Google, like, Raspberry Pi camera, there's, like, one result that you have to care about. And and, he has a second part of that question. Do you guys disable the Wi Fi if
1030
01:14:18.925 --> 01:14:27.220
1031
01:14:28.560 --> 01:14:31.540
But we've left the Wi Fi enabled for the reason being that
1032
01:14:32.054 --> 01:14:40.875
sometimes people wanna, like, tinker with the platform or help us test advanced versions, and the easiest way to get into the device is through Wi Fi. So the in our builds,
1033
01:14:41.199 --> 01:14:49.840
Wi Fi is still enabled. So we kind of assume if you're using it securely, you've gotten a 1.3 and you're using it that way. Though, if you go through the
1034
01:14:50.725 --> 01:14:58.905
1035
01:14:59.680 --> 01:15:01.780
image of the the Raspberry Pi OS,
1036
01:15:02.160 --> 01:15:08.295
installing dependencies, blah blah blah. The Raspberry Pi OS comes out of the box with,
1037
01:15:08.755 --> 01:15:15.735
Wi Fi disabled. It has a little message at the bottom when you when you sign into it that says it's it's disabled by default. So
1038
01:15:16.070 --> 01:15:20.810
if you do it, like, the the step by step way instead of grabbing the the prebuilt image,
1039
01:15:21.270 --> 01:15:22.650
then you get that for free.
1040
01:15:23.864 --> 01:15:25.805
1041
01:15:27.145 --> 01:15:29.725
be careful where you buy your Raspberry Pi components.
1042
01:15:31.840 --> 01:15:34.740
I guess there is a risk there that they could be tampered with,
1043
01:15:35.440 --> 01:15:36.980
before you receive them.
1044
01:15:38.135 --> 01:15:40.315
Is this something you guys have thought about at all?
1045
01:15:41.495 --> 01:15:44.155
1046
01:15:44.535 --> 01:15:47.195
nobody knows you're buying this for Bitcoin related purposes.
1047
01:15:47.800 --> 01:15:49.659
So if they're tampering with it,
1048
01:15:50.199 --> 01:15:52.300
who knows what they're tampering with it for?
1049
01:15:54.575 --> 01:15:57.635
Yeah. That's I part part of the model with generic
1050
01:15:57.935 --> 01:16:00.594
hardware components is, hopefully, it provides you with
1051
01:16:00.895 --> 01:16:02.435
some kind of level of,
1052
01:16:04.990 --> 01:16:11.650
I don't know if anonymity is not the right word, but some sort of level of almost randomness when you get the components. It's not like you're ordering
1053
01:16:12.675 --> 01:16:16.855
a ledger from Amazon, and everybody at Amazon knows that you're getting a ledger.
1054
01:16:17.795 --> 01:16:21.130
When when you're ordering a Raspberry Pi through, you know, Pomeroney
1055
01:16:22.230 --> 01:16:32.595
or Amazon or any retailer like that, people order these things for all sorts of stuff, so no nobody has a clue what you're gonna use it for. I mean, specifically, I really like the idea of, like, walking in a microcenter and paying with cash
1056
01:16:33.075 --> 01:16:35.815
1057
01:16:36.889 --> 01:16:38.429
Bitcoin specific stuff yet.
1058
01:16:39.130 --> 01:16:46.585
And I guess that's part of the reason why the Pi zero one point three is chose chosen because it does not have Wi Fi or Bluetooth on it at all.
1059
01:16:47.765 --> 01:16:48.745
So I guess
1060
01:16:49.205 --> 01:16:58.639
best practice would be when you when you get your Pi 0 to look up pictures of it online and and check to make sure that nothing looks completely off.
1061
01:16:59.179 --> 01:17:04.955
Right. Check the modules and yeah. Yeah. A lot of these attacks are, like, very low hanging fruit. Like, they
1062
01:17:05.735 --> 01:17:08.315
I mean, there was, like I think there was a ledger attack recently,
1063
01:17:10.160 --> 01:17:14.660
where they they literally put a whole USB flash drive inside the ledger.
1064
01:17:16.255 --> 01:17:20.035
So, I mean, with a ledger, it's not intuitive to open the case.
1065
01:17:20.655 --> 01:17:22.355
You're not supposed to open the case,
1066
01:17:23.295 --> 01:17:34.755
so people might not see it. But with the pi zero, it comes as a bare board. So in that case, you would it'd probably be pretty visible. Right. Right. Right. And another thing to mention is,
1067
01:17:35.795 --> 01:17:39.975
1068
01:17:40.620 --> 01:17:43.040
producing and supporting the Pi Zero through
1069
01:17:43.659 --> 01:17:46.080
it's at least through, like, 2023 or 2024.
1070
01:17:46.460 --> 01:17:46.960
So,
1071
01:17:47.980 --> 01:17:49.920
yeah, who who knows what
1072
01:17:50.385 --> 01:18:01.930
what the future brings for SeedSigner, but I I I'm comfortable that the pie zero is gonna be around for a while. Right now, because of COVID, there are some supply chain issues where they can be a little bit harder to, acquire.
1073
01:18:02.710 --> 01:18:03.210
But,
1074
01:18:03.750 --> 01:18:07.555
I've been in touch with people at the Raspberry Pi Foundation, and they're still,
1075
01:18:08.495 --> 01:18:17.940
they're still taking purchase orders for quantities of pi zeros. So it sounds like they have another run-in the works, so it's it's, still fully in production.
1076
01:18:20.160 --> 01:18:24.180
1077
01:18:24.985 --> 01:18:27.804
you know, on on my wish list is to
1078
01:18:28.105 --> 01:18:30.045
make a version that can run-in,
1079
01:18:31.704 --> 01:18:32.525
as micropython.
1080
01:18:32.850 --> 01:18:36.790
So right now, the Raspberry Pi is a full computer, even though the the tiny
1081
01:18:37.090 --> 01:18:44.955
Raspberry Pi 0 is like the the size of, like, a stick of chewing gum. Like, it's a full computer running, you know, a full operating system.
1082
01:18:45.735 --> 01:18:51.160
And so there's some some weight attached with that. There's some bloat attached with that.
1083
01:18:52.180 --> 01:18:58.535
Like, right now, it takes the seed signer, you know, maybe a minute to to boot up from from, once you power it on.
1084
01:18:59.015 --> 01:19:05.140
Although the custom OS is making some incredible strides to to cut that down to, like, 10 seconds or less.
1085
01:19:06.240 --> 01:19:15.925
But I'd really like to have a micro Python version where it's running on a microcontroller. There's no operating system. It's not running Linux. It's just literally only executing
1086
01:19:16.385 --> 01:19:17.925
the seed signer code.
1087
01:19:19.505 --> 01:19:21.925
And, you know, so the potential is
1088
01:19:22.250 --> 01:19:24.510
you get a you find the right microcontroller
1089
01:19:24.890 --> 01:19:25.390
platform
1090
01:19:25.850 --> 01:19:32.765
that can run, you know, this code and has the same air gapped qualities. It doesn't have Wi Fi on board. It doesn't have Bluetooth,
1091
01:19:33.225 --> 01:19:35.324
can handle a camera being plugged in.
1092
01:19:36.105 --> 01:19:37.565
It's it's kind of a longer
1093
01:19:38.079 --> 01:19:52.035
r and d project to find the right microcontroller that'll have enough horsepower to to do what the the pi zero is doing. But it's not like the pi zero is, like, a a processing powerhouse. Like, it's it's pretty crappy,
1094
01:19:52.815 --> 01:19:57.050
as a as a stand alone computer, because, you know, it's $5. Like, what do you expect?
1095
01:19:58.070 --> 01:20:01.990
But even compared to a a Raspberry Pi 4, like the the 0 is,
1096
01:20:02.675 --> 01:20:03.575
it's really weak.
1097
01:20:04.035 --> 01:20:07.575
So I'm I'm hoping that eventually we can get that
1098
01:20:08.035 --> 01:20:10.055
microcontroller version instead of
1099
01:20:10.540 --> 01:20:12.160
Linux OS based version.
1100
01:20:12.620 --> 01:20:19.040
And then that just opens the door to a huge variety of different microcontroller chips out there,
1101
01:20:19.994 --> 01:20:21.375
that that we can pick from.
1102
01:20:25.355 --> 01:20:27.775
1103
01:20:28.490 --> 01:20:29.630
just now about,
1104
01:20:30.890 --> 01:20:31.390
gaps
1105
01:20:31.850 --> 01:20:35.710
and contributors development skills. Keith can probably speak more to this, but,
1106
01:20:37.025 --> 01:20:42.405
we've we're we're kind of looking for somebody right now who has maybe some knowledge of GPIO and SPI
1107
01:20:43.105 --> 01:20:46.244
who, and maybe some experience with some of these touch screens
1108
01:20:46.820 --> 01:20:48.440
who could kinda jump start,
1109
01:20:49.300 --> 01:20:49.800
getting
1110
01:20:50.260 --> 01:20:53.080
the touch screen UI and a second hardware profile,
1111
01:20:54.155 --> 01:20:58.975
running. That's the first one that pops into my head. There's also to other kind of less technical
1112
01:20:59.595 --> 01:21:00.495
areas of
1113
01:21:00.949 --> 01:21:03.130
contribution I can think of. But yeah.
1114
01:21:04.150 --> 01:21:05.610
1115
01:21:06.389 --> 01:21:11.335
1116
01:21:12.435 --> 01:21:17.255
explainer videos and just how to videos or videos of people using the device
1117
01:21:18.030 --> 01:21:19.889
especially in, like, other languages.
1118
01:21:21.710 --> 01:21:26.190
We haven't mentioned it yet, but we just recently launched finally seed center.com, which is kind of
1119
01:21:27.575 --> 01:21:36.715
it's great to have a one stop shop where everybody can get, you know, a link to the latest release and go to look at the GitHub repo and see some of the media appearances. And,
1120
01:21:37.550 --> 01:21:38.050
one
1121
01:21:38.430 --> 01:21:41.010
section I'm really excited about there is explainer videos.
1122
01:21:41.470 --> 01:21:45.890
Just getting a ton of, like, short videos so that, like, if you're curious to learn more about SeedSigner,
1123
01:21:46.765 --> 01:21:50.145
and I'm gonna be making some of these myself, but people with video
1124
01:21:50.605 --> 01:22:00.159
production skills like to just sit down and make, like, a short understandable video of how to input a seed, how to generate an XPub and import it into your coordinator,
1125
01:22:00.860 --> 01:22:07.225
how to sign a transaction, how to generate a seed with, you know, the seed from digital photo feature,
1126
01:22:07.765 --> 01:22:13.545
and just stuff like that. Like, that's that's pretty low hanging fruit that people don't need a lot of technical chops to get into.
1127
01:22:15.210 --> 01:22:19.790
But, yeah, I I've been thrilled over the last few months with how people have
1128
01:22:20.170 --> 01:22:26.145
kinda jumped in in all sorts of areas that, like, you know, Keith was obviously a big one, but
1129
01:22:26.605 --> 01:22:28.065
we're also looking at
1130
01:22:28.445 --> 01:22:28.925
over,
1131
01:22:29.245 --> 01:22:30.785
overhauling the user interface
1132
01:22:31.200 --> 01:22:37.860
from the video that you showed before. Like, you can see that we have, like, a pretty basic, almost DOS like interface where you're just selecting
1133
01:22:38.240 --> 01:22:42.005
menu options that are highlighted and displayed on the screen. And there's
1134
01:22:42.945 --> 01:22:44.165
a a guy with a handle
1135
01:22:44.545 --> 01:22:46.885
that goes by I think his handle's easy,
1136
01:22:47.185 --> 01:22:56.150
who has apparently, his day job is in graphic designer and user interface design, and he's helped us kinda, like, conceive of. So if we move to a more
1137
01:22:56.610 --> 01:23:00.724
graphical based user interface, what does that look like, and how much is that gonna,
1138
01:23:01.264 --> 01:23:02.565
give us in terms of
1139
01:23:03.105 --> 01:23:07.525
making the operating system more approachable to people and more intuitive for people to use?
1140
01:23:08.020 --> 01:23:10.040
But the the website that I mentioned,
1141
01:23:11.380 --> 01:23:13.880
a guy named Jay, who I believe is in the Philippines,
1142
01:23:14.420 --> 01:23:18.795
kinda jumped in, and at no cost, he's he's apparently a web developer by trade,
1143
01:23:19.895 --> 01:23:24.395
has has done most most most of the the website coding.
1144
01:23:25.335 --> 01:23:34.864
There's a guy named Richard I'll give a shout out to who is, in the European Union who's been a huge help with me testing different enclosure versions
1145
01:23:35.405 --> 01:23:36.705
and even shipping out,
1146
01:23:38.125 --> 01:23:41.185
shipping out 3 d printed enclosures that he's printed himself
1147
01:23:41.660 --> 01:23:44.480
to different people that are interested in trying it out
1148
01:23:44.780 --> 01:23:47.120
or, are interested in building one for themselves.
1149
01:23:48.620 --> 01:23:50.480
The the guy who did our logo,
1150
01:23:51.635 --> 01:23:53.735
can't think of his name, but he's from South America.
1151
01:23:54.355 --> 01:23:54.855
I,
1152
01:23:55.315 --> 01:23:59.255
sent him a, like, a t shirt and some other things
1153
01:23:59.650 --> 01:24:03.190
as a thank you through snail mail. So it's just I I've been humbled
1154
01:24:03.650 --> 01:24:13.295
by people who have just stepped up and, like, you know, I may not know how code, but I can design a logo or I can build a website or I can make explainer videos. It's it's like, this is truly
1155
01:24:13.755 --> 01:24:18.780
a community thing to where I I couldn't do all this stuff myself. It's it's been awesome to experience.
1156
01:24:21.560 --> 01:24:26.380
1157
01:24:26.685 --> 01:24:28.065
Yes. Who who predates
1158
01:24:28.445 --> 01:24:29.985
my involvement in the project.
1159
01:24:31.165 --> 01:24:38.520
You know, my my understanding is, you know, seed did the, like, original r and d, got, like, proof of concept up and running,
1160
01:24:39.220 --> 01:24:42.040
started building just a kind of, you know,
1161
01:24:42.395 --> 01:24:45.855
sort of publicity platform so people would start noticing the project.
1162
01:24:46.315 --> 01:24:47.855
And then Nick entered,
1163
01:24:48.235 --> 01:24:49.614
and he has
1164
01:24:50.120 --> 01:24:52.140
a much deeper programming experience.
1165
01:24:52.520 --> 01:24:57.260
And so just started really professionalizing the code and revamping and reorganizing.
1166
01:24:58.840 --> 01:25:20.205
And he's really the technical expert on the Bitcoin side. So, like, I was so excited to to join this stream, but I was also terrified because I'm like, I'm such a huge fraud. Like, I don't understand the details, the, you know, the the the super techie details of our PSB Ts and, you know, all the other stuff because that's that's all Nick. Like, he's the one
1167
01:25:20.585 --> 01:25:21.324
in the trenches,
1168
01:25:22.025 --> 01:25:25.085
you know, handling the PSB Ts, handling the QR formats,
1169
01:25:25.830 --> 01:25:28.570
talking with all the other wallet and coordinator developers.
1170
01:25:29.590 --> 01:25:31.590
So huge, huge shout out to Nick.
1171
01:25:31.910 --> 01:25:39.345
Like, you know, Seed and Nick got this project to a point where it was on it had such a strong foundation built
1172
01:25:39.699 --> 01:25:45.560
that I was able to come in later and just start playing and making, like, fun new features for it.
1173
01:25:46.260 --> 01:26:00.250
1174
01:26:00.950 --> 01:26:02.650
that I was on, you know,
1175
01:26:03.295 --> 01:26:06.034
I was on Stack Exchange and Googling and, like,
1176
01:26:06.415 --> 01:26:09.074
just trying to get a basic proof of concept.
1177
01:26:10.175 --> 01:26:11.955
And also a shout out to,
1178
01:26:12.680 --> 01:26:13.660
Stepan from,
1179
01:26:14.120 --> 01:26:14.620
Specter.
1180
01:26:15.160 --> 01:26:17.260
Like, I was in his Telegram DMs,
1181
01:26:17.880 --> 01:26:23.365
and he created the, embed Python library that we lean on to do some of the heavier lifting
1182
01:26:23.745 --> 01:26:30.940
with the signatures and the protocol work. And it's, it's an open source library that he's put out there for embedded Python devices,
1183
01:26:31.480 --> 01:26:36.700
and it it's like it it made our thing definitely possible. And he was also just so,
1184
01:26:38.985 --> 01:26:42.844
so patient with my, you know, idiot newbie, I don't know how to code questions,
1185
01:26:43.305 --> 01:26:45.405
and how can I make this work kinda questions?
1186
01:26:46.425 --> 01:26:50.429
But yeah, Nick coming in was like the game changer because
1187
01:26:50.889 --> 01:26:52.670
even I had interacted with,
1188
01:26:53.290 --> 01:27:00.645
Michael Flaxman a little bit when I had the proof of concept up, And he had looked at the repo, and he was like, oh my gosh. This is like spaghetti code.
1189
01:27:01.985 --> 01:27:02.385
And,
1190
01:27:03.025 --> 01:27:11.270
Nick, like, I I can't remember how Nick stumbled. I think Nick actually just came across the project through GitHub, not even from our Twitter account.
1191
01:27:11.810 --> 01:27:12.130
And,
1192
01:27:13.455 --> 01:27:17.955
he's also a a cur by trade and just brought immense knowledge of, like,
1193
01:27:18.655 --> 01:27:19.155
Python
1194
01:27:20.450 --> 01:27:24.550
coding convention, coding structure, what makes sense, what's the most efficient
1195
01:27:25.090 --> 01:27:27.990
structures for what we're trying to do, and, like, yeah, I I
1196
01:27:28.415 --> 01:27:30.515
I, we we wouldn't be here without
1197
01:27:30.895 --> 01:27:32.455
Nick. I wish he could've,
1198
01:27:32.895 --> 01:27:42.870
1199
01:27:44.175 --> 01:27:50.195
1200
01:27:50.560 --> 01:27:54.100
1201
01:27:54.480 --> 01:27:55.699
and keep moving forward.
1202
01:27:58.135 --> 01:28:00.695
Yeah. I I appreciate you both. I I this is,
1203
01:28:02.775 --> 01:28:09.920
this is what it's about. You know? This is this is awesome. I I I love how the community comes together around these types of projects.
1204
01:28:11.260 --> 01:28:12.720
So I assume,
1205
01:28:13.954 --> 01:28:15.414
see, this is your first
1206
01:28:15.795 --> 01:28:17.014
open source project.
1207
01:28:18.434 --> 01:28:19.895
1208
01:28:20.760 --> 01:28:22.220
So I'm a stay at home dad.
1209
01:28:23.480 --> 01:28:25.500
I people who've listened to other podcasts
1210
01:28:26.120 --> 01:28:28.300
know probably have heard a little bit about my background,
1211
01:28:28.665 --> 01:28:31.005
but I'm a retired police officer, actually.
1212
01:28:32.264 --> 01:28:35.165
I was a local cop for 15 years,
1213
01:28:35.770 --> 01:28:36.270
and
1214
01:28:36.730 --> 01:28:38.350
I was lucky enough
1215
01:28:39.050 --> 01:28:39.550
that
1216
01:28:39.929 --> 01:28:42.989
I had a I had a background in technology, background in computers.
1217
01:28:43.705 --> 01:28:46.045
And about 3 years into my police career,
1218
01:28:47.945 --> 01:28:48.445
somebody
1219
01:28:48.824 --> 01:28:55.940
higher up than me knew that I had background in computers and was aware of a digital forensics group where I live who is kinda spinning up
1220
01:28:56.320 --> 01:28:57.460
and looking for,
1221
01:28:58.160 --> 01:28:59.620
new contributors, new members.
1222
01:29:00.005 --> 01:29:04.264
So early in my career, I was given the opportunity to join this digital forensic group. So I spent
1223
01:29:04.965 --> 01:29:07.784
the majority of my law enforcement career, like, in a lab setting,
1224
01:29:08.650 --> 01:29:10.110
taking apart computers
1225
01:29:10.650 --> 01:29:12.350
and hard drives and,
1226
01:29:13.930 --> 01:29:15.815
laptops, thumb drives, and and
1227
01:29:16.375 --> 01:29:18.155
figuring out how to assist prosecutors
1228
01:29:18.455 --> 01:29:18.935
in,
1229
01:29:20.135 --> 01:29:20.614
in,
1230
01:29:21.415 --> 01:29:22.715
making cases, which
1231
01:29:23.150 --> 01:29:26.849
is a little bit weird for me in the Bitcoin community. Yeah. You're the spook.
1232
01:29:27.630 --> 01:29:31.614
Basically. Yeah. Are you still the spook if you're, like, out as the spook? Is that
1233
01:29:32.335 --> 01:29:34.434
1234
01:29:34.735 --> 01:29:36.915
1235
01:29:38.150 --> 01:29:41.850
No. The the majority of my work was in, crimes against children,
1236
01:29:42.390 --> 01:29:43.850
so I'm, like,
1237
01:29:44.755 --> 01:29:47.575
I I'm super proud of the work that I did, but I actually
1238
01:29:48.195 --> 01:29:50.775
learned of Bitcoin through work. So,
1239
01:29:51.875 --> 01:29:52.695
in 2013,
1240
01:29:53.950 --> 01:29:57.970
I was, you know, having a water cooler conversation with a couple of the other examiners,
1241
01:29:58.910 --> 01:30:03.330
and one guy is telling me about this case that he's working on where there's this local kid
1242
01:30:03.935 --> 01:30:04.415
who,
1243
01:30:04.815 --> 01:30:07.235
got, like, a pretty high end gaming rig,
1244
01:30:08.335 --> 01:30:09.395
a desktop computer
1245
01:30:10.550 --> 01:30:15.450
for Christmas or for, you know, his birthday or whatever. And instead of using it to play
1246
01:30:16.150 --> 01:30:27.005
call of duty or whatever would have been the game at the time, He was mining Bitcoin with this gaming rig with the GPU, and this was in 2013, so it was still kind of at the tail end of when GPU mining was viable.
1247
01:30:27.579 --> 01:30:34.719
But he'd take the Bitcoins that he mined and purchase weed on the Silk Road that he'd have delivered to, you know, his house with his parents.
1248
01:30:35.085 --> 01:30:40.305
He'd break it into smaller packages and take it to school, and it was making a tidy little profit,
1249
01:30:41.005 --> 01:30:43.405
selling dime bags to, you know, his,
1250
01:30:43.805 --> 01:30:44.705
fellow students.
1251
01:30:45.550 --> 01:30:46.210
And so
1252
01:30:47.550 --> 01:30:57.094
I was kinda, like, stupefied by this Bitcoin thing. I I started googling it, and it didn't make sense to me. Like, why people why would you be using a GPU to to generate all this compute to,
1253
01:30:57.795 --> 01:31:01.574
like, mine these coins? It just it was such a foreign concept. So I
1254
01:31:01.960 --> 01:31:07.420
I heard about it, researched it. It didn't make sense. I didn't know if it was like a SETI or like a folding at home thing.
1255
01:31:08.760 --> 01:31:14.264
And then for whatever reason, like, in March of 2013, I circled back to it, and that was kind of during,
1256
01:31:15.045 --> 01:31:17.465
a period of price appreciation. And I was probably,
1257
01:31:18.010 --> 01:31:21.550
kinda back of my mind looking for investments at the time. So I started
1258
01:31:22.570 --> 01:31:25.950
learning more and more about it. It was like one of those, like, you
1259
01:31:26.675 --> 01:31:29.495
you come for the gains and stay for the freedom kind of things.
1260
01:31:30.835 --> 01:31:32.455
1261
01:31:32.915 --> 01:31:34.935
Bitcoin intro stories I've ever heard.
1262
01:31:35.380 --> 01:31:36.260
1263
01:31:37.060 --> 01:31:38.520
so, you know, I still
1264
01:31:39.060 --> 01:31:43.480
I still was probably in the forensics business for 7 or 8 years after that.
1265
01:31:43.955 --> 01:31:44.455
So,
1266
01:31:46.435 --> 01:31:49.554
I was when everybody first gets into Bitcoin, what's the,
1267
01:31:50.195 --> 01:31:54.500
the way that they think is the best way to acquire Bitcoin is obviously through mining.
1268
01:31:55.199 --> 01:31:56.420
So I was
1269
01:31:56.880 --> 01:31:58.900
a participant in some of the earliest
1270
01:31:59.840 --> 01:32:01.219
kinda ASIC ventures.
1271
01:32:01.675 --> 01:32:18.090
Did you preorder Butterfly Labs? I did. And I was like the guy checking the website, and they'd say every 2 weeks, it'd be like, oh, we think we're gonna send someone about 2 weeks. But, like, I was just thinking about that earlier tonight, like, what a comical sell to my wife that I've just learned about this thing called Bitcoin.
1272
01:32:18.445 --> 01:32:20.865
And I'm telling her that we should spend $45100
1273
01:32:21.645 --> 01:32:22.625
on this, like,
1274
01:32:23.565 --> 01:32:30.500
this special computer that all it can do is generate Bitcoin, and we're not even sure if they're gonna be able to finish development of it, but they need the money up front.
1275
01:32:31.440 --> 01:32:31.760
So,
1276
01:32:32.560 --> 01:32:34.580
yeah. That and I actually sold
1277
01:32:36.025 --> 01:32:41.245
my preorder for Butterfly Labs on eBay. I have no idea how that would get through, like, eBay's,
1278
01:32:41.785 --> 01:32:42.765
you know, like,
1279
01:32:43.520 --> 01:32:44.420
fraud stuff,
1280
01:32:44.880 --> 01:32:47.380
but I never actually even received the device.
1281
01:32:48.800 --> 01:32:52.580
I sold the preorder on eBay, and once the auction had settled,
1282
01:32:54.724 --> 01:33:12.395
I changed the ship to address in my Butterfly Labs account, and it shipped directly to somebody else who you know, if they got it and plugged it in, like, they did very well with it. But I I was getting uneasy and was looking to offload the risk associated with Butterfly Labs at that point. A lot of people, I don't think, received devices.
1283
01:33:13.335 --> 01:33:27.305
Yeah. And there was there was all sorts of rumors that Butterfly Labs was mining with with, the devices before they'd shipped them because they're in the middle of a bull market and they're, you know, air quotes, testing the devices. It was very common back then. Yeah. Yeah. Yeah.
1284
01:33:28.745 --> 01:33:30.365
But also through, like,
1285
01:33:30.985 --> 01:33:31.965
Bitcoin talk,
1286
01:33:32.585 --> 01:33:33.725
there was a guy named
1287
01:33:34.105 --> 01:33:34.560
Yif
1288
01:33:35.360 --> 01:33:41.460
Yifigiu, or I'm I'm sure I'm butchering that name, but he was one of the earliest ASIC chip designers.
1289
01:33:42.385 --> 01:33:48.085
And there were all these people on Bitcoin Talk that were organizing group purchases of chips from him
1290
01:33:48.625 --> 01:33:51.630
to design, like, custom mining hardware. That was
1291
01:33:54.410 --> 01:33:54.970
pretty crazy back then. Yeah. Yeah. It was.
1292
01:33:58.185 --> 01:34:01.885
Stuff fell through. That was pretty crazy back then. Yeah. Yeah. It was.
1293
01:34:02.265 --> 01:34:05.965
1294
01:34:07.500 --> 01:34:10.480
you know, being the lead maintainer of an open source project.
1295
01:34:11.660 --> 01:34:14.640
1296
01:34:15.100 --> 01:34:17.474
I don't have a lot to compare it to, but it's,
1297
01:34:19.455 --> 01:34:19.955
it's
1298
01:34:21.775 --> 01:34:22.275
it's,
1299
01:34:23.430 --> 01:34:25.770
I there's not much to say about it. Like, I
1300
01:34:26.150 --> 01:34:32.969
I have some level of trust in the developers. I've kinda fallen into a less technical role where I test the hell out of the code that
1301
01:34:33.335 --> 01:34:34.074
that they,
1302
01:34:34.454 --> 01:34:36.795
put in some of our test branches in the repo.
1303
01:34:37.255 --> 01:34:47.560
And I can read enough Python to understand what's going on, but some of the structures that these guys come up with aren't stuff that I myself could come up with. So if I spider my way through the the code, I can get it.
1304
01:34:49.400 --> 01:34:56.605
But it it was, gosh, this is probably embarrassing to say, but it was the first time I'd set up a a GPG key. And it was actually
1305
01:34:57.465 --> 01:34:59.325
1306
01:35:00.890 --> 01:35:01.470
1307
01:35:02.090 --> 01:35:02.750
I think
1308
01:35:03.690 --> 01:35:04.570
it it was,
1309
01:35:05.850 --> 01:35:07.150
one of your favorite,
1310
01:35:08.730 --> 01:35:09.710
anon accounts.
1311
01:35:10.285 --> 01:35:11.905
It's like numbers, like, 4704.
1312
01:35:12.285 --> 01:35:15.105
That's not it, but it's something like 102? That's 6102.
1313
01:35:16.045 --> 01:35:18.145
He had been in touch with OpenNoms
1314
01:35:19.300 --> 01:35:19.800
and,
1315
01:35:20.739 --> 01:35:24.600
asked me to set up a GPG key to start establishing kind of a trust
1316
01:35:25.060 --> 01:35:30.845
trust chain and a reputation for the releases to at least, like, if you were willing to accept the
1317
01:35:31.305 --> 01:35:37.480
the security trade off of a precompiled release, at least we could have kinda like a track record to go with go with
1318
01:35:37.940 --> 01:35:50.215
1319
01:35:50.675 --> 01:36:03.260
Have you ever met him in person, or is that not a thing? I I hopefully, one day, he will trust me enough for that to happen. But that's gonna be on his terms, not mine. I just expect him to just, like, show up one day.
1320
01:36:04.585 --> 01:36:06.925
1321
01:36:07.545 --> 01:36:12.030
When I tweeted out the video of my demo doing the human transcription
1322
01:36:19.605 --> 01:36:22.505
3 years ago or something that was basically describing
1323
01:36:23.284 --> 01:36:24.505
exactly what I built.
1324
01:36:25.364 --> 01:36:28.670
So, you know, he he was there 3 years before I ever got there.
1325
01:36:29.390 --> 01:36:30.770
1326
01:36:31.469 --> 01:36:32.370
He was pretty
1327
01:36:32.750 --> 01:36:36.850
he was he he was pretty proud that we got there. So thank you for that.
1328
01:36:37.790 --> 01:36:38.530
Very cool.
1329
01:36:38.895 --> 01:36:41.395
Keith, I mean, while we're here, you know,
1330
01:36:42.014 --> 01:36:43.395
seed story was very
1331
01:36:44.494 --> 01:36:47.235
novel. Do you what's what was your Bitcoin story?
1332
01:36:48.870 --> 01:36:50.170
1333
01:36:50.470 --> 01:36:51.450
Python dev.
1334
01:36:52.550 --> 01:36:55.930
You know, my first exposures to Bitcoin were through,
1335
01:36:56.470 --> 01:37:03.175
I think there were there were a series of wired articles over some of the early years, you know, talking about, Silk Road and,
1336
01:37:03.815 --> 01:37:04.635
Mt. Gox.
1337
01:37:05.175 --> 01:37:06.650
And each time
1338
01:37:07.190 --> 01:37:09.130
I would come across one of these articles,
1339
01:37:09.590 --> 01:37:19.035
I was just fascinated. I was like, oh my god. This is, like, just crazy interesting stuff. I need to I need to learn more. And then I would put the magazine down and, like,
1340
01:37:19.495 --> 01:37:32.635
I would lose the train of thought. And then, like, a year or 2 would go by, and then I'd pick up another issue, and there's another art you know, article on on Bitcoin. I'm like, oh, that's right. This Bitcoin thing. It's so interesting. And And then I put the magazine down, and I forgot about it again.
1341
01:37:33.095 --> 01:37:33.595
And
1342
01:37:33.975 --> 01:37:34.475
finally,
1343
01:37:35.015 --> 01:37:36.795
for whatever reason, in 2017,
1344
01:37:37.660 --> 01:37:44.480
you know, I'd wasted 3 or 4 years at that point. I was finally like, okay. I gotta dig in and and learn what this thing is about.
1345
01:37:46.034 --> 01:37:46.855
So damn.
1346
01:37:48.434 --> 01:37:53.335
1347
01:37:53.710 --> 01:38:14.320
didn't think Bitcoin was a scam. Yeah. Yeah. Yeah. It's a very common theme. I would say Seed's, story is is is way more novel than any story I've heard. The big meme in the space is, like, every Bitcoin podcast starts off with, well, what is your Bitcoin story? And almost all of them are the same. It's like, oh, I heard about it really early, completely dismissed it,
1348
01:38:14.860 --> 01:38:16.400
and then I came back later
1349
01:38:17.179 --> 01:38:19.040
after, like, the 4th time I heard it.
1350
01:38:21.614 --> 01:38:22.114
Awesome.
1351
01:38:22.494 --> 01:38:23.135
1352
01:38:23.614 --> 01:38:25.315
is it like a funny side story?
1353
01:38:26.255 --> 01:38:34.750
When I was still working in the computer lab, so we had this training room where we had, like, 24 computers. They're all pretty basic computers, but this is during 2013
1354
01:38:35.130 --> 01:38:36.909
during the first, like,
1355
01:38:37.449 --> 01:38:37.949
shitcoin
1356
01:38:38.945 --> 01:38:40.085
total craziness.
1357
01:38:40.705 --> 01:38:41.745
And one of the,
1358
01:38:42.945 --> 01:38:45.045
one of the particular, like,
1359
01:38:45.665 --> 01:38:46.725
strains of shitcoin
1360
01:38:47.230 --> 01:39:01.645
was that it was something that you could only mine with a CPU, like, they had an algorithm that would rotate and it wasn't something that a GPU could do. So, I had set up all 24 of these computers in our training room to mine Prime Coin and then probably something else.
1361
01:39:02.160 --> 01:39:02.900
And that was
1362
01:39:03.520 --> 01:39:04.420
also when,
1363
01:39:06.000 --> 01:39:06.580
like, BTCE
1364
01:39:07.360 --> 01:39:10.420
was still in existence, so you could exchange coins,
1365
01:39:11.405 --> 01:39:13.905
without doing any any KYC at that point.
1366
01:39:14.445 --> 01:39:17.665
And, we mined enough of these shitcoins that, like,
1367
01:39:17.970 --> 01:39:22.950
our forensic lab actually had a Bitcoin wallet that appreciated over time, and we were able to,
1368
01:39:23.970 --> 01:39:26.310
purchase, like, equipment for our work,
1369
01:39:27.235 --> 01:39:29.655
when we got into, like, subsequent price runs.
1370
01:39:30.275 --> 01:39:30.775
So
1371
01:39:31.075 --> 01:39:33.095
at one point, I think I bought, like,
1372
01:39:34.250 --> 01:39:35.390
I bought an Imac
1373
01:39:36.010 --> 01:39:37.630
with some of the Bitcoin that we'd
1374
01:39:38.090 --> 01:39:39.710
we'd indirectly mined,
1375
01:39:40.250 --> 01:39:43.795
and then, like, we bought new monitors for everybody in 2017. It was,
1376
01:39:44.915 --> 01:39:49.895
somebody just put up in the chat, like, the troll box in BTC, which is, like, the mother of all,
1377
01:39:50.355 --> 01:39:50.855
like,
1378
01:39:51.429 --> 01:39:51.929
trading,
1379
01:39:52.949 --> 01:39:53.850
rumor mills.
1380
01:39:54.230 --> 01:39:58.409
But, yeah, there's, like, so much lore in the early days of Bitcoin that's, like,
1381
01:39:58.775 --> 01:40:03.435
1382
01:40:05.415 --> 01:40:06.315
1383
01:40:07.250 --> 01:40:09.170
other than, you know, the day that the,
1384
01:40:09.730 --> 01:40:15.830
you know, the URL or whatever came up is the domain came up as being seized. I don't remember how it was executed. How was it?
1385
01:40:17.225 --> 01:40:20.365
1386
01:40:21.305 --> 01:40:27.480
and, he was he was vacationing in in Greece, I if I recall correctly.
1387
01:40:30.100 --> 01:40:45.219
And the the way full disk encryption works is it activates when when your device is off. Mhmm. So the key is you you want to get I mean, you know better than most. I mean, the so the key is you wanna get them while the device is on and they're signed into everything. Sure.
1388
01:40:45.760 --> 01:40:48.580
So he was on vacation. He was signed into everything at BTC,
1389
01:40:50.335 --> 01:40:56.514
and they took an unmarked car, and they rammed it through his vacation home gates. And he, like, ran out in his robe,
1390
01:40:57.020 --> 01:40:59.680
And then they arrested him, and he was signed into everything.
1391
01:41:00.700 --> 01:41:02.540
1392
01:41:03.100 --> 01:41:09.265
how they got Ross Ulbrich too Right. Was that he was operating in a, I think it was a public library.
1393
01:41:09.885 --> 01:41:17.070
And Correct. Somehow, they distracted him from his screen or something and and, like, physically converged on him so he couldn't,
1394
01:41:17.370 --> 01:41:19.710
like, sleep the computer or log out or anything.
1395
01:41:23.005 --> 01:41:26.225
1396
01:41:27.005 --> 01:41:33.920
It's a lot less glamorous than a recent vacation home in a robe. I don't know. Just from from Russia. Like, that's a picture. Yeah?
1397
01:41:34.620 --> 01:41:35.600
Yeah. It's definitely,
1398
01:41:36.780 --> 01:41:38.000
it's definitely an image.
1399
01:41:39.045 --> 01:41:41.225
So, I mean, guys, this has been a great conversation.
1400
01:41:43.125 --> 01:41:47.385
Oh, I get I have one more thing on my list that I wanted to hit before we wrap this up.
1401
01:41:47.800 --> 01:41:50.780
So it's a free open source project. Anyone could do this.
1402
01:41:51.960 --> 01:41:53.820
The code's out there. They can just
1403
01:41:54.360 --> 01:41:58.344
use the build, put it on, you know, general purpose hardware.
1404
01:42:01.045 --> 01:42:05.990
Is are you how do you view this project? Is it just gonna be donation based? Is there a monetization
1405
01:42:06.770 --> 01:42:07.270
strategy?
1406
01:42:09.570 --> 01:42:16.784
1407
01:42:18.045 --> 01:42:24.130
I currently like I mentioned before, I sell the presoldered pies, and I also sell the 3 d printed enclosures.
1408
01:42:25.470 --> 01:42:31.055
But that's, like, low margin stuff that helps me cover, like, you know, the hosting fees
1409
01:42:31.515 --> 01:42:32.015
and,
1410
01:42:33.195 --> 01:42:33.855
you know,
1411
01:42:34.155 --> 01:42:37.615
sending T shirts to contributors and sending hardware to people who,
1412
01:42:37.920 --> 01:42:42.739
you know, potentially contribute or who might, you know, be good for the project and,
1413
01:42:43.440 --> 01:42:49.665
like, web development, that kind of stuff. I don't see any sort of path of monetization. Maybe I'm naive or just
1414
01:42:50.045 --> 01:42:51.965
inept business wise to see that,
1415
01:42:53.645 --> 01:43:01.800
seed signer's more like, it this is more like a the goal of the project, and this isn't something we talked about, but we recently declared a license.
1416
01:43:02.420 --> 01:43:03.639
And that was, like,
1417
01:43:04.435 --> 01:43:08.614
by far the hardest decision that I've made by far associated with the project.
1418
01:43:10.514 --> 01:43:11.574
And we we
1419
01:43:11.954 --> 01:43:13.255
initially were leaning
1420
01:43:16.870 --> 01:43:20.010
GPL or a GPL, but that was wrong. So GPL.
1421
01:43:20.765 --> 01:43:23.985
And the theory was so that, like, anybody who,
1422
01:43:24.845 --> 01:43:32.320
you know, uses the code or modifies the code contributes it back to the open source community. Right. And we just got a ton of pushback about that.
1423
01:43:32.860 --> 01:43:33.360
And
1424
01:43:33.980 --> 01:43:34.480
the
1425
01:43:34.860 --> 01:43:37.599
ultimate decision was that I didn't wanna discourage
1426
01:43:38.125 --> 01:43:39.824
there were a lot of people who were super
1427
01:43:40.525 --> 01:43:46.465
m I pro MIT, and I think there's a little bit of a cult mentality to that, not that there's anything wrong with MIT.
1428
01:43:47.165 --> 01:43:50.520
1429
01:43:51.540 --> 01:43:55.720
any derivative work has to be open source. It has to be GPL.
1430
01:43:56.135 --> 01:43:57.435
Right. With MIT,
1431
01:43:58.215 --> 01:43:59.195
it's completely
1432
01:43:59.655 --> 01:44:02.635
open. Like, you can you can take that code,
1433
01:44:03.415 --> 01:44:09.500
like Square can take that code, and they can just put it into a completely closed source,
1434
01:44:11.160 --> 01:44:13.820
device or software library or whatever.
1435
01:44:14.905 --> 01:44:16.045
1436
01:44:16.425 --> 01:44:28.270
like, the goal for us thinking it through was we always want people to be able to build a seed signer on their own without permission from off the shelf components and have the software completely unfettered and free.
1437
01:44:28.650 --> 01:44:29.790
So in that sense,
1438
01:44:31.655 --> 01:44:32.875
GPL made sense,
1439
01:44:34.295 --> 01:44:35.994
but we got, like,
1440
01:44:36.775 --> 01:44:39.355
super pushback from the from the community.
1441
01:44:40.099 --> 01:44:41.480
And one of the more,
1442
01:44:42.900 --> 01:44:43.400
legitimate
1443
01:44:43.940 --> 01:44:46.679
kind of concerns was that apparently people who work,
1444
01:44:47.105 --> 01:44:57.520
their day job is for, you know, a for profit company and they're professional coders, and maybe Keith can talk more to this. But I had several people approach me, and I think it was in good faith,
1445
01:44:57.980 --> 01:45:00.960
tell me that, like, their employer prefers that they
1446
01:45:02.195 --> 01:45:03.414
don't contribute
1447
01:45:04.355 --> 01:45:04.855
to,
1448
01:45:06.755 --> 01:45:08.375
like, Copyleft or GPL
1449
01:45:08.950 --> 01:45:17.530
projects because of potential legal entanglements and that they prefer them to just contribute to MIT stuff because it's pretty cut and dry that there's no legal
1450
01:45:18.365 --> 01:45:18.765
legal,
1451
01:45:19.405 --> 01:45:21.265
implications to it. So if people
1452
01:45:21.725 --> 01:45:27.425
a lot of employers give you Google used to give you, like, what, 10 or 15% of your work week
1453
01:45:27.889 --> 01:45:29.590
just to work on some sort of
1454
01:45:30.130 --> 01:45:31.750
passion project or,
1455
01:45:32.849 --> 01:45:33.349
like,
1456
01:45:33.730 --> 01:45:42.215
open source kind of stuff. Like, I didn't wanna just just discourage any contributors from contributing seed signers. So even though we were leading towards GPL,
1457
01:45:42.675 --> 01:45:44.135
we actually went with MIT,
1458
01:45:45.239 --> 01:45:48.540
and I'm I'm not ashamed of that. That's what Bitcoin uses. That's what,
1459
01:45:49.000 --> 01:45:54.345
Spectra uses. It's a great license. I just don't think that a closed source signing device makes sense.
1460
01:45:54.825 --> 01:45:57.405
So we were trying to steer it towards JPL, but,
1461
01:45:58.265 --> 01:46:04.850
yeah, that that's where we're at. So to get back to your original question of I don't think there's a profit motive motive in this.
1462
01:46:05.950 --> 01:46:10.050
I I yeah. That's that's kinda where we're at unless Keith has any perspective.
1463
01:46:11.885 --> 01:46:12.865
1464
01:46:13.885 --> 01:46:16.945
and and and by the way, you know, Matt, you had asked about
1465
01:46:17.680 --> 01:46:18.820
how how Steve
1466
01:46:19.120 --> 01:46:19.860
has experienced,
1467
01:46:20.240 --> 01:46:23.140
running his first project, his first open source project.
1468
01:46:24.240 --> 01:46:27.855
And, you know, I can tell you from the from the inside of these discussions,
1469
01:46:29.275 --> 01:46:30.575
you know, all the transparency
1470
01:46:30.955 --> 01:46:33.455
that you see him tweeting out publicly,
1471
01:46:34.970 --> 01:46:35.630
that's, like,
1472
01:46:36.250 --> 01:46:40.360
exactly what's going on in these internal discussions that, you know,
1473
01:46:42.725 --> 01:46:46.345
here's what I'm thinking. Here's what I'm agonizing over. Here's what I don't know.
1474
01:46:47.205 --> 01:46:50.265
And we just kinda, you know, discuss it and and hash it out.
1475
01:46:50.885 --> 01:46:56.080
And just, you know, his his transparency. Like, the the multisig donation address
1476
01:46:56.460 --> 01:46:56.960
is
1477
01:46:57.260 --> 01:47:07.675
out there. But not not only that, like, the x pub of each key of the multisig has been tweeted out. You know, just like levels of transparency that are are just crazy.
1478
01:47:09.370 --> 01:47:10.910
But, no, I I think this project,
1479
01:47:11.290 --> 01:47:19.305
you know, like, I I'm contributing in my free time. Nick is contributing in his free time. He's got, you know, a a young child. I think I think maybe a newborn.
1480
01:47:21.445 --> 01:47:24.825
And, you know, it it's it's an all volunteer effort.
1481
01:47:25.810 --> 01:47:29.670
You know, I I'm just having so much fun working on this project.
1482
01:47:31.970 --> 01:47:34.515
But but, yeah, like, longer term, if
1483
01:47:35.055 --> 01:47:37.555
if if we could get to the point where through
1484
01:47:38.095 --> 01:47:39.395
donations and grants
1485
01:47:39.775 --> 01:47:43.840
that, you know, I could scale back my my normie day job,
1486
01:47:44.560 --> 01:47:49.619
and spend more time on on seed signers, spend more time on on Spectre, like, that would be incredible.
1487
01:47:50.560 --> 01:47:55.565
But, you know, I'm gonna keep contributing to this project as much as I can in in my evenings and weekends.
1488
01:47:56.905 --> 01:48:00.605
And, you know, I'm just gonna trust in the Bitcoin community. Like, if
1489
01:48:00.910 --> 01:48:01.730
if this project,
1490
01:48:02.750 --> 01:48:07.250
needs more more funding and more attention, I think the community will will deliver it.
1491
01:48:08.030 --> 01:48:14.315
If what we've built is kind of like a good enough solution and it just has some, you know, kind of
1492
01:48:14.615 --> 01:48:15.755
maintenance requirements,
1493
01:48:16.135 --> 01:48:16.875
over time,
1494
01:48:17.335 --> 01:48:20.360
and doesn't doesn't require, like, investment like that,
1495
01:48:21.000 --> 01:48:22.619
then then that's what it'll be.
1496
01:48:23.480 --> 01:48:25.500
But, but yeah. And and I I
1497
01:48:25.960 --> 01:48:27.420
I don't have any plans on
1498
01:48:28.205 --> 01:48:32.145
disappearing from this project, but I always tell Seed, like,
1499
01:48:32.685 --> 01:48:35.400
you know, this isn't a corporation. You know, we're
1500
01:48:35.860 --> 01:48:36.440
not hired
1501
01:48:36.900 --> 01:48:37.400
employees.
1502
01:48:38.580 --> 01:48:40.280
We have no intention of going anywhere,
1503
01:48:40.660 --> 01:48:42.600
but you can't build this project
1504
01:48:43.295 --> 01:48:47.315
assuming that we, you know, specific pieces will be there.
1505
01:48:48.175 --> 01:48:54.579
Right. Or and you don't know who's gonna come in, you know, tomorrow with some amazing ideas and and and make major contributions.
1506
01:48:56.480 --> 01:49:01.300
So it's it's just, you know, you you set up the
1507
01:49:01.784 --> 01:49:02.284
the
1508
01:49:02.585 --> 01:49:06.925
structure the best that you can. It's open source. Anyone can come in and contribute.
1509
01:49:08.425 --> 01:49:09.739
And if if someone's contributions
1510
01:49:10.440 --> 01:49:15.260
just become more and more important, you start bringing them into the inner circle of
1511
01:49:15.560 --> 01:49:19.345
of, I I I hesitate to say the word decision makers,
1512
01:49:20.205 --> 01:49:23.585
but, you know, of of the the people whose input,
1513
01:49:24.450 --> 01:49:26.210
are are listened to the most for,
1514
01:49:26.690 --> 01:49:28.150
the the seed center group.
1515
01:49:29.170 --> 01:49:29.970
1516
01:49:31.495 --> 01:49:33.195
Keith kind of alluded to it. We
1517
01:49:33.575 --> 01:49:34.635
we did set up,
1518
01:49:36.055 --> 01:49:36.635
an official
1519
01:49:37.015 --> 01:49:38.075
donation wallet.
1520
01:49:39.380 --> 01:49:41.159
So it's a 4 of 6 multisig.
1521
01:49:42.179 --> 01:49:47.400
I published all the XPUBs the other day so we can have full transparency. So anybody who wants to
1522
01:49:47.835 --> 01:49:53.135
import the the XPUBs into a Specter Wallet or even, you know, a a Spiro wallet or anything,
1523
01:49:53.995 --> 01:49:57.295
can do that and monitor what comes in and what comes out.
1524
01:49:57.730 --> 01:49:58.230
We,
1525
01:49:58.930 --> 01:50:01.590
I was approached, like, a month or 2 ago from
1526
01:50:01.970 --> 01:50:05.910
a significant donor and asked to submit a grant proposal.
1527
01:50:06.705 --> 01:50:13.284
I don't know if that particular one's gonna come through, but I'm optimistic that I I think we're demonstrating enough value that I think
1528
01:50:14.520 --> 01:50:17.260
some form of sustaining funding is gonna come through.
1529
01:50:17.560 --> 01:50:24.705
But that was part of the rationale for setting up the multistig address. It's like I mentioned, it's a 4 of 6. I hold 2 of the keys
1530
01:50:25.165 --> 01:50:26.465
and then 4 other
1531
01:50:29.520 --> 01:50:34.500
key contributors, we'll say, who've asked not to be named or holding one key each.
1532
01:50:35.039 --> 01:50:35.539
And
1533
01:50:36.614 --> 01:50:39.195
over time, as funds hopefully become available,
1534
01:50:39.495 --> 01:50:42.074
like, it's gonna be a process of, you know,
1535
01:50:42.455 --> 01:50:44.315
us at a primary level
1536
01:50:44.775 --> 01:50:50.940
hashing out, like, what we think, like, deserves compensation for contribution and what sort of features we wanna
1537
01:50:51.240 --> 01:50:53.180
incentivize through through compensation,
1538
01:50:53.875 --> 01:51:05.620
but it's also gonna be, like Keith alluded to, a process of listening, you know, to people who are following us on Twitter and people who are in the the, seats on our Telegram chat, like, asking about features and
1539
01:51:06.000 --> 01:51:08.660
and expressing their opinions. So we're we're trying to do this,
1540
01:51:09.120 --> 01:51:09.620
like,
1541
01:51:10.575 --> 01:51:15.235
as much in the open out in the open as we can, and I'm optimistic that we can kinda
1542
01:51:15.695 --> 01:51:24.530
reach that middle ground to where, you know, people if they wanna be heard, like, they're gonna be heard, and I think, like, we can make mostly the the right calls.
1543
01:51:26.270 --> 01:51:27.970
1544
01:51:30.655 --> 01:51:48.340
1545
01:51:48.935 --> 01:51:52.795
1546
01:51:54.535 --> 01:52:01.489
you know, I was I was I was, like, the 2nd person on board with OpenSats, and all the board members were not taking any money out.
1547
01:52:04.375 --> 01:52:05.915
And as as a result,
1548
01:52:08.935 --> 01:52:16.040
you know, maybe it's it's facing some some of the same hurdles that the free open source projects that we're trying to support are facing,
1549
01:52:16.580 --> 01:52:17.080
because,
1550
01:52:18.020 --> 01:52:23.805
no one's working on it full time. But, we do have money. We have Bitcoin sitting there waiting to
1551
01:52:24.185 --> 01:52:26.365
dish out to con dish out to projects,
1552
01:52:27.760 --> 01:52:31.140
in need, and, your project completely fits the bill,
1553
01:52:31.760 --> 01:52:34.020
for that. So I'm glad you submitted something,
1554
01:52:35.155 --> 01:52:37.815
and we're working on getting that out as soon as possible.
1555
01:52:39.475 --> 01:52:44.889
I kinda wanna go back to the licensing real quick. I mean Yeah. Yeah. It's, a reoccurring
1556
01:52:45.270 --> 01:52:46.570
topic on dispatch.
1557
01:52:47.829 --> 01:52:50.570
And you're right that there it's very much a,
1558
01:52:52.505 --> 01:52:53.405
first of all,
1559
01:52:53.785 --> 01:52:58.205
100% appreciate you going MIT. It is the most open license you can choose,
1560
01:53:00.960 --> 01:53:01.860
But I I
1561
01:53:03.600 --> 01:53:07.780
I struggle with it myself, and I got a lot of I get a lot of pushback because I'm
1562
01:53:08.575 --> 01:53:09.075
a
1563
01:53:09.615 --> 01:53:10.515
it's it's
1564
01:53:11.135 --> 01:53:12.435
I I'm a I'm a
1565
01:53:13.695 --> 01:53:14.355
GPL proponent.
1566
01:53:14.655 --> 01:53:15.155
I
1567
01:53:17.449 --> 01:53:20.030
I I've noticed that a lot of
1568
01:53:20.809 --> 01:53:21.949
or or some
1569
01:53:23.185 --> 01:53:28.005
groups that provide grants in the space require you to switch to MIT if you're GPL.
1570
01:53:29.585 --> 01:53:30.085
And
1571
01:53:31.210 --> 01:53:35.310
I feel like it's a little bit of a subversion of open source
1572
01:53:36.170 --> 01:53:38.190
even though it's the most free license
1573
01:53:38.875 --> 01:53:40.095
because it allows
1574
01:53:40.555 --> 01:53:44.575
corporations to come in and take the code and not contribute back.
1575
01:53:46.690 --> 01:53:48.710
1576
01:53:49.250 --> 01:53:59.495
like I I don't wanna call it manipulation, but, like, all of these smart guys with money are having all of these nerds, like, do all this work, and then they can turn it into a product kind of a thing.
1577
01:54:00.035 --> 01:54:05.015
1578
01:54:07.380 --> 01:54:07.880
MIT.
1579
01:54:10.099 --> 01:54:15.765
I expect there to be a lot of closed source point of sale systems that use BTC Payserver code
1580
01:54:16.245 --> 01:54:22.745
and don't contribute anything back and keep everything closed. Right. With SeedSigner, it's a little bit different because I do agree with you. I mean,
1581
01:54:23.980 --> 01:54:26.880
hopefully, most people wouldn't wanna use a closed source,
1582
01:54:27.900 --> 01:54:28.800
signing device.
1583
01:54:29.500 --> 01:54:31.360
Unfortunately, there are some out there,
1584
01:54:32.375 --> 01:54:32.875
but,
1585
01:54:33.895 --> 01:54:39.355
so it's a little bit less of a concern, but, I I tend to fall on the GPL side. But
1586
01:54:40.200 --> 01:54:43.020
I a 100% respect the decision to go for
1587
01:54:43.320 --> 01:54:45.100
the most open license there is.
1588
01:54:45.560 --> 01:54:49.305
1589
01:54:50.165 --> 01:54:53.865
GPL. I just don't see because we're a do it yourself
1590
01:54:54.325 --> 01:54:58.830
thing from off the shelf component off the shelf components. Like, there's not a ton of margin
1591
01:54:59.530 --> 01:55:00.670
in it for
1592
01:55:01.050 --> 01:55:02.990
a potential commercial participant.
1593
01:55:04.035 --> 01:55:08.135
And I and maybe that's just a lack of imagination on my part, but,
1594
01:55:08.675 --> 01:55:16.060
that that kinda, like, took some of the pressure off for me because I just don't see this as a, you know, super commercially profitable
1595
01:55:16.360 --> 01:55:19.820
1596
01:55:20.600 --> 01:55:21.100
a
1597
01:55:22.415 --> 01:55:24.915
purpose built Bitcoin signing device
1598
01:55:26.495 --> 01:55:27.315
that is
1599
01:55:28.495 --> 01:55:29.475
source viewable,
1600
01:55:29.900 --> 01:55:34.800
which is the bare minimum, I would say, if you're gonna buy a signing device. Mhmm.
1601
01:55:35.980 --> 01:55:37.040
But not MIT
1602
01:55:37.820 --> 01:55:38.560
or GPL.
1603
01:55:39.985 --> 01:55:44.245
And it uses mostly your code and puts it in a very pretty case
1604
01:55:44.705 --> 01:55:48.885
and then goes and raises a shit ton of VC money off of your work
1605
01:55:49.290 --> 01:55:50.030
and your contributors' work.
1606
01:55:53.210 --> 01:55:53.690
But,
1607
01:55:54.489 --> 01:55:58.270
That would suck for us. Yeah. You'd still have my support regardless.
1608
01:55:58.885 --> 01:56:01.545
1609
01:56:01.925 --> 01:56:10.630
you know, the dude in Iraq or Iran or Saudi Arabia or whatever Love it. Like, he can get the components, the codes available, he can build it. Like,
1610
01:56:10.930 --> 01:56:12.550
people in El Salvador,
1611
01:56:12.930 --> 01:56:17.695
like, we can host a workshop there. And regardless of what some, you know,
1612
01:56:18.315 --> 01:56:19.455
clown, you know,
1613
01:56:20.075 --> 01:56:31.200
VC company is doing, like, we can show people how to build this stuff, you know, themselves. And after we leave, they can make more of them if they think there's, like, a value proposition there. Like, that's the most important thing.
1614
01:56:32.375 --> 01:56:35.755
1615
01:56:37.255 --> 01:56:44.730
We have, Bitcoin makes sense asking a completely unrelated question asking, is Trust Wallet okay? No. Trust Wallet's a piece of shit.
1616
01:56:45.909 --> 01:56:47.530
You should migrate to
1617
01:56:48.155 --> 01:56:49.375
to a better wallet.
1618
01:56:51.835 --> 01:57:06.795
First of all, I hate the name, but besides that, it's just it's mostly shitcoin focused, and the Bitcoin side's really bad. I don't even I I I'm I I can't speak to their license or whether or not it's sourced viewable or not, but it's a really bad wallet. If you go to cildispatch.com/help,
1619
01:57:11.070 --> 01:57:16.530
there's a there's a list of Trust Wallet's a mobile wallet. There's a list of mobile wallets,
1620
01:57:17.310 --> 01:57:19.810
that I recommend that are significantly better.
1621
01:57:22.505 --> 01:57:26.764
Yeah. But that's a completely unrelated question, but he did ask it, so I'm going to answer it.
1622
01:57:27.720 --> 01:57:30.540
So I appreciate you guys' time. I think this was a great conversation.
1623
01:57:32.120 --> 01:57:34.780
Do you have any final thoughts before we wrap this up?
1624
01:57:36.324 --> 01:57:37.284
1625
01:57:37.844 --> 01:57:41.705
like, people are curious to check out our thing. We finally have a website, seedcenter.com.
1626
01:57:43.445 --> 01:57:53.370
Follow me on Twitter just at at seed signer, all one word. We have a Telegram group that's a great place, like, for people who are curious or wanting to do a build and they have specific questions.
1627
01:57:55.495 --> 01:58:00.155
Yeah. And if if, Keith, if you have any final thoughts, I'd I'm probably forgetting all sorts of stuff.
1628
01:58:01.630 --> 01:58:11.085
1629
01:58:13.465 --> 01:58:14.844
you know, UI redesign.
1630
01:58:15.224 --> 01:58:17.565
One thing I'd really love to add is NVK's
1631
01:58:18.200 --> 01:58:25.500
seed XOR. You know, with Yes. With your seeds as QR codes, they are more exposed and vulnerable.
1632
01:58:26.120 --> 01:58:27.100
But if
1633
01:58:27.565 --> 01:58:31.185
your seed is represented in a seed XOR
1634
01:58:31.725 --> 01:58:34.785
pair or, you know, 3 set or whatever,
1635
01:58:36.190 --> 01:58:39.890
then you just have, like, an additional level of of security there.
1636
01:58:41.710 --> 01:58:42.370
And then
1637
01:58:42.670 --> 01:58:48.445
we do have on the road map multi language support. So I Oh, yeah. I did the,
1638
01:58:48.824 --> 01:58:49.304
Spectre,
1639
01:58:49.705 --> 01:58:52.844
desktop implementation of, for multi language support
1640
01:58:53.200 --> 01:58:58.340
and, recruited all of the translators. So that's how we were able to launch with 11,
1641
01:58:59.040 --> 01:59:01.060
languages fully translated for Spectre.
1642
01:59:02.175 --> 01:59:05.635
So when we're ready, we'll do the same thing for,
1643
01:59:06.095 --> 01:59:15.950
Seed signer. And then, you know, hopefully, I can tap that same group or, you know, just tweet out to the world, like, hey. You know, let's let's, load this thing up on on other languages.
1644
01:59:17.195 --> 01:59:18.175
1645
01:59:18.635 --> 01:59:20.495
donate, that's seed signer.com?
1646
01:59:21.995 --> 01:59:24.975
1647
01:59:25.300 --> 01:59:31.800
Dude, you gotta put that front and center. Yeah. I'll I'll put it on the main page. It's it's in my Twitter feed. I actually tweeted it out today.
1648
01:59:32.825 --> 01:59:34.364
But, yeah, I'll get it on the website.
1649
01:59:34.745 --> 01:59:35.245
1650
01:59:35.945 --> 01:59:38.205
Well, I appreciate you guys. Thank you for joining.
1651
01:59:38.665 --> 01:59:40.364
It's really a fantastic conversation,
1652
01:59:40.665 --> 01:59:44.110
and I hope the freaks appreciated it. I think they will.
1653
01:59:44.730 --> 01:59:50.510
I know I did. I appreciate your work. I love the project. I have not built my own seed signer yet,
1654
01:59:50.915 --> 01:59:53.255
and I feel like a fraud for not.
1655
01:59:53.875 --> 01:59:55.955
So I will do that. I will try and,
1656
01:59:56.835 --> 01:59:59.415
pump out a a video or 2 about it,
1657
01:59:59.780 --> 02:00:00.520
do my
1658
02:00:00.900 --> 02:00:03.140
1659
02:00:03.780 --> 02:00:05.800
just, like, let me know.
1660
02:00:06.500 --> 02:00:07.000
1661
02:00:08.685 --> 02:00:13.824
Big shout out to the freaks who joined us in the live chat on this late Bitcoin Tuesday rip.
1662
02:00:14.764 --> 02:00:19.570
Appreciate you as always, and thanks to the freaks who continue to support the show. Without you,
1663
02:00:20.829 --> 02:00:26.975
1664
02:00:27.355 --> 02:00:29.455
1665
02:00:29.835 --> 02:00:30.735
1666
02:00:31.390 --> 02:00:36.210
1667
02:02:33.519 --> 02:02:35.699
1668
02:02:38.079 --> 02:02:41.460
new. Open mine for a different view.
1669
02:02:43.494 --> 02:02:45.594
And nothing else matters.
1670
02:04:49.110 --> 02:04:52.570
Trust, I seek, and I find it new.
1671
02:04:54.870 --> 02:04:56.485
Every day for us something
1672
02:04:59.665 --> 02:05:02.805
new. Open mind for a different view.
1673
02:05:04.840 --> 02:05:06.940
And nothing else matters.
1674
02:07:10.114 --> 02:07:13.974
1675
02:07:15.550 --> 02:07:18.610
and buy a FOSS pin set to support open source development.
1676
02:07:19.630 --> 02:07:20.690
I love you all.
1677
02:07:21.310 --> 02:07:28.735
I'll see you on Thursday for rabbit hole recap, and I'll see you next Bitcoin Tuesday for another dispatch. Stay humble and stack stats.