Anten
Türkçe

Security and privacy

Security

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:

  1. Your deviceThe frame is encrypted with AES-GCM under your key. The devices of the room’s members already have that key.
  2. Encrypted frameThe frame can no longer be read. Each frame carries a counter; an altered frame does not open.
  3. ServerThe media relay forwards the frame to the room without opening it. It has no key.
  4. Listener’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.

PartBuilding blocks
Identity, sign-in and signaturesEd25519
Voice and video framesAES-256-GCM, IV from the frame counter, replay window
Handing out voice keysECDH P-256, HKDF-SHA256, wrapped with AES-GCM
Encrypted messages and filesAES-256-GCM; room keys wrapped for each device with ECDH P-256 and HKDF-SHA256
Account passwordPBKDF2-SHA256 in the browser, Argon2id on the server
Key lock on the devicePBKDF2-SHA256 (600,000 rounds) or passkey PRF with HKDF; AES-GCM
Server backupsage, passphrase with scrypt
Safety numberSHA-256 of both identity keys, 30 digits