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 · 27w
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 Kat · 29w
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 · 153w
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 · 154w
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 · 153w
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 · 153w
Good points. What is a good way to present the test vectors so it's easy for people to check their implementations?
nout · 154w
Maybe... I could see and understand the arguments against.
elsirion · 154w
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 · 154w
Wow, Amethyst supports nearly everything 😲 https://i.imgur.com/K2i6mDY.jpg
Natalia · 154w
from snort 🤔 https://nostr.build/i/nostr.build_9a68b99afaeacb1aa3b9d21ad45dbab93f45c71c0973f7fa196124ed37865918.png
ndeet · 154w
Everything but footnotes work in Amethyst
shafemtol · 153w
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]