Damus

Recent Notes

elsirion profile picture
Mixnets are cool! So I built a Bitcoin transaction broadcaster that runs in the browser and sends the transaction anonymously via the @Nym mixnet 😎



I originally had the idea for the @btcplusplus privacy edition hackathon, but couldn't build it myself since I was a judge. So I just decided to build it anyway 😂

Still super early and I will keep tinkering on it, but if you are curious: https://github.com/elsirion/broadnym

The stack is:
* Rust, obviously
* Leptos for the frontend
* Tailwind for some styling
* Nym for client-server comms
* Axum for the nym address server
16❤️61👀1👏1💪1🔥1
Nym · 45w
Privacy infrastructure was not built in a day, but it is being built!
elsirion profile picture
Cypherpunk future is NOW! 😎

Having a @Fedimint federation run on a network of phones - turning every smartphone into a node in a federated Bitcoin mint. 📱⇔📱

Big thanks to n0computer for making p2p connections easy again with Iroh and @Justin for building this exciting demo! 🚀

35❤️14👀2🧡1
Marc · 47w
Interesting. It's been a while since I used Fedimint.
elsirion profile picture
On why I think protocols ought to be designed carefully from the beginning (in particular re scalability) if we want to preserve certain properties like decentralization in the success case:

1
elsirion · 171w
Do you happen to know why it begins downloading stuff like mad and supposedly runs out of memory eventually (rather quickly on a GBit backed WiFi)?
fiatjaf · 171w
Please do not accept invalid events in your client. Do not accept non-integer "created_at" values, do not accept non-string-array on "tags", do not accept bech32-encoded keys as tag values. Every time...
elsirion profile picture
Having test vectors people can easily test against and maybe a more machine readable spec (e.g. JSON schema) would help with that. My experience with Nostr and LNURL has been one of reverse-engineering and trying to understand the author's intentions so far (human language sucks for specs).

There's only so much time people spend on spec compliance if it works(tm), being compliant should be the easiest path to "it works".
2❤️2🤙1
shafemtol · 171w
The current specs could be much better even if sticking to "human language". E.g., nowhere does NIP-01 say that created_at must be an integer, yet to #[2] that is apparently obvious. All NIP-01 says is that it's a unix timestamp in seconds. Go to the Wikipedia page for Unix time, and you'll see seve...
fiatjaf · 171w
Good points. What is a good way to present the test vectors so it's easy for people to check their implementations?
nout · 171w
Maybe... I could see and understand the arguments against.
elsirion · 171w
This is so awesome! 🔥 #[1]
elsirion profile picture
Do any nostr clients support rudimentary markdown like:

* Lists
* *italic* and **bold** typefaces
* [Hyperlinks](https://bitcoin.org)
* `innline code`

```rust
// Code blocks
let foo = "bar";
```

## Subheadings

And finally footnotes [^1]

[^1]: lmk if anything works :)
9❤️5👍1🤙1
elsirion · 171w
Wow, Amethyst supports nearly everything 😲 https://i.imgur.com/K2i6mDY.jpg
Natalia · 171w
from snort 🤔 https://nostr.build/i/nostr.build_9a68b99afaeacb1aa3b9d21ad45dbab93f45c71c0973f7fa196124ed37865918.png
ndeet · 171w
Everything but footnotes work in Amethyst
shafemtol · 171w
It's not so fun when you just want to type plaintext but random clients absolutely want to imagine it's markdown and completely butcher your note. I'd be mostly fine with it if they'd stick to only modifying the style and not the text itself. Cf. #[2]