Global Gathering 2026
anoni.net is a volunteer community from Taiwan. We write teaching material, build browser and measurement tools, and run our own infrastructure for anonymity networks and internet freedom.
We are in Estoril for all three days, 4 to 6 September. This page is the short version: where the booth is, what is on the table, and how to reach us if you miss the slot.
Booth 6, Sunday 6 September
- Time:
13:00to15:00WEST - On the table: twelve browser-side tools you can try with the network switched off, three 3D interactives about Tor, and our anonymous payments research
- Printed zine: four A4 sheets in a wrapper, 150 copies, no digital edition
- No appointment, no prepared topic. Walk up, or stop us anywhere in the venue during the other two days
The zine on the table looks like this. Four A4 sheets fold in half inside a wrapper, A5 when folded, and both faces of the wrapper are covers, so either one can face out. The design write-up is in the zine we print only for events.

Cofacts, another team from Taiwan, has Booth 10 in the same slot.
Tools that keep working when the network does not
Everything in the utilities section runs in your browser. Nothing is uploaded, and once a page is stored on your device it works with the network off.
Offline capability is the point, and it is also the proof. A tool that still runs with the network off cannot be sending your file anywhere, and you do not have to take our word for it. On a laptop, switching Wi-Fi off is enough. On a phone, use airplane mode, because turning Wi-Fi off still leaves mobile data on. Either way the check takes ten seconds and needs no ability to read code, although the source is in anoni-net/docs for anyone who wants to.
| Tool | What it does |
|---|---|
| Threat model checklist | Turns "what to protect, from whom, at what cost" into a checklist and points out the mismatches in your own answers |
| Passphrase and password generator | Diceware passphrases from a 7776-word list, or random passwords from a character set you pick, with the entropy shown |
| Local file encryption | Encrypts a file or a block of text to the age format in the browser, and decrypts age files back. Standard output, readable by the age command-line tool anywhere |
| Passkey as your key | Creates a passkey that computes the encryption key for the tool above, so there is no passphrase to remember |
| QR code generator | Turns onion addresses, bridge1 lines and other long strings into a QR code for the person in front of you, with no server in between |
| QR code reader | Reads a QR code out of an image without the image leaving your device, and isolates the host when the result is a URL |
| QR code frame stream | Moves a file between two devices over screen and camera, with no pairing, no shared network and no server |
| File metadata remover | Strips EXIF2, GPS, device model and author fields from photos, video, audio, Office documents and PDFs, listing what went and what stayed |
| Screenshot redaction | Fills names, avatars and conversations with solid black, then verifies pixel by pixel before handing the file back |
| URL cleaner | Removes tracking parameters and says who each one reports to, unwraps redirect links and isolates the real registrable domain |
| Invisible character detector | Finds zero-width characters, direction controls, tag characters and lookalike letters used for leak tracing, phishing and prompt injection |
| What your browser gives away | Lists what any site can read without asking, and marks what Tor Browser makes uniform |
Alongside them are three 3D interactives about Tor: a routing puzzle, a traffic flow view, and a relay globe built from real Onionoo3 data.

Store them before you need them
Conference Wi-Fi is a poor moment to find out that a tool still needs downloading, and so is a shutdown. The offline reading page stores the pages you tick on your device, tools included, and afterwards the whole thing opens with the network off.
If you want just the tools, tick the utilities section. If you have the bandwidth, take the lot.
Passkeys as the key to data that stays with you
A passkey usually logs you in. We use it for something else, and there is no login, no account and no server anywhere in the flow. We ask it to compute an encryption key.
WebAuthn's PRF extension4 lets a passkey hold a secret that never leaves the authenticator. The page sends an input, you approve with a fingerprint, face or PIN, and 32 bytes come back. Same passkey and same input, same 32 bytes, every time. Local file encryption wraps the age file key with that output, so without the passkey the file is ciphertext and nothing else. This is arithmetic rather than a gate drawn on a web page.
The site stores nothing, and it cannot: browsers refuse to tell a page whether a domain has a passkey, so we do not even know you made one.
Background is in what is a passkey, and the tool itself is passkey as your key.
What we are still working out, and the known limits
Updated September 2026: the stash is now live, underneath my preparation checklist, saved threat model answers and the address book; mechanism and limits are in What is a passkey?. What follows is how it stood at the booth.
The next step is an encrypted scratch area on the page itself, opened by the same passkey, for the kind of checklist you fill in on a laptop that other people can pick up. The current experiment puts the data key in the credential's user.id5 field instead of using PRF. Apple hands PRF material only to the iCloud Keychain, so an iPhone paired with a third-party password manager can create a passkey and still be unable to compute a key. user.id is a core field every provider returns. The cost is that the key then lives in the vault next to the credential, and the security ceiling drops to the security of that vault. We took that trade deliberately, because coverage on the devices people actually own matters more to us here than the ceiling.
The limits are worth stating plainly:
- The passkey is bound to the
anoni.netRP ID6, so mirrors and the onion address cannot use it. - Tor Browser disables WebAuthn entirely, so this path is closed there.
- Firefox on Android and Windows 10 do not support PRF.
- Lose the passkey and the data is gone, which is why the flow adds an X25519 backup key by default.
We would very much like to talk about this at the booth as well. If you support people in a region or a threat model where this design falls apart, we would rather hear it now than after we ship it.
What we want to talk about at the booth
Anonymous payments is the main topic. We read the program and found no session on money. Donor anonymity, cross-border disbursement, sanctions and currency controls are daily work for a lot of organizations and appear in no session title.

We are at the research stage and collecting real situations: who needs anonymity in a payment flow, where current practice breaks, and which rules make it break. The write-up so far is in anonymous payments. We would especially like to talk to operators who have moved money across borders to high-risk or sanctioned regions, organizations that have handled donor anonymity, and projects that a bank has blocked or that exchange controls have shut out.
Other subjects are just as welcome. We start out from Taiwan, and we want to meet more people working across the Asia-Pacific. Sinophone (Chinese-speaking) users are spread across Taiwan, Hong Kong, China, Japan and Southeast Asia. The situations they run into are connected, and the chances to compare notes are rare.
Most of us come from open-source and technology communities, and the day-to-day work is running services, writing teaching material, building browser-side tools and reading OONI measurement data. We would like to put that to use for people doing frontline work, whether that means looking together at which adversaries a tool actually covers, breaking a procedure down into steps you can verify yourself, or reading a measurement dataset side by side. We are volunteers, so what we can offer is a second opinion on the parts we know well, and we will say so when a question falls outside that. If something you are dealing with needs that kind of technical support, say so at the booth or leave a message in the Matrix room.
Other ways to find us
- Matrix room
#gg2026:im.anoni.netis the most reliable. Any Matrix account works, including a freshmatrix.orgone, and no phone number changes hands. Times in the room are WEST unless marked otherwise. - In the venue, our badges say anoni.net. Say hello.
- Networking Hour,
12:00to13:00WEST, is where we usually turn up. Check the room first, our schedule still moves. - Anonymous tips: [email protected], GPG key on the contact page. We check it within a few hours during the event.
The long version, covering why we came, which sessions overlap with our work, and which booths we plan to visit, is in anoni.net at Global Gathering 2026.
-
A bridge is a Tor entry point that is not on the public list. Censors block entry addresses by scanning that list, and an unlisted bridge cannot be blocked that way, though getting through a heavily censored network usually also needs the traffic disguised. ↩
-
EXIF is a block of information that photo files carry automatically, recording the time, the device model and, if location is on, the coordinates. Video and audio files carry the equivalent details in metadata blocks of their own. None of it shows on screen, so the file looks like an ordinary one. ↩
-
Onionoo is the Tor Project's data service for relay status, listing the machines that carry Tor traffic worldwide, which country each sits in and how much bandwidth it handles. The globe is drawn from it. It is a different thing from OONI, which measures whether a given site is reachable from a given place. ↩
-
WebAuthn is the authentication mechanism built into browsers, and PRF is one of its extensions. Your phone or computer holds a secret you never see, and when the page hands it an input and you approve with a fingerprint, face or PIN, it returns 32 bytes. The same input always gives the same 32 bytes and a different input gives different ones, which is what keeps separate files apart. The "authenticator" is whatever holds that secret and can compute with it, usually the secure chip in your phone, and not every password manager can. ↩
-
user.idis the field the passkey specification calls the user handle, normally holding an account identifier. We put the encryption key there instead, because the specification requires a passkey to return that field, while PRF is unavailable in some combinations. ↩ -
The RP ID is the domain a passkey is scoped to, and it covers that domain's subdomains. A mirror sits on another domain and the onion address is a different domain again, so neither counts as the same place to the browser. ↩