Security

How we protect your data.

For an online transfer the worker needs access to both mailboxes — otherwise there is nothing to copy the messages with. So what matters is not a promise that “we take security seriously”, but a precise description of what happens to the credentials at each step.

Security model and how to report a vulnerability
Online service in preparationpreview version
  • TTL
    A separate key for every job

    The connection to the site is protected by HTTPS. Before a job is put in the queue, the credentials are additionally encrypted for the worker: what goes into storage is an encrypted bundle, the plaintext password is not stored and is not written to the logs. The bundle and the key are marked for deletion when the job finishes or on timeout.

  • IN-MEMORY
    Decryption in the worker’s memory

    The bundle is decrypted in the worker’s memory at start-up and lives there until the transfer ends. The transfer itself is carried out by a separate imapsync process managed by the worker — the credentials are passed to that process through the environment and do not end up in the command arguments.

  • NO-STORE
    Messages do not linger

    Messages are streamed from the old server to the new one. We do not store message contents: MoveMailbox does not become a copy of your correspondence.

  • SELF-HOSTED
    Or do not hand over the password at all

    The desktop client and the Docker build run entirely on your side: mail goes directly between your servers, our infrastructure is not involved. This is the strictest option, and it is free.

Find out how big your mailbox is. It costs nothing.

Connect two servers, look at the size and decide. Or take the client and keep everything on your side.

Code on GitHub · built on imapsync · no sign-up