All right, we're live.
What's up, what's up?
Freedom Tech.
Welcome to Freedom Tech Weekend.
My name is Marks.
Good to have you here.
We were a little delayed because I'm trying a new setup today.
I've got my phone on a tripod so I can show you the device on my desk here.
Let me try switching cameras.
Let's see.
If I do this, we are going to be talking about the new app called White Noise.
Let me find the app here to share with you.
But we're going to talk about private messaging.
How do we do something like Signal, but that doesn't require a central server?
Because central servers are a choke point for anybody who wants to apply pressure and
shut things down or get data, things like that.
Why is it not showing up? Let's see here.
Well, while I look, welcome everybody. We're going to let people come in and join. We've got
50 people already. This is awesome. Hello to everybody. Hope you're having a good Friday.
If you follow the Bitcoin price, it has been a great, great couple of days. Loving that.
Maybe the app's not open anymore. Yeah, it is. There we go. Okay. Share it. This is a little
preview of what we're going to be looking at today. So I got my desk here. See, there's my hand.
And so we've got, oh, whatever. Yeah. So we got white noise here on the thing. So that is what
we're going to be doing today. But we'll let people join in the chat. Let me open up chat
on this side so I can see what people are talking. Odell still looking different. Yep. Yep. I, uh,
I'm the new, I'm his new, what's it called?
Pseudonym, right?
No.
My name is Marks.
I do a private, secure, confidential AI called Maple AI.
Me and my co-founder, Anthony, work on it.
And we actually just launched something big yesterday called Maple Teams.
So if you are in an organization or you're in a company, you work on a team with people
and you deal with sensitive data in your company or organization, which pretty much is everyone,
you can now sign up your whole team on Maple and you can get secure AI for everybody.
So pretty big deal. We're stoked about it. BTC pins, did you join TFTC? Not like officially.
we are uh we're aligned in our in our ideals so freedom tech weekend is for now going to publish
on the tftc channels along with my own channels then we'll do this as long as people like it and
as long as it's it's fitting it gives tftc more content it gives me broader reach and really the
idea is let's get more freedom tech in the hands of more people and let's spread the message far
and wide. So that's what we're trying to do. We're also live on zap.stream. So let me head
over to zap.stream just to make sure that it's going. And if the audio sounds good to everybody,
great. If for some reason you can't hear me, if I'm too quiet, whatever, just let me know.
I'm not seeing it on zap.stream.
I know that it is. I selected it in the channels.
It says it's streaming.
It's not showing up, but that happens sometimes, I guess.
Let's try this real quick.
No, I'm not seeing it there.
Oh, well.
Sorry, Zap.Streamers.
Restream says it's sending to you.
Maybe I don't have enough money in my Zap.Stream wallet.
That would be kind of funny, right?
I might have to add some more.
Says I'm offline.
All right.
Well, sorry, guys.
Those who wanted to watch this on Zap.Stream, I can't help you right now live on air.
I don't have a Logan.
I don't have my own producer.
I'm doing this myself.
So we're just gonna go at it.
Let's go ahead and dive in today and talk about it.
The biggest -- so there's two big things this week with secure messaging that we were going
to chat about.
And so I had to pick one.
And I'll tell you why I picked what I did.
But I wanted to read some zaps that I got last week.
My phone.
Okay.
Sorry, I'm all out of sorts because every week we try something new on Freedom Tech
Weekend.
And I'll get better planning for this.
So there are two big projects this week that made a lot of rounds online.
You had obviously Jack Dorsey, Jack on Noster but also on Twitter who vibe coded for the
weekend and built a Bluetooth mesh messaging app called Bit Chat.
You can say that to yourself.
Bit Chat.
And yes, the name is intentional.
you can that that uses bluetooth and does discovery peer-to-peer over a mesh network
with devices and you can send messages without any kind of centralized server without the need
for internet which is super cool on one of our episodes that we had here i think it was episode
seven we talked about trying to do airdrop without ios over local send and the hope was that we could
do peer-to-peer airdrop type stuff but with any device not just ios i've since learned as i've
used it more that it seems like it does still need some kind of internet connection i have not
figured out how to do local send without internet but i was hoping it would be like a bluetooth
mesh kind of thing where i could just airdrop local send files to other people so still trying
to figure that out if anybody else has figured out how to do that that would be great because
my use case for LocalSend was we sometimes have a youth group that is camping and we had this fun
idea where we wanted to do like a video scavenger hunt kind of thing in the woods. And I know this
sounds really sus. I swear it's not. But we wanted to airdrop the videos later. And so we had them
on one thing to show them to everybody. Anyways, that was it. Somebody asked why not use
Meshtastic. I'm going to do a future episode on Meshtastic. I think that is probably the
better solution. It goes more long range. But Jack got a lot of media hype because he
vibe coded a Bluetooth thing. And I think more solutions, the better, right? Meshtastic requires
you to have different devices, whereas BitChat just works on your device. And so everybody can
have it on them and if the internet goes out well you immediately start communicating with
the device you already have in your pocket rather than having to have something else
um i guess yeah that's that's my understanding i actually have some mesh tastic devices that
i still need to unbox so i will do that for a future episode okay so that was the biggest one
that made the rounds but then a quieter one that still got a lot of play that is much more polished
and was not vibe coded is White Noise. So White Noise is a secure messaging app that's trying to
be similar to Signal, give you good UX of Signal, but doesn't have centralized servers. And also
is using the MLS protocol, the messaging secure layer protocol, that is going to try and work
around some of the shortcomings that the Signal protocol has. And these projects always build on
other. You're building on the shoulders of giants, as they say. So you're always trying to do
something slightly more improved than the previous one. And maybe not slightly, right? Maybe it's a
big leap of improvement, but you're always trying to improve on the other ones. So we're going to
talk about white noise today. And I've got my device sitting here on my desk where I installed
the APK, but I also wanted to try and build it locally on air for the first time, see if it works.
It might totally fail.
Hopefully I don't dox myself in the process.
But let's go ahead first and share my screen,
share my home server that I use for all of this.
And then we'll talk a little bit about what is MLS,
what is white noise.
So let me bring that up.
And then we'll demo the app
and we'll try and build the app, all that good stuff.
So all right, I got my server here.
Let me go ahead and share it.
sweet okay y'all should be seeing this now you are that's great let me adjust my window to make
me smaller well that's not what i wanted to do crap i don't know how i just did that
all right looks like i'm gone now that's funny
There we go. Okay. I wanted to just change this. There we go. Okay. So now you can see me,
and you can see here. So what we've got pulled up here is we've got White Noise,
their website on the right. And then on the left, we've got Maple pulled up here to help us
understand more things about what's going on. So I've already asked to explain MLS,
which is the messaging layer security. Just to make sure here, because sometimes it hallucinates.
MLS secure. It would be funny if it totally got it wrong. Okay. Now I got it right. Messaging
layer security. Don't trust verify. Okay. So let's go talk about White Noise real quick.
So what it is is a truly securely and private messenger that's lightning fast, infinitely scalable, and identity free.
What does this mean?
What they're doing here is they are taking a few different protocols and putting them together to try and create something that does not require centralized servers.
On episode 10, was it 10?
No, it might have been 9.
A few weeks ago, we did a Freedom Tech weekend all about Signal.
I'm sure many of you on here are familiar with Signal and use it every single day.
The biggest problem with Signal is that they are the ones who run the central servers.
So you have to depend on them.
You don't know what's running on their servers.
So you're trusting the code that they're running.
And then also, if for some reason they got pressure from governments or other large organizations, or they got hacked, there are multiple reasons why their servers could go offline.
Or their servers could somehow boot you offline.
So there is still a dependency on this central authority.
So White Noise is looking to remove that major dependency.
And then the other thing is your identity is effectively owned by Signal as well.
Right?
You created a user account with Signal.
It required a phone number.
Now they allow you to do usernames.
I don't know if you can create a Signal account without a phone number still.
I haven't tried.
But the point is, they own your identity.
And if you leave Signal, you can't take any of your contact lists with you.
There's probably an export way, but more or less, it's very difficult.
So White Noise is using Nostr protocol and the Nostr identity management to handle that.
So if you're not familiar with Noster, it creates a key pair for your identity, which is similar to the way that Bitcoin creates a key pair for your wallet.
So it creates a private key and a public key.
And you share your public key with everybody.
It's called an NPUB.
And then you hold on to your private key, which is called NSEC, N-S-E-C.
And then you have that.
You keep it safe.
And then any app that you go into that talks to the Nostra protocol, you can put that in there or you can use a signing app that secures your NSEC and signs for you.
That's a story for another day.
But you put that in there and now this app knows who you are, has your Nostra identity, your Nostra account, and then all of your contact lists, everything that you've done on Nostra, your whole social graph, other things kind of follow you.
So if I have been using a Twitter clone that uses the Nostr protocol, or I've been using a TikTok clone or an Instagram clone, one of these apps that has similar functionality to those central social media platforms.
And I have put my Nostr account in there and I've started to build up followers or I've started following people because we're not all influencers.
We don't all need to be influencers, right?
But you're building up the social graph of people that you like to chat with and that you trust.
Sorry, my dog's going crazy because something just showed up.
Then what you get is...
Just ignore the dog.
What you get is you have all of these trusted people that you start to communicate with.
And if you move apps from Instagram to TikTok, you don't get to bring them with you.
You have to tell everybody, please go follow me over here.
When you do it with a Nostra identity on a Nostra protocol, all that just automatically comes with you.
So white noise is building on top of that.
So you have identity management.
You have your social graph, your contact list.
And then they're using MLS, which is messaging layer security.
This is something that was developed actually with a whole bunch of different companies, including Google, Facebook, Microsoft.
It's something that's been developed by the Internet Consortiums.
And I think they've been working on it since 2016, 2017.
Doesn't tell me here.
But they've been working on it for a while.
So this is something that a lot of people are trying to adopt.
Now, it's kind of complex.
I listened to Citadel Dispatch yesterday.
So shout out to Odell.
And go listen to Citadel Dispatch with Jeff G and with Max,
where they talked about this project in detail.
They go into what is MLS and all that.
and MLS versus the signal protocol.
I'm not gonna go that deep into it today
because frankly, it's like super technical.
And if you wanna do that technical deep dive,
you can on Freedom Tech Weekend.
Our idea is that we want to give you
kind of a quick overview of a project
so that you can start playing with it yourself this weekend.
We're not gonna try to hide things from you
and be like, just trust us.
But no, here's some of the basic technical stuff.
Go look up MLS, end-to-end encryption.
It handles group conversations,
whereas Signal is a peer-to-peer, sorry, a DM app, right?
It's meant for private messaging one-to-one.
And then people wanted to do groups,
and so they actually kind of added groups on top of it,
but it's not truly a group messaging app.
What it does is under the hood,
your app is sending a DM to every single person in that group.
And then it is like combining them in the app
to make it seem like it's a group message.
And then like we talked about on our previous episode of Freedom Tech Weekend,
if you have signal on your desktop and signal on your phone,
those are actually two different users.
So when you're sending a message,
it's having to create a copy of it with your other encryption key on your other device.
So you end up with just like a lot of extra messages flying around.
So MLS is trying to solve that by doing group messaging
group conversations in the protocol itself. Forward secrecy. This, again, is where if someone
gets a hold of your private key, if it gets exposed somehow, they cannot go back and read
all of your messages in the past. And then white noise is also doing it. And I can't remember if
this is in MLS or something. The white noise is doing it. But if they get a hold of your key,
they can only read that one message. They cannot just sit there and snoop forward as well. They
can't listen. So basically, bi-directional, they can't listen in either direction. They can just
get that one message that that one key was used for. Post quantum security. Ooh, quantum is the
big word, right? So they're doing something with quantum computing. You can look into that if you
want to. Okay. Let's go over and look at, they had their GitHub. I always like to check out the
GitHub's for projects. And that's actually where we're going to start here is we're going to try
and run this. So I've already cloned the repo, but here's their GitHub. They are very active
right now. Obviously, this is AGPL3. So just be aware of the license. It's always the first thing
you should check when you're going to play around with open source. Look at the license. So this is
not MIT, which means if you make additions, if you make improvements to this code base,
or you use this code base inside of one of your own projects, you are now affected,
or some people say infected, with the AGPL3 license. So you should be very mindful of that.
I'm not saying this is bad. I'm just saying be mindful that it has this license if you decide
to make contributions to this project, improvements, and assimilate it into your own code base.
It's a -- it's one of those kind of licenses that spreads its tentacles far and wide.
Full disclosure, we built Maple AI on top of Open Secret. And Open Secret,
Maple AI is MIT licensed open source. So anybody can download it, run it, do whatever you want to
with it. But Open Secret, the server that it runs on top of is AGPL3 as well. And that's because we
need our server code to be open source for secure enclave purposes. And if anybody's going to take
our code and also do it, we want them to be open source as well because that's the whole point of
secure enclaves is that your code is open source. So just be mindful of that if you're going to --
it's not Maple. It's the underlying server technology Open Secret. Two separate projects,
two separate licenses. Okay. So let's open up my terminal here. And I've already downloaded
the -- and cloned it. I had to install some stuff using homebrew. But we cloned the repo.
Now let's go ahead and try and run it. I got a comment here that said from BTC pins,
I love a command line white noise client so I can chat with a llama.
I think that would be awesome, too. They said yesterday that right now it's Android and iOS,
but more people are able to take this and build their own clients on top of this. I imagine we
will start to see this show up in places like Primal, Amethyst, other clients, Domus. And then
I'm, you know, vibe code a command line client for yourself if you want to.
What else we got here? Is this related to the spaces protocol? I'm not familiar with the spaces
protocol. Seems like a good fit with white noise. What is the spaces protocol? Let me ask
Maple and see if it knows. What is the spaces protocol?
We don't have web search yet inside Maple, so I'm going to use a newer model that has a newer knowledge date.
What is the spaces protocol?
This is Gemma 3, which is our latest one.
See if this knows.
Spaces protocol, also known matrix spaces.
Oh, is this matrix?
Okay.
No, I don't believe it's using anything related with matrix and what they're doing.
At least not from what I've read.
They're using MLS messaging layer security.
So short answer, I think the answer is no,
but do your own research there.
Okay, so back to what we're doing.
We want to do just init-test.
Just file does not contain recipe init test,
or int test, my bad.
Not init test, int test.
All right, let's just copy this shit.
Nope.
All right.
Recipe in test failed in line 12, exit 127.
Okay, well, I'm not going to do a whole lot of debugging here on air.
I just wanted to give it a try because why not?
Yep.
Okay, well, that didn't work.
So now let's switch cameras because we've already been going for 20 minutes.
Let's show a demo.
We're going to create an account on air and we're going to give it a try.
So I'm going to stop sharing this screen and we are going to switch over to the camera
that is pointed down at my desk.
Here we go.
Boom.
Look at this.
We got multi cameras going on here.
We're really up in our game.
So this is my busted ass device.
This is my daylight computer, DC1, which I absolutely love.
The DC1's awesome.
But I dropped it, and so the screen cracked.
So that's what you're seeing.
But it actually goes with the vibe of white noise.
If you've seen the graphics for white noise, it is kind of a busted-looking screen anyways.
So that's cool.
All right, so we got security without compromise.
I installed this using Zap Store, zap.store.
I think it's zapstore.dev is the website address.
but this is an Android store for installing apps that are signed using a Noster identity.
So again, Noster is something you're going to hear a lot on this show over the weeks.
It is an underlining protocol. Most people know it as a Twitter replacement. It is so much more
than that. It is really a protocol for the internet and for managing your own identity
and being sovereign with your own identity. One cool thing you can do with it is that you can sign,
it really assigns messages, right? But that means you can sign things like builds of apps.
And so if I download an app from some random website, there are supply chain risks all over
the place, right? With GitHub, with other things. And I don't know who signed that.
So people use PGP keys to sign stuff. Well, Zap Store is trying to do that with Android APK files.
So now you can say, I signed this file. Here's my Nostra identity. If you trust my Nostra identity,
then you can trust this file. All right, so let's go in here and let's do, oh, whoops,
I'm going to try and do this from where I'm sitting without like losing my microphone.
So setup profile. What it's doing here is it's going to create a brand new Nostra identity for
me. I do not want to put my own Nostra identity in here. I'm not crazy like Odell. So I'm not
just going to YOLO into it, especially not on air. So it's going to give me a name,
choose a new name. It's calling me Amazing Stud. Introduce yourself, write something to
say something about yourself.
So let's, instead of Amazing Stud,
let's call this Freedom Tech Weekend.
I actually don't have a Nostra account
for Freedom Tech Weekend yet,
because frankly, I've run out of web browsers
and I've run out of web browsers and browser extensions
for all the different Nostra accounts that I have
with personal life and work.
And so I just haven't gotten around to setting up another one.
So let's call this Freedom Tech Weekend.
Yo. Finish. Okay. So, decentralized, uncensorable secure messaging. Your profile is ready. Tap
chat to search contacts now or use the plus chat icon in the top right corner. So, let's
tap chat. All right. So, new chat here. I'm going to leave the microphone for a second.
Okay.
Search contact or public key. Let's try and message Odell.
I assume he's Odell at Primal.net.
Okay, I'm going to quickly verify that over here on Noster just to make sure.
but pretty confident, odell@primal.net.
Okay, let's see if that works.
Okay, I didn't find that.
Now what?
- Let's see.
- So it cannot use NIP 05.
All right, let's see if we can add contacts.
And I'm gonna pull up the chat
in case some of y'all are like,
Yo, this is how it works.
Hey, 88 Sats Radio.
What's up, Jor?
How you doing?
Good to see you.
Okay, I've only got five minutes left
because I gotta get out of here
so that I can make way for Rabbit Hole Recap,
which is coming on next.
So I hope y'all stick around and join Rabbit Hole Recap.
Let's be honest, you're all here
because that's coming on soon
and you didn't realize that I would be on right before.
But thanks for joining us and being here.
Let's see if we can do add contacts or something like that.
App settings.
So I assume that if I had put in my NSAC on here,
that I would have like a lot of contacts on here that I could message,
but I don't.
Share profile.
All right, hey, if anybody wants to hit up that public key,
if you are on, can you even read that?
If you're on white noise already yourself, you can try and message me.
You can scan that QR code.
Let me hold it closer to the screen.
And there's my end pub as well.
Zap.stream is not working.
I don't know why.
It says it's streaming to Zap.stream.
I'm using all the same settings, but it's not working.
I might need to go top up my wallet on there.
I'm not totally sure.
But there's my public key.
so feel free to grab it
oh zap stream is down today
womp womp
we need the decentralized
streaming service right
Kieran's awesome though
I don't fault him at all
does great work
so feel free to message me
on that
if we don't get it here on
stream
we can at least have fun connecting and messaging
elsewhere
why don't I just go ahead and type in
a public key, we're gonna do this.
Let me get Odell's public key.
We're just gonna type in the long ass string that it is.
Ooh, all right, I got someone.
This is, hopefully it's not a,
somebody that's going to get me booted off of YouTube
by saying something bad.
Let's see, let me go back to my screen
so I can see what y'all are seeing.
Okay, so forceful monitor is this user.
Let's accept it.
Okay, let me get out of the new chat.
We've got a message.
Good morning, Marks.
What's up?
It's working.
Hey, hey, hey.
Sweet.
There we go.
So we just sent a message back to forceful monitor.
BTC pin said, "I just DM'd you on WN."
We just doxed our BTC pins.
Thanks for messaging me.
Yeah, so here we are.
We're using a decentralized messenger on air.
There's no central server for this.
This is going over all the Nostra relays.
So some quick information here about this.
Thanks for messaging, BTC pins.
You rock.
So if we go in here and go into app settings,
they have all of the, they establish the relays for us.
Oh, maybe it's not in here.
But they have a hard-coded pre-selected relay list right now.
And this is important to know because they are selecting the servers that you're connecting to.
Now, they picked some of the most popular ones, like they're using Primal.
They're using Domus, I think, Nostot, LOL.
So they're using some of the most popular ones because they wanted to give people a great onboarding experience.
If you are building Freedom Tech, think about the onboarding experience.
Please, this is my plea to you.
Please build a good onboarding experience.
That is what we're doing with Maple.
If you've used Maple, we tried to make a really good onboarding experience.
White Noise is trying to do that as well.
They have more work to do, but this app just launched and it's already a decent onboarding
experience.
So please focus on that and make it great.
Okay, so part of this onboarding experience that they're doing is they hand selected a
few really popular Noster relays.
They're going to let you adjust those in the future because obviously there are all sorts
of reasons why you might want to set your own relays that you talk to, including a personal
one that you're running.
So maybe you want to run your own caching relay somewhere, either on your home server or in the cloud.
And then your device talks to that, which then goes out to everywhere else.
That gives you a lot of protection because right now my IP address from this device is being exposed to all those relays that I'm contacting.
So if I were in a precarious situation and I didn't want, let's say that I am an activist in a country that is monitoring my activity,
I might not want my IP address exposed to this messaging, this secure messaging protocol.
Right? So, just be aware of that. Always be aware. Always be verifying stuff.
Looks like we got another message back. Oh, it's just like the cheers emoji.
Awesome. Well, thank you so much. This is something you can play with this weekend.
This is White Noise. It is available on Android right now because there's no gatekeeping for this.
So just you can go download it and start using it right away. You can build it yourself. We failed
on air in classic fashion trying to build it. And then there's an iOS version that is trying to get
approved into TestFlight. So if you go and try to sign up on their website to be part of their beta
for TestFlight, it's going to tell you that it's full. It's not full. It's actually just not
approved yet for test flight use. So there's a two-step process with Apple. I'm going to stop
sharing my screen and go back to just me. So there's a two-step process with Apple. You can
do the beta version or you can do the production version that goes in the app store. The beta
version usually is a quick approval within just a few hours. Then the production version goes
through a more rigorous test and approval process, which sometimes just depends on which person you
get reviewing it, what they had for breakfast that day. I'm not even kidding you. I've been
doing this since the app store launched. I've been through this process countless times,
and it still is just as frustrating as it was on day one. That said, keep checking if you want to
get in on the test flight thing, and eventually, hopefully, they get approved at least in test
flight, and then the bigger win will be getting approved on the app store for public consumption
for everybody to use.
But TestFlight can handle a lot of beta testers.
So there should be room for everybody that wants to use it
until this thing really blows up and goes big.
But thank you for joining us for Freedom Tech Weekend.
We do this every Friday at 1530 UTC.
I'm sometimes a few minutes late
just because I'm getting my setup going.
I'm always trying new things,
always trying to be creative and push the boundaries here.
But Freedom Tech Weekend is one Freedom Tech tool
that you can try out this weekend to decouple yourselves from closed technology. So thanks for
joining us. We got up to over 2,000 people watching. Sorry we couldn't do Zap.Stream today.
It was down. So but thanks for joining and have a great weekend. Stick around for
stick around for Rabbit Hole Recap in about 13 minutes. Later.
Thank you.