Arxid – keyed, non-enumerable ID obfuscation
I kept reaching for Hashids/Sqids to keep sequential IDs out of URLs, but they don't use a real key — the alphabet is shuffled by a salt, and the Sqids FAQ says outright "there is no encryption of any kind." arxid is a keyed reversible permutation instead: a balanced Feistel network with an ARX (add-rotate-xor) round function over a 40-bit domain, mapping to a 7-char base62 code. Feed it an integer, get an unpredictable code back; same key reverses it. Runs ~16x faster than a structurally identical Feistel using HMAC-SHA256, because the round function is integer ops instead of a hash…
What it does
In the maker’s words, at launch
I kept reaching for Hashids/Sqids to keep sequential IDs out of URLs, but they don't use a real key — the alphabet is shuffled by a salt, and the Sqids FAQ says outright "there is no encryption of any kind." arxid is a keyed reversible permutation instead: a balanced Feistel network with an ARX (add-rotate-xor) round function over a 40-bit domain, mapping to a 7-char base62 code. Feed it an integer, get an unpredictable code back; same key reverses it. Runs ~16x faster than a structurally identical Feistel using HMAC-SHA256, because the round function is integer ops instead of a hash call. The round count (4) isn't a guess — it's calibrated by measuring strict avalanche. I'm also upfront in the README about what it is NOT: not encryption, not a MAC, not audited. It's a speed bump against enumeration, not access control. The part I care most about is portability: a frozen spec + canonical test vectors act as the contract, so any port in any language validates against the same vectors and is interoperable by construction. Rust reference + TypeScript port so far. Happy to answer questions on the construction, the calibration, or the cross-language design.
Does the same job
all alternatives →- XDXID – Dependency-Free Unique ID Generator in One C File2025 · gist.github.com · ▲7
XID generates 20-character globally unique IDs (48-bit timestamp + 64-bit entropy + 8-bit counter + 5-bit checksum) in a single C file with zero dependencies. Features built-in timestamp extraction, collision resistance, and portable design for any platform - ideal for databases, IoT, and distributed systems. char id = xid_generate(); // => "01H5Z7K4W9A3B6C8D0F2G" Gists: https://gist.github.com/Ferki-git-creator/17450d52d143f746f0... (Feedback wanted: entropy improvements, embedded use cases, optimizations)*
- SISimple in-memory key/value store written in Elixir using Shards2016 · github.com · ▲80

- BABeamsplitter – a new possibly universal hash2020 · github.com · ▲69
- EIEfficient integer ID obfuscation2016 · github.com · ▲6
- DKDecentralized, k-ordered unique IDs in Clojure2014 · github.com · ▲53
More dev tools this month
the category →



Open-source GTM skills for technical founders
Dev tools · 29d ago · gtmcofounder.com

OpenTrailPaper is open-source bike computer firmware for the LilyGO T5S3 4.7" E-Paper PRO. It supports offline maps, GPX routes, FIT recording and Bluetooth sensors.
Dev tools · 1d ago · opentrailpaper.com

Launched alongside, August 2026
the whole month →- TL
Life & fun · 10d ago · louisabraham.github.io


- SA
Hello HN! I found that picking out plausible but diverse skin tones for my digital art and game development projects was kind of difficult, and I got curious about if there was a way to define a color space that made it easy. I've built a color picker and procedural generation algorithm based on the space as well as a bunch of other fun js features and demos throughout the page that use the equations. If you find it interesting, I have lots of explanations of how I built it and what properties the space has. The methodology might be a bit shaky, but hopefully the result is as helpful for…
Life & fun · Aug 2026 · toneyalexander.github.io


I trained a 125M-parameter transformer to autocomplete piano performances in real time (~108 notes/sec on an iPhone 15). The idea is basically GitHub Copilot or Tabnine, except instead of prompting it with code, you prompt it by playing a few notes on a MIDI piano. The model then continues what you played, entirely on-device. The app is free if anyone wants to try it. Happy to answer questions about the model, training, Core ML, or the many things that didn't work.
AI · 17d ago · simedw.com