Last Notes
Excited to share what I have been working on and completely obsessing over.
nowhere
An entire website encoded in a URL.
Hosted nowhere. Present everywhere.
https://hostednowhere.com/
nostr-district update (4/13 – 4/17)
big one this week — mobile got a full overhaul.
mobile
* if you've been playing on iOS/safari and things felt broken — audio not playing, tapping players moving your character instead of opening their menu, the game resizing when the keyboard pops up — all of that has been reworked from the ground up. It should finally feel right.
new features
* crew members can now decline invites; join requests process in the background
* world map (tab) (/map)
* foreground furniture layer + new room items
* connecting overlay shows while presence is syncing
fixes
* ghost players when switching rooms
* polls not closing + scroll position not remembered
* tarot/fortune sounds playing after leaving the alley
security
* XSS patches + CSP header added
#nostr #grownostr #app #thedis
come hang → https://www.districtn.online/
#nevent1q…62j4
Learn to #FIPS https://learn.fips.network/
Anamorphic Monero Transactions: the Threat of Bypassing Anti-Money Laundering Laws
https://eprint.iacr.org/2025/1961
This is such an awesome endpoint! I integrated this with https://github.com/vcavallo/nstrfy-android totally painlessly. The days of choosing between "users can only paste npubs" and "build a shitty bespoke profile discovery thing in your client" are over.
#nevent1q…4vud
Yeah so here's a NIP for the nostr: easy plagiarism detection
X tag (big X) = simhash of content field
If clients standardize putting the simhash of the content into the X tag, you can query nostr for plagiarized content and it will even work if they changed the content slightly. @nprofile…99h6 is doing this already.
Here's a simhash implementation
https://github.com/arkin0x/simhash-ts
GM @nprofile…tkue @nprofile…2lxp @nprofile…jp2l @nprofile…pqyq
#nevent1q…hw2z
Proposed new #superpower for the nostr protocol - using the “o” tag to store the sha256 digest of any original document/byte array (pdf, jpg, bin, etc).
That means the digest is automatically indexed searchable as the “#o” tag in a filter.
I’ve tested it. It works. I am planning to use this for transferable title documents, such as electronic bills of lading (printed as a PDFs).
This approach also releases me from those janky proprietary certificate authority schemes, like Adobe Acrobat that try to trick you into a subscription service when all you want to do is issue and validate the authenticity of a f***ing pdf, without using some paid certificate authority racket.
I'm giving everybody a 1 hour head start.
Two names have been registered for testing: `titan` and `bitcoin`. Everything else is unclaimed. Keep reading to see what I'm talking about.
https://2zrgjemvgxppn2jwgm61w6yrqqlcmm8njvhby68a9cj7ooo5phshakespeare.nsite.lol/
NSite's currently have two glaring problems. DNS dependency and names you can't remember. Try to type that from memory.
Titan is a native desktop browser that resolves nsite:// URLs. See the video below. When you type nsite://titan, the browser looks up "titan" in a name index, gets the associated Nostr pubkey, fetches the site manifest from relays, downloads the content from Blossom servers, and renders it. No DNS. No certificates. No hosting providers.
Like normal domain names, I bet you can remember nsite://titan.
You can also use the underlying npub directly for navigating. E.g., nsite://2zrgjemvgxppn2jwgm61w6yrqqlcmm8njvhby68a9cj7ooo5phshakespeare.
Titan is still in early alpha. It's missing essential features and will have bugs. Feel free to contribute.
The name "titan" is registered on Bitcoin using an OP_RETURN transaction. As long as it's up to me, it's permanent. The protocol allows for transferring this name. You can learn more about this in the README and docs (https://github.com/btcjt/titan/tree/main/docs).
How it works:
Every name registration is a single Bitcoin transaction with an OP_RETURN output containing an NSIT payload — a protocol prefix, the name, and the Nostr pubkey it points to.
First-in-chain wins. The first valid registration claims the name. Duplicates are ignored. The blockchain is the arbiter.
Names are controlled by a Bitcoin UTXO. Whoever can spend that output controls the name — update the pubkey or hand off ownership entirely.
Every step from name to rendered page is cryptographically verified. Name to pubkey is secured by Bitcoin proof-of-work. Pubkey to manifest is signed by the site owner's Nostr key. Manifest to content is addressed by SHA256 hash.
The browser doesn't need Bitcoin Core. Name lookups happen through Nostr events published by an indexer service that watches the blockchain. Anyone can -- and maybe should -- run their own indexer. The Titan browser uses the titan npub by default, but you can change it to point to yours.
You can register names at nsite://titan/register — it walks you through step-by-step generating the register transaction using Bitcoin Core (bitcoin-cli).
nsite:// is an open scheme. Other browsers can implement it. Other indexers can publish the same name events. Titan is the reference client.
Two names registered for testing: `titan` and `bitcoin`. Everything else is unclaimed. Insert cringy Satoshi quote about getting some -- just in case.
Open source: https://github.com/btcjt/titan
https://blossom.westernbtc.com/704a515b38ec7a058f3533b091a0f8267d10076f0b8e9908c5efce2dff234d93.mp4
If you are a bored ex-programmer in this sunday evening here's something for you to look at: https://github.com/nostr-protocol/nips/pull/2281
https://nostr.media/50da90a24726067baaa3e1285b0b8e1a098114f08d2ba859271dc3bafd6aba94.mp4
Please send feedback and suggestions if you have any.
https://v.nostr.build/kD4PvUeU6sXlDReT.mp4
if you're a client dev, TURN UP
if you're a fan of a client dev, tag them and TURN UP
the VOLUME.
Built this fun little photo sharing app in the last days. It serves an encrypted photo album from blossom servers. Details below in the comments...
https://blossom.primal.net/750676e250f5822ff765f062f7ca92028739359ca3ddc85a6cff7944c9697f36.mp4
Hey! How’s it going? I’m sharing some new ideas that came out of @npub1s0v…rmq5 6. They feel especially relevant given the recent news about compromised keys.
This is a new NIP for identity checkpoints. In simple terms, a checkpoint is a signed event that says: "this key is me at this moment" Over time, that checkpoint can gather evidence and attestations from other people, helping to maintain identity continuity.
https://github.com/nostr-protocol/nips/pull/2278
The idea is that anyone can create a checkpoint to show they control a key. Later, if something bad happens, like losing the key or having it compromised, they can publish a new checkpoint linked to the old one. That creates a lineage people can look at to decide whether the new identity claim seems legitimate or trustworthy.
When you combine this with OTS, social graphs, NIP-05, and other forms of evidence, you get a way to deal with identity recovery, which in decentralized networks like Nostr, is crucial since there is no central authority that can definitively say "this person kept their identity". The best we can do is evaluate the available evidence. This proposal is all about that
Alongside this, there is also a complementary Snapshots NIP, which lets users preserve a specific version of a replaceable event. That can strengthen the evidence and reduce some attack vectors.
https://github.com/nostr-protocol/nips/pull/2279
I’ll soon publish an app to help create, visualize, and use all of this. Hope you find it interesting.
#soveng #sec-6
strfry 1.1.0 beta series:
I'm working on a new release of strfry and there are some beta releases tagged in case anyone wants to give them a try. There are lots of changes in the queue. I'll write them up in more detail soon.
For now here's a small new feature in 1.1.0-beta4: --range option for sync. Basically it's a convenience feature for specifying since/until in your filter. Examples:
strfry sync wss://blah.com --range 1h-
^^ sync just last hour of notes
strfry sync wss://blah.com --filter '{"kinds":[0]}' --range 1Y-6M
^^ sync kind 0 events between 1Y and 6M old
This is especially useful for "paginating" big syncs. You can first do 2M-1M, then do 3M-2M, then 4M-3M, etc.
Bunker46 and Bunker46-extension got their own websites now:
https://bunker46.github.io/
https://bunker46.github.io/extension
GM, my Haven relay app is now available for both MacOS and iOS
https://testflight.apple.com/join/kN3zE1H1
https://logen.btcforplebs.com/7ef7fb6c89ed6a259ee03ac5db6d2bf96c9488e4a614c1af1f526232f0c919b0.jpg
Added login via browser extension, nicer issue view, issue creation and comments.
https://gitplaza.netlify.app/68d81165918100b7da43fc28f7d1fc12554466e1115886b9e7bb326f65ec4272/nostr/issues/8073ce3c1b7cff746da04520a355385e3ccf03c0e9c266461aeec2a2a3d2e65d
#gitplaza #gitvianostr #releastr
https://image.nostr.build/7daeb366f4eb30b7e2eaf8f5467d918a990b4dfe9d5adae419c28bdda00542e8.png
Worked on this OAuth Bunker Remote Signer in the last days. It allows companies and organizations to store their NSECs securely and have their employees and contractors use the NOSTR identities for a limited time without direct access to the secret keys. Including fine grained control through assignment of specific kinds.
https://blossom.primal.net/139dac27a14773c42bb5bd5f5c169788a5b8e9513bc57d75ddd0197ec193bd24.jpg
https://blossom.primal.net/ce303ab21b499da8c2d1ef2deee192b7a6253479f6cdf5f9e39d8a36ca779a8a.jpg
https://blossom.primal.net/a7ba89e5ae76d042db789320c0c60041e8adca742966e64263a95809251b4d16.jpg
https://blossom.primal.net/dc3bb5cfd760c0758c13dc749002db5603c9003c59b83ec9008fa7d2dbe492bb.jpg
Screen Cam on nostube: https://nostu.be/v/naddr1qvzqqqy9hvpzpd7x76g4e756vtlldg0syczdazxz83kxcmgm3a3v0nqswj0nql5pqy2hwumn8ghj7un9d3shjv3wv9hxwmmj9e5k7qg4waehxw309ac82unsd3jhyetvv9ujucm0d5q3vamnwvaz7tmjv4kxz7fwwpexjmtpdshxuet5qqjrsvtyxgukzdpn956kxvrr956xxetr943xvdfh95unjer9x9jxxdrrvenrzyssf5d
@npub1era…skz0 has the best NIP-42 UX, yoink it https://github.com/purrgrammer/grimoire/tree/main/packages/relay-auth-manager
While I put the finishing touches on Horcrux I'm starting to contribute to Flotilla, and one of my goals is to get Discord-style voice channels added before their age-verification policies go into effect. If you are a user of Discord voice channels, what's one thing you would change about them?
I've always been interested in Discord voice channels because they are a rare combination of ephemeral, porous, serendipitous social space on the internet. Most of our internet communication happens in low-bandwidth, structured spaces where the contents are saved permanently. So in that sense Discord voice channels share more in common with IRL spaces than something like microblogging.
If you're a user of voice channels or otherwise would like to give input on them, I'd love to interview you. And if you'd like to be an early tester or to collaborate on the implementation please reply here or send me a DM!
Still keeping your Nostr keys in a browser extension? Put them in an nsec bunker and use Bunker46 Extension — same NIP-07 experience, keys stay in your NIP-46 bunker, not in your browser.
(Chrome Web Store submission pending)
https://github.com/dsbaars/bunker46-extension
https://blossom.primal.net/d36aaa349ef398f35e2addd7c980b55ca58247fd1ee244356e28de49f2bb37fc.png
@nprofile…s4hg , @nprofile…88nj , @nprofile…frzk , @nprofile…waax - You are the npubs that I have so far found who post web archives. Accordingly, you've been invited to http://relay.wayback.st - a pyramid instance intended to be a home for nostr web archives. relay and blossom server so far.
We're also running a websitestr fork at https://replay.wayback.st , slightly modified for now but lots of features planned.
- Near term: WARC files posted to the wayback.st blossom server, web archive events posted to the wayback.st relay; add negentropy and blossom mirrors for archive resiliency.
- Mid-longer term: fork nostr web archiver extension to add some convenience features given wayback.st; extend the replay UI to make finding archives from your friends and extended network easier; make archives easier to navigate for non-nostriches; integrate with lantern and highlightning in general
- Ultimately: purpose-built clients for archives and paywall-hopping; possibly a Firefox/Chrome fork for the same; integrate payments and bounties for paywalled articles; integration with existing scholarly journal archives and other internet archives.
Igloo IOS testflight is a nostr threshold signature experiment happening in real time!
#nevent1q…dd7m
Join the testflight now: https://testflight.apple.com/join/72hjQe3J
https://plebdevs-bucket.nyc3.cdn.digitaloceanspaces.com/videos/frostr/igloo-ios-testflight-2-of-2-experiement.mp4
How to build a country wide Meshcore network
0. See if you already have a community. If not, start it - website, meetups, ...
1. Get ham radio and rf enthusiasts on board. They know things you don't and it's much more difficult than just get a big antenna
2. Settle on frequency and parameters that work in the country. If don't know, EU narrow preset is good to start
3. Repeaters in line of sight, preferably on hills. Solar+battery powered nodes (we want the network to work when grid is down)
4. Monitor, communicate, test, tune
5. Meetups are good
6. Do all this before a revolution, before apocalypse
7. Get as many companion nodes as possible. Give them to family members - flashed and ready to go.
8. Use them daily to get a feel, see uncovered areas
9. Have fun!
Note: I do not take credit for this anywhere, it's just what I've observed others did. I have a shitty repeater in already well covered area, but hopefully I'll be able to set up and maintain a repeater in an uncovered area soon.
There is a generalized over reliance on plain text application specific data published by Nostr clients, which is really concerning. Loads of apps publish this data every time you read notifications, set settings, check your home feed, or manage a premium subscription, among other things. All of this is normally published in plain text to your relays. This data is quite revealing, and the current default behavior of some signers is to sign these events by default, so they get published without the user noticing it. I don't know if you realize this, but it's pretty leaky. I would say it's even worse than centralized platforms collecting data because all of this information is public and in plain text. It's a privacy concern that exposes usage habits and other metadata to everyone, and all of this data can be used by anyone. Are you interested in the last time someone checked Nostr, or profiling an user? Just query for their latest events with kind 30078. This has to improve. Developers should be conscious of how this harms user privacy, and users should recognize how exposed they are. The first thing you can do if you care is go to your signer and disable signing these events automatically. The apps you use might feel a bit broken, and you'll have to sign these events manually, but at least you wouldn't be publishing these leaky events automatically. Now, I'm going to share a little list of what you can find out there... for free
- YakihonneAppSettings
- store-settings
- seen_notifications_at
- ride_request
- routstr-chat-api-keys-v1
- plebs/watch-history
- plebs-settings
- Primal-Android-App
- Primal-Web App
- Primal-Web App | get_app_settings
- Primal-Web App | get_membership_status
- nym-settings
- nym-shop-active
- lumi-settings
- ghostr-publish-history
- ghostr-processed-submissions
- fanfares/purchases
- AmethystSettings
And this is just some of them. If you want to inspect this yourself, you can use and modify this `nak` command:
```sh
nak req -k 30078 wss://relay.nostr.net wss://relay.damus.io wss://relay.primal.net wss://nos.lol | jq -r '.tags[] | select(.[0] == "d") | .[1]' | sort -u
```
I must have read nips/57.md and dips/03.md 30 or more times today, I'm doing some analysis on 'private zaps'. They're not really that private, I don't know why I thought they were. They also should have no problem being counted in all these public zap amounts, I thought they weren't included. Anyway, I learned a LOT and now I will just be absorbing this and thinking about what I really want to see from zaps, vs. what's there now. What parts of this whole zap thing are not very practical, and what does that mean for senders and receivers of zaps as far as this data collection is concerned.
Just released nip55-android, a library for Kotlin Android developers to implement NIP-55 Android signer support into their applications easily (about 20 lines of code).
https://github.com/Letdown2491/nip55-android
Pushed a new build of DTAN-SERVER
What is DTAN-SERVER? Its a self-contained torrent index replica with automatic replication via P2P relay connections (peer discovery via DHT with UPnP/NAT-PMP). A custom relay with search capabilities and negentropy sync! And the DTAN web application all-in-one!
What does that mean? It means that you can run this yourself and have a local copy of all torrent metadata fully searchable locally, and with upcoming Jackett support you can soon plug this into all your *arr applications!
Running DTAN-SERVER here:
https://relay.dtan.xyz/
Here's a very simple and hopefully very fast read-only client for NIP-34 git repositories:
https://image.nostr.build/b8642babe490a628570e23ae0ad3a43489099f001e41dd2d742844017e9ba9fe.jpg
https://image.nostr.build/fa85be6cf7d54c3d6e205cd7f18d9b159d398b440597ddfc2eb9fd89e0ec0094.jpg
An example: https://viewsource.win/fiatjaf.com/nostrlib/_/master/~/nip17/nip17.go
Some TEPP q&a. More info, documentation and explainers will follow soon. Read my operation kidstr articles for more info or visit weboftrustfoundation.com
#nevent1q…4lzl
The system can run at any level, so it could run at the bunker/signer, and/or the client (and/or the relay, but not a likely place for this to run). Obviously it would require implementation, so yeah you'd need a 'special' client (as is the case with any NIP), but if you have it running on a signer/bunker, you can use any client out there and still get most of the benefits of the system.
#nevent1q…6mc9
You say you don't want it to be public that your child is running under this scheme, but im not so sure if that is an obvious possition. The scheme allows to encrypt the specific permissions as to hide what the social network etc. That info can indeed be sensitive, but as for it being a child in the first place...that cuts both ways:
Sure preditors can use it as an indication for targetting; but well meaning actors (say for instance a relay that has 18+ content) could actively block interaction with those type of npubs.
At the same time, the whole point of TEPP is to protect children from preditors in the first place, and you can wonder if preditors really need to rely on the existence of association events to find their prey.
#nevent1q…tlcm
This is not specified yet, but yes you want a way out of the association event; this is not impossible but i have simply not mentioned a concrete suggestion as of yet. Indeed the idea behind the system is that children can just continue using their existing keypair into the future.
I wrote up some instructions for running a promenade signer, if that's something that interests you. Promenade creates a cluster of servers that cooperatively sign of Nostr events without any of them knowing your Nostr secret key. Bleeding edge identity tech. Join us! #naddr1qv…t2nc
I have an obnoxious number of Simplisafe devices for my small apartment.
A Charlie Brown Christmas (1965)
https://image.tmdb.org/t/p/original/vtaufTzJBMJAeziQA1eP4BLU24C.jpg
https://archive.org/download/you-cut-20231030-080602598/YouCut_20231030_080602598.mp4
#animation #children #Christmas #film #movies #kinostr
I need privacy not because my actions are questionable but because your judgment and intentions are.
Here's a demo of how you can setup a pyramid relay for you in very few steps: https://video.nostr.build/a7d6bef69b3931623ad80bec0e2e38632a03be66fc0a878c5f310703b289180e.mp4
#nevent1q…8s9k
when I was introduced to bitcoin over a decade ago, I was told I could send any amount of money to anyone at any time and it will always work. I was told that nobody would ever be able to steal from my wallet.
these new people and their disgusting contraptions make me want to fucking throw up. they all started piling into the community 8 years ago insisting that it was all impossible and they started forcing their retarded and backwards ways on everyone and fooling new users with centralization and affinity scams.
#nevent1q…94sm
Could it be possible to improve user retention by making Nostr web apps work **without** a browser extension?
Help me test this vision by uploading your static (nostr) websites at https://44billion.net. Sign in/up then click on the (n)app icon with a big "N" (a Napp store) where you can upload them.
Hint: Before uploading, you could add some code to your napps to support auto-login. You just need to get the logged-in user's pubkey on load by calling `const userPk = await window.nostr.peekPublicKey()`, which returns the pubkey without prompting the user.
I cant wait for proper subjective #WoT to melt influencer culture down into a useless fucking slag heap.
People who create real value in the world will naturally accrue real, voluntary trust from those who recognize real value. The competence and effectiveness of a trust "sub net" that has bootstrapped itself off actual delivered value will be evident by its proof of work in the real world. You can't influence you way into a network like that, you have to be actively recognized by those within it - they invite you in, you don't buy a ticket.
The difference between top-down, inflated influencer attention bubbles and bottom-up, hard-value bootstrapped subjective trust networks is as stark as a cantillionaire clown world economy and a Bitcoin Standard world.
---
P.S. It's early days in the WoT wars. Pay attention to who throws their support behind which approaches. What I call "proper" WoT are those where the individual is the center of their own trust perspective, and in this sense are permissionless and disagreement-supportive. "global popularity" is irrelevant when the individual can simply ignore or even "nack" a popular node. This is bad for a certain type of influencer, marketer, VC, and anyone else whose sway would be diminished once their Emperor's Clothes are revealed.
You cannot print reputation in that environment.
Saturday night launch. 🚀
Nostr's UX problem isn't a secret.
30-day retention trends to 0%. Daily active users stuck at ~10k. Posts disappear. Followers vanish when you switch apps. Every app feels like beta software.
I've spent 2+ years arguing that great UX wins. So I designed a meta-study, threw a few hundred dollars at Claude, and put together what the evidence indicates.
tl;dr: Ship working experiences, then add features.
🔗 https://nostr-ux.com
6 critical patterns backed by 100+ citations:
‣ Onboarding, content discovery, core interactions
‣ Performance, progressive complexity, cross-client consistency
‣ Anti-patterns to avoid + validation checklists
I'm not a designer, but I know what good looks like. This is opinionated, evidence-based, and focused on retention.
What am I missing? What did I get wrong?
Send PRs this way: https://github.com/shawnyeager/nostr-ux-research
cc: @nprofile…7l5w @nprofile…dqz4 @nprofile…kt0h
⚡️🇫🇷 NEW - French citizens are sending money to former president Nicolas Sarkozy, who is being held at La Santé prison in Paris. These donations, often around €20, are intended to improve his conditions of detention.
https://blossom.primal.net/982de5d94fdfef6ebb71fa85b1ee7e7f008af37317e50979c48198af0ad5c15b.jpg
https://blossom.primal.net/7fb9ede03e0a58a35cd0755f76032cce062b3ba13e865621455f80c90f2f5712.jpg
Final test - Nostr satellite off grid relay
Testing message and recording backend video showing this message arriving at relay via Internet being converted to audio via the satellite modem, transmitted to a Geostationary satellite via BitSatHQ transmitter and then received on the BitSat (off grid portable ) which captures the satellite downlink , decides and saves this message in a txt file.
With the drama of BIP444 I've seen a lot of people confused about the nature of soft-fork vs hard-fork. This might help:
Back in the block size war we had a lot of similar confusion, mostly because it isn't really very clear cut. Some people talked about "evil soft forks" to try to get rid of the simplistic notion: "soft forks are much better and hard forks are much worse" which tends to persist (naturally). The problem is that whether a fork is contentious or not is *much more important* than whether it fits the "soft" or "hard" technical definition.
When a fork isn't contentious, then the soft vs hard distinction (restricting the ruleset or relaxing it) really matters a lot, because "passive" network participants (imagine a piece of hardware that will never get updated to a new bitcoin version, in the extreme) will be fine with the first and not with the second.
When a fork *is* contentious, and miners, following economic incentive, end up choosing different rulesets to support different bitcoin users, then the chain genuinely forks into two histories. The fact that one ruleset is more restrictive than the other is part of the story but doesn't change the fundamental point that we have a chain split. This of course did actually happen meaningfully with bitcoin-cash in 2017. The term "evil soft fork" was some people trying to shake others of the misconception that if a fork is "soft" it's not coercive and not forcing action on anyone; that's definitely not true *if the fork is contentious*.
#bitcoin
🥜 #NutNovember
I’ll admit it. I’ve complained about Cashu without ever really using it. Testing and random transactions do not count. So this month, I’m going nuts:
⚡ Using Cashu wallets for zaps and everyday Nostr transactions.
⚡ Treating eCash not as a novelty, but as real Bitcoin on Lightning. Fight me on this!
If we’re serious about freedom tech, we’ve got to use it and not just talk about it.
So for the entire month of November, I’ll be using #Cashu instead of my usual Lightning wallets and I’m inviting you to join me. Let’s see what it’s really like to live on eCash for a month. 🥜💸
Here’s how you can join in:
👉 Option 1: Use cashu.me as your eCash wallet.
It uses npub.cash automatically as your Lightning address.
For zapping, connect your NWC wallets.
Be sure to log in with your browser extension so you use your real npub (otherwise it’ll generate a random one).
👉 Option 2: Try the @npub1kva…tkzv app
Use it for both sending zaps with NWC
And your own minibits.cash Lightning address
🪙 Recommended Mints:
mint.chorus.community
mint.minibits.cash/Bitcoin
mint.0xchat.com
Joseph's Squares is a game to be played on pen and paper. It goes like this:
1. draw 2 squares;
2. player A draws a line between one side of a square to a side of the other square;
3. once a side of a square has been connected it can't be used again.
4. lines can't be crossed ever.
5. player B draws another line again connecting one unused side of a square to an unused side of the other square.
6. and so on until a player can't draw any lines, that player loses.
In a game with 2 squares the second player can always easily win, but once you get that you can start playing with 3 squares, 4 squares and so on.
It isn't meant to be the best game of all times, just better than tic-tac-toe.
I haven't tried to play with triangles or other shapes but could be interesting too.
You have to be a reasonable human and not try to draw confusing lines. These confusing lines cannot change the game in theory but they can confuse everything and ruin the game for both players (it's ridiculous that I have to say that but many people to whom I tried to teach the game had this stupid idea, so I'm saying here).
Something nostr is still missing is getting damn good quote tweets from people you didn't know before:
https://image.nostr.build/2c4bb41a2a056a1b4a9f576b7eaf85bb95553b66c05108a07cb84f3ebcc18418.png
https://x.com/mobbs_mentality/status/1981718966209855652
I am thinking about creating the concept of a “cpub” or child public key of a root npub. The idea is that the cpub can be provably traced back to a npub. I can have as many cpubs as I want, that map back to the same ‘identity’. If a cpub keypair gets compromised, I can publish an event that invalidates that cpub.
As for clients, when they see what is a cpub, they can resolve back to the root npub and present that identity instead.
The driving requirement is to have a protected root npub that corresponds to my identity; it is high-value so I only want to sign with it when absolutely necessary - keeping it on a hardware signer device.
Any comments on this approach?
Matthew 16:18 👀
https://git.wisehodl.dev/jay/go-roots
Here's a crazy idea: @nprofile…w5n2 talked a while ago about allowing recipients of NIP 17 DMs to delete their DMs. I was against this, because it's weird, but what if we just made that part of the protocol in general?
In other words, if someone tags you, they're giving you permission to delete your event. This would make it possible to delete conversations you don't want to be a part of, retaliate against spammers and harassers, etc. Obviously, reports, follow lists, etc wouldn't work so well, so there would have to be exceptions.
I could see this going some way towards making conversations more civil, since the person you're dunking on could always just nuke your slander. To circumvent that, you'd have to avoid directly replying or mentioning them, which would limit the influence of your post to the people already in your circle.
The solution to the knots debate (or whatever it's called) is that the both sides must realize that every Bitcoin transaction is spam.
#Cashu mint on your Android
https://github.com/heathermm55/purrmint