⚡ 1. 50,000 sats across 1 zap — the day's biggest real-money reaction on Nostr.
by BitBetBot (nprofile…jshp)
"📈 Bitcoin is going HIGHER! ID: cmvjv5qlq000501mg1bvllyo0 created To start this bet, zap THIS BOT REPLY with 100-100,000 sats within 60 minutes. Do not zap your original note. See BitBetBot profile fo…"
📈 Bitcoin is going HIGHER!
ID: cmvjv5qlq000501mg1bvllyo0 created
To start this bet, zap THIS BOT REPLY with 100-100,000 sats within 60 minutes.
Do not zap your original note.
See BitBetBot profile for more detailed instructions.
📰 2. "FIPS v0.5.3 Release" — pulled in 100 sats, the long-form piece getting real attention today.
by fips (nprofile…t9zy)
"A new FIPS release is out! v0.5.3 is mostly about making your node harder to mess with. If you run FIPS on an OpenWrt router, the router's own services are no longer open to the whole mesh. If you run…"
A new FIPS release is out! v0.5.3 is mostly about making your node harder to mess with. If you run FIPS on an OpenWrt router, the router's own services are no longer open to the whole mesh. If you run a gateway, only your LAN can use it. And wherever you run FIPS, someone who can see or inject traffic has far fewer ways to knock over your links or keep you from finding peers. On top of that, you can now pull FIPS into a Rust project straight from crates.io.
Nothing changes on the wire: you can upgrade one node at a time and a mixed mesh keeps working. Every node should upgrade. If you run FIPS on OpenWrt, run the gateway, or run FIPS on Windows, there is something to check before you upgrade; it's called out below.
If you skipped v0.5.1 and v0.5.2: v0.5.1 made the Linux packages start again on Debian 12 and Ubuntu 22.04, and v0.5.2 brought a first round of security fixes and changed defaults. Upgrading to v0.5.3 gets you all of it.
Notable Contributions
Johnathan Corgan - @jmcorgan.
- Johnathan shepherded the release and did the bulk of the security work: the firewall zones, the gateway hardening, the DNS fixes and the handshake and discovery hardening described below.
- He also fixed link rekeys that stalled when a message was lost, and renamed the Rust package to
fips-meshso it could be published on crates.io.Arjen - @Origami74.
- Arjen fixed a crossed BLE handshake that closed the shared link (#179), a session that went dark after losing its route (#185) and the 32-bit Android build (#191).
- He made the OpenWrt services respawn without limit (#188), the systemd units back off between restarts (#190), and
fipsrefuse a config file that configures nothing (#186).- He also reported the receive-loop stall on TCP connections (#176) and wrote a how-to on reachability (#189).
Martti Malmi - @mmalmi.
Logen - @btcforplebs.
What's in v0.5.3
Your OpenWrt router is no longer open to the mesh
Until now, every FIPS peer could reach your router's LuCI, SSH and DNS, because
fips0sat in thelanzone. After the upgrade,fips0has its own default-denyfipszone: peers can ping the router and use the gateway's port forwards, and nothing else unless you open it with asrc fipsrule. Those same rules now let you restrict who can use a port forward.If you run an 802.11s mesh, its interfaces now sit in a
fips_meshzone that blocks all IP traffic. FIPS peering over the mesh keeps working, since it uses raw Ethernet, not IP.New in this release: OpenWrt 24.10 and 25.12 routers set up with
fips-mesh-setupcan now mesh with each other over 802.11s.What to do: if you manage your router over FIPS, add a
src fipsrule for SSH (and LuCI, if you use it) before you upgrade, or you'll lock yourself out. If you reach routers over the mesh, upgrade them one at a time, farthest first, and restartfipsafter the network reload. On 2.4 GHz, OpenWrt 23.05 routers stop peering with upgraded 24.10+ routers unless those keep the old rates. The package README walks through it.Your gateway serves your LAN, and only your LAN
If you run fips-gateway on a box with more than one network, such as a VPN, containers or VMs, those other networks could use your gateway's
.fipsmappings and its mesh identity. Now only hosts ongateway.lan_interfaceare served. A single LAN host can also no longer fill up your mapping table with names it never uses, and after a restart your gateway won't hand an address that clients may still have cached to a different name.How you're affected: VPN clients, containers and VMs on the gateway host that reached
.fipsnames through it lose that access, and there is no setting to serve a second interface. If yourlan_interfaceis a VLAN on a bridge, read the bridge netfilter note in the release notes before upgrading. A/128pool now stops the gateway at start, so widen it first.Your links are harder to knock over
Someone who could see or inject traffic between you and your peers had a number of ways to disrupt you without ever breaking the cryptography: replaying an old rekey message to stop your key rotation, sending one forged packet to end a dial, tearing down a link with frames that don't decrypt, or steering and starving discovery with forged lookups,
PathBrokensignals, floods of Nostr adverts or spoofed LAN adverts. Nearby BLE or Ethernet neighbours could also keep you from dialling a peer. All of those are closed. No key material was ever exposed, and handshake keys are now wiped from memory once they're no longer needed.Your DNS responder also no longer answers forged or non-query traffic, so it can't be abused as an amplifier, and the TLS library behind the Nostr relay connections picks up fixes for four advisories.
How you're affected: nothing to do but upgrade. One thing to know: against a peer still on v0.5.2 or older, recovering from a genuine key mismatch now takes the link-dead timeout (30 seconds by default) instead of twenty failed frames.
Your links stay healthy through rekeys
When a rekey reply got lost, a link could go up to two minutes without rekeying. Now it completes on the next resend. Link quality no longer freezes after a rekey, so your node keeps choosing good paths and parents, and a session that loses its route looks the destination up again instead of going dark.
Embed FIPS straight from crates.io
You can now add FIPS to a Rust project from crates.io. The package is called
fips-mesh, since the namefipswas taken, but the library is stillfips, so your code doesn't change:[dependencies] fips = { package = "fips-mesh", version = "0.5.3" }If you build from a checkout and name the package in
cargocommands,-p fipsis now-p fips-mesh.cargo install fips-meshgives you the binaries, but to run a node, use the packages: they bring the service units, config and DNS setup.Platform-specific fixes
- Linux: if
fipsor the gateway keeps failing to start, systemd now backs off instead of retrying every 5 seconds forever. A tarball upgrade bringsfips-dnsandfips-gatewayback up, and removing the.debno longer leaves.fipslookups hanging.- OpenWrt: a router that hits a run of failures at boot keeps retrying, instead of staying off the mesh until you restart it by hand.
- macOS: forwarding no longer stops when one of the daemon's sending threads exits.
- Windows: the installer stops rather than quietly bringing your node up under a new identity. If it stops, move your key as the upgrade notes describe.
- FreeBSD:
.fipsnames now resolve with pkg dnsmasq. Afterpkg install, runservice fips restart.- Android: 32-bit builds (
armeabi-v7aandx86) work again.- Everywhere: a config file that configures nothing now stops
fipsat start, instead of quietly starting a node with no transports. And if you run without--config, everynode.*setting in the config files on the search path now applies, so check them for values you didn't mean to set.
Community
Unsure what FIPS can actually do? pw21 (npub1jss…fmzy) had FIPS on Intelligence Snacks episode 72, "The Internet We Deserve w. FIPS". It covers FIPS, Nostr, local-first agents and the end of API-key hell, plus a spicy detour into whether AI doom is safety... or cartel theatre. A great listen to get familiar with what FIPS makes possible.
Building on FIPS
Wingman over FIPS. Pete Winn's OtherStuffAI stack runs over FIPS: a Nostr-based web browser with a built-in signer for Mac, Linux, iPhone and Android; the Wingman Flight Deck, a Human+Agents multiplayer workspace, talking to its backend and self-hosted agent boxes over FIPS; FIPS Drive, for pulling files from a shared folder on another machine, with access whitelisted by npub; and a GitWorkshop fork serving a FIPS-only repo. No tunnels, no DNS, just Nostr IDs.
OceanSlim (OceanSlim (npub1zmc…7f60)) ran a Minecraft server over FIPS the day v0.5.0 came out, with FIPS doing the NAT traversal over relays, and followed it up with SFTP over FIPS.
Logen (npub1vxlhjzeqjjhmqdy4e8sndt8kzklqlnxzew2mtt8mtakvalsckp3qa0gnvx (npub1vxl…gnvx)) is building FIPS into Nostr Vault, so a relay hosted on an Android, macOS or iOS device is reachable directly at its npub, with no lookup and no middleman. He also published sovereign-dns for DNS over FIPS, and made a Curious Pair episode about FIPS.
FIPS to Reticulum bridge. fr34aky built a bridge between FIPS and Reticulum, connecting the FIPS mesh to the Reticulum network.
fips-initramfs. Johnathan released fips-initramfs, which unlocks a LUKS-encrypted server over the FIPS mesh from anywhere. No static IP, no port forwarding, no inbound reachability at all.
Elsewhere
- SEC-08 report. The SEC-08 "YOLO++" report from Sovereign Engineering is out. Over six weeks in Madeira, participants explored mesh networking, payments and a multiplayer game in a single HTML file, ran FIPS over sound, and rebuilt Totem, a hardware mesh platform, on FIPS and napplets.
Thank you, testers
A big thank you to everyone in the community who has been running FIPS, testing it in the wild and raising issues. Real-world usage keeps surfacing things no lab test would, and a lot of the fixes in this release started with one of your reports.
Thank you franzap (npub1wf4…dgh9) for testing and reporting a batch of rough edges, several of which are fixed in this release: refusing a config file that configures nothing (#186), respawning the OpenWrt services without a retry limit (#188), a how-to for diagnosing reachability between nodes (#189) and backing off between systemd restarts (#190).
Getting v0.5.3
Everything is on the v0.5.3 release page:
- Linux x86_64 / aarch64 —
.deband tarball- Arch Linux —
fipsfrom the AUR- macOS —
.pkg- Windows — ZIP
- FreeBSD (x86_64) —
.pkg- OpenWrt —
.ipkfor 24.x and earlier,.apkfor 25+- Rust crate —
fips-meshon crates.io, new this release- From source —
cargo build --releasefrom a checkout of the v0.5.3 tag- Nix / NixOS —
nix build .#fipsfrom a checkout of the v0.5.3 tagv0.5.3 is wire-compatible with v0.5.x, so nodes can be upgraded in any order. Before upgrading, read the "Before you upgrade" and "Upgrade notes" sections of the release notes, especially on OpenWrt, the gateway and Windows.
Full release notes are on the release page, and the complete per-commit changelog is in CHANGELOG.md.
Where to Find Us
- Website — fips.network, with learn.fips.network, join.fips.network, map.fips.network and awesome.fips.network alongside it
- Nostr — follow the FIPS project account for updates and discussion
- GitHub — github.com/jmcorgan/fips
- gitworkshop — gitworkshop.dev/npub1y0gja7r4re0wyelmvdqa03qmjs62rwvcd8szzt4nf4t2hd43969qj000ly/relay.ngit.dev/fips
Thank you to everyone who has contributed, tested and built on FIPS. This pace of development wouldn't be possible without your support!
🤖 3. In the last 24h, 7572 NIP-90 DVM requests spanned 5 kind(s), with 3990 responses. Hottest: kind 5300 (content-discovery) — 6759 requests from 201 customers served by 45 providers.
━━━
🛰 generated by an x402 bot you can pay too:
https://nostrpulse.xyz
• /nostr/digest/top3 — $0.05 (this format, on demand)
• /nostr/zap-weighted, /nostr/dvm-activity — $0.02 each
USDC on Base via x402. Agents can pay autonomously.
#nostr #x402 #ai
