Oddbean new post about | logout
 Nostr Safebox Update

Not yet ready for prime time, but I am a making super progress.
Nostr safebox is a proof of concept to test whether a ‘wallet’ can exist ‘out there’ in the nostr network (encrypted data on redundant relays). So far it is progressing better than expected, I can:

1. Receive a lightning invoice and ‘deposit’ funds as Cashu tokens.
2. Make a payment to a lightning address using those tokens.
3. Receive a Cashu token from another mint, swap funds to home mint.
4. Store and retrieve private encrypted information.

A few next steps,

1. Support holding tokens from multiple mints (right now swapping to a single home mint).
2. Accepting tokens with nostr DMs
3. Continued testing across relays (a relay out of China is my fave to test so far.
4. Continued development, with the goal of replacing the backend component of my Lightning address payment system to remove dependency on a custodial wallet database.
5. Documentation of the functionality so it can be implemented in other languages (currently Python)

Of course, all open source. Repo with the latest below.


https://github.com/trbouma/safebox https://image.nostr.build/9d06ba115167fd10e56f5b8f2c3a675e0b11bc39082ac1906905f3d8e3297880.jpg  
 👀
nostr:nevent1qqs8uqlzhdnqtkz5pm52phstxfl77m9aqemzdzal5t4g29464q9qsrcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsygqxk7qe6lcu0a28yyvzvmkhhj58shww4cy7xm4r5jhkvhrdrkpj0spsgqqqqqqssv9tsv 
 > Of course, all open source. 

💜🫂 
 Remember that convo? That was a defining moment for me. 🙏 
 The code might be shit, but ask me anything about Chaumian blind signatures and comprehension of said blind signatures in complex Python data structures. 
 This is really cool, gonna keep an eye on it. 💪  
 Thanks. Part of my motivation is me being uncomfortable for hosting custodial wallets. I think this is a good compromise as I would be only holding the nsec of an ‘independent’ component. If the user has access to this nsec (which I will give them), they can directly access the information or pull the funds at anytime without my permission or using my custodial service. 
 Nutsack vs Safebox 🤣 Great work. 
 Safebox is just Nutsack with some clothing on.  
 Why? 
 It’s a ‘wallet’ that can exist across relays (and across jurisdictions) so there is no,single point of failure, aside from protecting your the nsec. I have the redundant relays working, now focusing on mult-mints so you can swap your proofs between mints if you suspect of them.

As for ‘why’ - it’s an experiment- ‘can I keep stuff securely in the nostr network?’ - so far successful 
 If you are issuing Cashu tokens, Your single point of failure is the mint. You can’t get around that with stacking it above Nostr. 
 The mint is one of several providers that can issue tokens. The wallet just holds them and redeems them for payment. I can choose and shift between mints as I choose. Agree with the point-of-failure argument, but mitigating against a single point of failure. 
 Thank you. Keep us posted 
 nostr:nprofile1qqs04xzt6ldm9qhs0ctw0t58kf4z57umjzmjg6jywu0seadwtqqc75spzpmhxue69uhnzdps9enrw73wd9hszynhwden5te0wp6hyurvv4cxzeewv4eszynhwden5te0wfjkccte9enrw73wd9hsxv8qkt has already done this and proposed a standard, why not just follow it? 
 I have different requirements.