Matt Lorentz's Avatar

Matt Lorentz

@mplorentz.bsky.social

Technologist, solarpunk, gamer, backpacker, passionate about using the internet to push more power to more people. https://mattlorentz.com

237 Followers  |  46 Following  |  36 Posts  |  Joined: 28.02.2023  |  2.1817

Latest posts by mplorentz.bsky.social on Bluesky

There is still a ton of work to do but having the core flow working makes all the future changes feel small and incremental by comparison.

07.10.2025 20:31 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
A screenshot of an app alert that says "Lockbox Recovered!"

A screenshot of an app alert that says "Lockbox Recovered!"

Fun milestone for Keydex today: I had my first successful restore of data. I was able to fire up several copies of the app and create a lockbox, break it into shares, distribute them to peers via Nostr, initiate recovery, approve the recovery request, and reassemble the data.

07.10.2025 20:31 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
GitHub - substrate-system/shamirs-secret-sharing: Shamir's Secret Sharing for the browser Shamir's Secret Sharing for the browser. Contribute to substrate-system/shamirs-secret-sharing development by creating an account on GitHub.

_Shamir's Secret Sharing_, in a browser.

github.com/substrate-sy...

cc @mplorentz.bsky.social

#devlog

22.09.2025 19:55 β€” πŸ‘ 3    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
GitHub - github/spec-kit: πŸ’« Toolkit to help you get started with Spec-Driven Development πŸ’« Toolkit to help you get started with Spec-Driven Development - github/spec-kit

I'm back in the code editor for the first time in a few weeks. It feels good 😊

Trying out Github's spec-kit tool for spec-driven development with AI: github.com/github/spec-...

22.09.2025 17:26 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Keydex will work for all cases listed above but I'm going to keep the inheritance use-case top of mind while developing. Which already invalidates some of the design work I did last week. I was going to make a fun retro/gamey UI, but now I'm going to shift towards something more calm and reliable.

15.09.2025 18:21 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

The most interest by far was in the inheritance planning use case. People have some digital stuff they want to pass on, but don't want it sitting in plaintext in the hands of (generally very normie) friends and family.

15.09.2025 18:21 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

The top insight from this round was clarifying the different use cases for Shamir's Secret Sharing. Here's what I came up with:
- inheritance planning
- corporate secret management for ultra-sensitive values i.e. root passwords
- border crossings
- web3/crypto/Nostr key backup

15.09.2025 18:21 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

I've finished my first round of interviews for Keydex and they were so enlightening. I'm so addicted to user interviews now, I don't understand how I made so much software without them.

15.09.2025 18:21 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

the second will be an app for private group chat - more details to follow! (3/3)

09.09.2025 18:52 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

the first is a backup tool that uses Shamir's Secret Sharing algorithm to distribute secrets among groups of friends for maximum privacy and resilience. (2/3)

09.09.2025 18:52 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
OpenSats OpenSats is a 501(c)(3) public charity that aims to support and maintain a sustainable ecosystem of funding for free and open-source projects and contributors, especially bitcoin-related projects and ...

Oh and I haven't shared here yet: I'm thrilled to have received a grant from OpenSats.org to continue working in the Nostr ecosystem. I'll be working on two projects over the next year: (1/3)

09.09.2025 18:52 β€” πŸ‘ 7    πŸ” 2    πŸ’¬ 1    πŸ“Œ 0
Formstr A decentralized forms application which lets you custody your own data made possible through the power of the nostr protocol.

I'm looking for folks to interview for the new app I'm working on. If you've ever needed to back up some sensitive data (passwords, crypto wallet key, "legacy planning" docs) but didn't just want to print it out and hide it then I'd love to talk to you! formstr.app/i/keydex

09.09.2025 18:37 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Preview
Notes on building a convergent, offline-first Access Control CRDT ~ p2panda p2panda recently published the first release of p2panda-auth, a convergent, offline-first CRDT (Conflict-free Replicated Data-Type) which helps managing members, admins or moderators in a group and giving them permission to sync, read or change application data. If you want to learn about the concrete implementation and design choices of p2panda-auth we have an in-depth blog post for you here.

Good read on how you can use a CRDT to manage an access control list for a group or other resource: p2panda.org/2025/08/27/n...

05.09.2025 18:46 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

The iOS 26 release date is less than a month away, and I'm available for last-minute contract work if you need help getting your app ready! Whether you just want to make sure nothing breaks, or are looking to refresh your entire UI alongside Apple, I can help you make a smooth transition.

18.08.2025 20:41 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Wow yes I love these ideas. I didn’t even think about the fact that someone could compute these proofs for a chain that isn’t theirs. It’s such black magic.

26.07.2025 23:50 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Ah I love finding other scuttlebutts in the wild ❀️. I only know about crypto/protos because I have been playing with them the same as you haha.

26.07.2025 23:49 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
A screenshot of a terminal window with a dark background. At the top, a command is shown: jack@winesap ~/Software/stammtisch/stammtisch *(feature/sync)*% target/debug/ssb-qr list.

The output of the command is a table with five rows and the following columns: Seq, ID, Type, Timestamp, and Content.

The rows list various message types, such as git-ssb/repository, chess_invite, and hokuu.photo, with timestamps from July 20, 2025. The ID column contains long alphanumeric hashes, and the Content column contains JSON data snippets.

Below the table, a summary line reads, "Showing 5 of 5 total messages," followed by a new, empty command prompt.

A screenshot of a terminal window with a dark background. At the top, a command is shown: jack@winesap ~/Software/stammtisch/stammtisch *(feature/sync)*% target/debug/ssb-qr list. The output of the command is a table with five rows and the following columns: Seq, ID, Type, Timestamp, and Content. The rows list various message types, such as git-ssb/repository, chess_invite, and hokuu.photo, with timestamps from July 20, 2025. The ID column contains long alphanumeric hashes, and the Content column contains JSON data snippets. Below the table, a summary line reads, "Showing 5 of 5 total messages," followed by a new, empty command prompt.

A screenshot of a terminal window on a dark background. A large, blocky QR code is displayed in the upper portion of the window using white text characters. Below the QR code is a command prompt which reads: jack@winesap ~/Software/stammtisch/stammtisch *(feature/sync)*% target/debug/ssb-qr pick --seq 2 --encode --terminal.

A screenshot of a terminal window on a dark background. A large, blocky QR code is displayed in the upper portion of the window using white text characters. Below the QR code is a command prompt which reads: jack@winesap ~/Software/stammtisch/stammtisch *(feature/sync)*% target/debug/ssb-qr pick --seq 2 --encode --terminal.

Single #SSB message to QR code for #sneakernet purposes

20.07.2025 19:37 β€” πŸ‘ 6    πŸ” 2    πŸ’¬ 2    πŸ“Œ 1

This is one of the longstanding onboarding problems with SSB. You follow a few people and suddenly you have 100k JSON messages to download, parse, verify, and index before you can display recent content.

23.07.2025 00:48 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

πŸ€” but a merkle root doesn’t prove anything to a peer without the whole chain right? It would be useful to quickly verify that two peers have the same chain, but I’m imagining a scenario where a peer can fetch just the last few messages on the chain but still know they are part of a valid chain.

23.07.2025 00:46 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

But now you have my gears turning... why can't we have some adjacent channel for signed zk proofs that solve the initial sync problem on SSB? Like for every message I add to my chain I also publish a zk proof that it's a valid part of the chain, so it would be backwards compatible?

22.07.2025 19:24 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 3    πŸ“Œ 0
Tilde Friends - Make friends and apps from your web browser. Tilde Friends is a Secure Scuttlebutt client and a platform for building, running, and sharing web applications.

Yes. Some folks have built sneakernet tools for SSB, but none that use sk proofs to my knowledge. One I remember is tildefriends.net/&aeWz5JU3my3...

22.07.2025 19:20 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

I guess a similar scheme for a QR code could be to just request Bob's genesis message from peers before writing it to the database. If you can't find it then you could show an unverified checkmark or something. That wouldn't require any changes to the gossip protocol.

22.07.2025 19:13 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
GitHub - ssbc/ssb-ooo: retrive ssb messages Out Of Order retrive ssb messages Out Of Order. Contribute to ssbc/ssb-ooo development by creating an account on GitHub.

It reminds me of ssb-ooo (out-of-order) which can be used to request a single message from peers. Instead of verifying that the message is part of a chain, you only get the message if someone you follow replied to it. The assumption being that they have the whole chain and verified it.

22.07.2025 19:09 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

I think attestations do fit well within the ethos. However you can't tell if Alice and Bob are friends (mutually following one another) unless you have all of Alice and Bob's follow messages πŸ€” but you may be onto something here.

22.07.2025 19:06 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

I have been finding AI really useful for coding, but this is a good reminder that AI benchmarks are not representative of reality, and developers cannot be trusted to accurately estimate their work, even after completing it πŸ™ƒ

14.07.2025 14:44 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
DWeb Camp Cascadia, Aug 8-10th, Salt Spring Island, BC DWeb Camp Cascadia takes place August 8th to 10th, 2025, at the Salt Spring Island Farmers' Institute in the Southern Gulf Islands, BC, Canada. Join us for an outdoor, camping-focused gathering of re...

Guess what folks? DWeb Camp Cascadia is on, and tickets are live! Aug 8-10, we'll be camping out on Salt Spring Island in the first-ever regional DWeb Camp for the Pacific Northwest.

Learn more and get your tickets here:
dwebyvr.org/camp/

#dwebcampcascadia @getdweb.net

16.06.2025 18:38 β€” πŸ‘ 19    πŸ” 10    πŸ’¬ 2    πŸ“Œ 4
For the first time in my career I’m taking a shot at solopreneurship: building and launching my own software in an attempt to support myself financially. My goal is to launch six product experiments in six months.

So far I haven't met my target of a 5% conversion rate, so I'm moving onto the next thing! I wrote some rough notes about it on my weblog. If you have any advice, thoughts, or questions I'd love to discuss! mattlorentz.com/weblog/2025/...

27.05.2025 20:18 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
SpoilerFree.gg - CS2 Tournaments Without Spoilers Watch CS2 tournaments without knowing the results beforehand. The best spoiler-free experience for Counter-Strike 2 esports fans.

It's been about 1 month since I started my solopreneurship journey aiming to do six product experiments in six months. I launched spoilerfree.gg about 10 days ago and have been monitoring the metrics on it since then.

27.05.2025 20:18 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

For now I’m taking some time to work on my own projects. I’ll share more on that when there is more to share :)

07.05.2025 21:27 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Working to build healthier social media with such a diverse team and community was such a transformative opportunity for me, and I’m sure I’ll always look back on it as an inflection point.

07.05.2025 21:27 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

@mplorentz is following 20 prominent accounts