Anten encrypts voice and video end to end by default. Messages are encrypted in encrypted rooms and in direct messages; in other rooms the server can read them.
What is end-to-end encrypted
Content is encrypted on the sender’s device and opened only on the recipients’ devices. The server carries and stores the data but has no key.
Voice, camera and screen sharing
End-to-end encrypted by default. Every voice and video frame is encrypted on your device. The media relay on the server forwards the frames without opening them and never sees the key. The administrator can turn this off for the whole server or for individual rooms.
Messages in encrypted rooms
If an administrator turns on message encryption in a room, its messages, files and reactions are end-to-end encrypted. Files are stored encrypted, and the server does not know their names or types.
Direct messages
One-to-one and group conversations are always end-to-end encrypted. That covers messages, files and reactions.
The path of a voice frame
Your voice is sent in small frames. In an end-to-end encrypted room, each frame goes through these steps:
1Your deviceThe frame is encrypted with AES-GCM under your key. The devices of the room’s members already have that key.
2Encrypted frameThe frame can no longer be read. Each frame carries a counter; an altered frame does not open.
3ServerThe media relay forwards the frame to the room without opening it. It has no key.
4Listener’s deviceThe frame is opened with your key and played. A frame that does not open, or arrives a second time, is dropped.
Camera and screen video take the same path. The few header bytes of a video frame needed for routing stay readable. They are bound to the encryption as additional data, so if they are changed the frame does not open.
What the server can see
A person or a community runs Anten on their own server, and whoever runs it is its administrator. Some information needed for moderation and operation is visible to them.
What the server sees
Who is connected, which room they are in, and when they connected
Who sent messages, when and where, and their size
Who speaks when. This shows from the size of the frames, without opening them.
IP addresses. A user’s last address is erased after 90 days without being seen.
Nicknames, profile pictures, status and about texts
Messages and files in rooms without message encryption
What the server does not see
End-to-end encrypted voice, camera and screen video
Text, files and reactions in encrypted rooms and direct messages
The names and types of encrypted files
Encryption keys and the secret half of your identity key
Your account password (if you sign in with a username and password)
What you search for in encrypted rooms
Administration screens show only this metadata, never encrypted content.
Identity and sign-in
The first time you connect to Anten, your device makes an Ed25519 key pair. The server knows you by the public key; the secret key never leaves your device. To sign in, the server sends a one-time value and your device signs it. No password is needed.
If the administrator has turned it on, you can also sign in with a username and password. The password does not go to the server. The browser derives a login key from it with PBKDF2, and the server stores only an Argon2id hash of that key. Your account’s keys are stored on the server encrypted under a second key, derived separately from your password, and come back when you sign in on another device. Accounts made before this scheme send their password once at their next sign-in and then move over to it.
The keys on your device can also be locked: with a password, with a passkey, or in the desktop app with a secret the operating system keeps for your user account.
You can save your identity to an encrypted backup file and load it on another device.
Someone in the middle
Encryption only helps if the keys belong to the person you are talking to. To keep anyone, the server included, from slipping in a false key:
1
Signed key exchange
The sender signs the messages that hand out voice keys, and the copies of room keys, with their identity key. The server cannot make them or move them to another device.
2
Pinning on first use
The first time the app sees a member’s identity key, it saves it on your device and compares it on later connections.
3
Warning when a key changes
If a member’s key changes, the app shows a warning. Until you accept the new key, no voice passes between you and that person.
4
Safety numbers
A member’s card shows a 30-digit number worked out from both of your identity keys. Compare it outside Anten, for example in person. If it matches, nobody is in between.
Key renewal
In voice rooms
When someone joins or leaves the room, everyone moves to a new key. Each member also renews their own key every 10 minutes, so a leaked key opens only a short stretch.
In encrypted messages
If someone loses access to the room or their devices are reset, the next message goes out under a new room key. Room keys are renewed at least every seven days.
Against replays
Every voice and video frame carries a counter, and a receiver does not accept the same frame twice. If an encrypted message is sent again as if it were another message, the app notices.
Keeping the server safe
Measures that protect the installation itself.
No outside requests
Anten collects no telemetry or usage statistics. The app loads nothing from third parties, fonts included. If the administrator turns on GIF search or link previews, the server makes those requests and your device does not connect to an outside site.
Content security policy
The web client runs only its own scripts and connects only to its own server. Uploaded files are served so that they cannot run scripts in the page.
Rate limits
Sending messages, moderation actions and sign-in attempts are rate limited. The number of people connected from one Internet address at once, and the new identities made from it, can be limited too.
Bans
A ban can be placed on an identity, an IP address, or both. It is checked at sign-in and on every connection.
Audit log
Kicks, moves, mutes, bans and settings changes are recorded with the name of whoever made them. Message content is never recorded. Entries are kept for 90 days.
Encrypted backups
Server backups are encrypted with a passphrase of at least 10 characters chosen by the administrator. End-to-end encrypted content stays encrypted in the backup too.
Message retention
The administrator can set how long messages are kept, and older ones are deleted. The same period applies to direct messages.
Limits on bots
Bots connect with their own tokens. Whatever permissions they hold, they cannot reach direct messages, backups, privilege keys or the installation’s administration (access, updates, bots). What else they may do on the server depends on their groups. Rooms a bot can see show a lasting notice saying so.
Signed updates
The desktop app takes its updates from the server it connects to and installs them only if the publisher’s signature checks out.
What Anten cannot protect against
In these cases Anten’s guarantees do not apply, or apply only in part.
A compromised device
Malware on your device can see your screen and listen to your microphone. Encryption does not stop that.
A modified web client
When you connect from a browser, the web client is loaded from the server each time it opens. Someone running the server could serve a modified client and reach your keys and content. The desktop app carries its own copy of the client, takes only data from the server, and accepts updates only with the publisher’s signature. On a server you do not fully trust, connect with the desktop app.
Metadata
Who connected when, which room they are in and when they speak are visible to the administrator. Anten does nothing extra to hide traffic.
Rooms without message encryption
In rooms with message encryption off, anyone with access to the server can read the messages.
Safety numbers not compared
If you have not compared a member’s safety number, you cannot be sure nobody was in between at the first connection. If their key changes later, you get a warning.
What recipients hold
Encryption protects content on its way. Recipients can record what they see and hear, or pass it on.
Technical details
Encryption is done with widely used, tested libraries such as the browser’s WebCrypto interface. Anten does not write its own cryptographic primitives.
Part
Building blocks
Identity, sign-in and signatures
Ed25519
Voice and video frames
AES-256-GCM, IV from the frame counter, replay window
Handing out voice keys
ECDH P-256, HKDF-SHA256, wrapped with AES-GCM
Encrypted messages and files
AES-256-GCM; room keys wrapped for each device with ECDH P-256 and HKDF-SHA256
Account password
PBKDF2-SHA256 in the browser, Argon2id on the server
Key lock on the device
PBKDF2-SHA256 (600,000 rounds) or passkey PRF with HKDF; AES-GCM