leonardoaguiar.com Nós
Langue

Nós

Nós est une messagerie sans serveur, pour Android et iPhone. Conversations, groupes, photos, messages vocaux, fichiers et appels sont chiffrés de bout en bout et transitent par des boîtes aux lettres hébergées sur des nœuds que n’importe qui peut faire tourner, y compris votre propre ordinateur. Pas de numéro de téléphone, pas de compte, pas d’entreprise au milieu. « Nós » veut dire « nous » et « nœuds » en portugais : les gens, et le réseau qu’ils forment.

L’onglet Chats

Premiers pas

Le premier écran propose Create account (créer un compte), Import account (importer un compte) et Explore without account (explorer sans compte).

Les onglets en bas de l’écran sont Chats (conversations), Calls (appels), Contacts et Settings (réglages).

Ajouter des personnes

Personne ne peut vous trouver par votre numéro de téléphone ni par votre nom. On vous joint grâce à votre carte, et c’est vous qui choisissez à qui la donner.

Demandes

Les personnes qui vous ont trouvé par votre clé, ou qui vous ont été présentées, apparaissent dans Requests (un bandeau dans Chats et Contacts). Elles ne peuvent pas vous écrire tant que vous n’avez pas touché Accept. Ignore les oublie ; Block les arrête en plus à vos boîtes aux lettres.

Conversations

La liste affiche chaque conversation avec le dernier message, son heure, les coches de distribution, la saisie en cours, les brouillons et le nombre de messages non lus. All, Unread, Groups et Archive la filtrent ; le champ de recherche filtre par nom et par texte. Maintenez le doigt sur une conversation (ou cliquez avec le bouton droit) pour Pin (épingler), Mute (rendre muette), Mark as read (marquer comme lue), Archive (archiver) ou Delete chat (supprimer). + ouvre Add a contact, Message a contact, New group et Notes to self (des notes pour vous-même, synchronisées avec vos autres appareils).

Une conversation

Messages

États de distribution

MarqueSignification
HorlogeEn attente sur ce téléphone (pas de connexion, ou aucune boîte aux lettres n’a répondu). Le message part de lui-même.
Une cocheDans une boîte aux lettres du destinataire. Il y attend que son téléphone vienne le chercher.
Deux cochesSon appareil l’a reçu et déchiffré.
Deux coches bleuesIl l’a lu (si les deux ont activé les confirmations de lecture).
AvertissementNon distribué (blocage, ou aucun moyen de joindre la personne). Info › Send again réessaie.

Info sur un message indique quand il a été écrit, envoyé à la boîte aux lettres, distribué et lu ; dans les groupes, qui l’a reçu et lu.

Messages éphémères

Dans les détails d’une conversation, Disappearing messages (1 heure, 24 heures, 7 jours, 90 jours ou Off) fait disparaître les nouveaux messages des deux téléphones au bout de ce délai. Privacy › Disappearing messages règle le délai des nouvelles conversations.

Groupes

New group demande un nom, une photo facultative et les contacts à ajouter (jusqu’à 64 membres). Aucun serveur ne conserve le groupe : chaque membre garde la liste des membres, signée par les administrateurs, et chaque message est chiffré une seule fois avec la clé de son expéditeur, puis déposé dans les boîtes aux lettres de chaque membre.

Un groupe

Appels

Les boutons téléphone et caméra de la conversation d’un contact lancent un appel vocal ou vidéo. Les appels passent directement d’un appareil à l’autre (WebRTC), chiffrés ; la signalisation voyage dans de petites enveloppes qui expirent au bout d’une minute. Pendant un appel : Mute (couper le micro), Camera (activer ou désactiver la vidéo), Flip (changer de caméra) et End (raccrocher). Un appel entrant affiche Accept et Decline.

Il n’y a pas de relais pour les appels : quand les deux réseaux ne permettent pas de liaison directe, l’appel ne peut pas s’établir et l’app affiche « Couldn’t connect directly ». L’onglet Calls liste vos appels ; touchez le téléphone pour rappeler.

Contacts

La liste affiche vos contacts avec leur nom d’utilisateur, Online (quand ils le partagent), et vos groupes. Les détails d’un contact proposent Message, Call, Video, Verify safety number (vérifier le numéro de sécurité), Nickname (un surnom que vous seul voyez), les médias, les messages éphémères, Mute, Introduce to someone, ses Devices (appareils), Block, Clear chat (vider la conversation) et Remove contact.

Numéros de sécurité

Chaque paire de contacts partage un numéro de sécurité de 60 chiffres. Comparez-le en personne ou pendant un appel, ou scannez le code sur son téléphone avec Scan their code : s’il correspond, marquez le contact comme Verified (un badge à côté du nom).

Blocage

Block annule le tampon que vous aviez donné à cette personne sur toutes vos boîtes aux lettres : les nœuds n’acceptent plus ses enveloppes. Elle n’en est pas avertie. Settings › Privacy › Blocked liste les personnes bloquées et permet de les débloquer.

Notifications

Settings › Notifications propose deux modes :

Sur l’iPhone, les notifications nécessitent que l’app soit sur l’écran d’accueil (Safari › Partager › Sur l’écran d’accueil), puis Turn on notifications. L’app Android vérifie les messages tant qu’elle est ouverte. Quand l’app est ouverte, un bandeau affiche les nouveaux messages des autres conversations.

Appareils

Settings › Devices liste vos appareils. Pour en ajouter un, ouvrez Nós sur le nouvel appareil, choisissez Import account › Link to my phone, donnez-lui un nom, puis, sur votre téléphone, touchez Link a device et scannez le code qu’il affiche (ou ouvrez-y son lien). Le nouvel appareil reçoit vos contacts et vos groupes, ainsi que tous les messages à partir de ce moment ; les messages antérieurs restent là où ils étaient. La phrase de récupération reste sur l’appareil principal, qui est aussi celui qui retire des appareils.

Réseau

Le réseau

Un nœud garde des boîtes aux lettres : des enveloppes chiffrées, jusqu’à ce que le téléphone vienne les chercher (30 jours au maximum). Il ne peut ni les lire ni voir qui les a envoyées. Chaque personne a jusqu’à trois boîtes aux lettres sur des nœuds différents, indiquées dans sa carte ; un message part vers toutes, et le premier retrait l’efface.

Faire tourner votre propre nœud

nos-node fonctionne sous macOS et Linux (arm64 et x86_64) :

curl -fsSL https://leonardoaguiar.com/apps/nos/install.sh | sh
nos-node run
nos-node address

nos-node address affiche un lien et un code QR ; ouvrez-le dans Settings › Network › Add node pour adopter le nœud. Derrière une box Internet, lancez-le avec --attach wss://leonardoaguiar.com/_/nos#f4eea0585b7f4cc4ecfab6a76082a724ee42c7b57d462377f6cf8344c785d00a : il garde une connexion ouverte avec le nœud public, qui lui relaie les apps sans voir autre chose que des octets chiffrés. Sur un serveur, placez-le derrière TLS (nginx ou Caddy) et indiquez son adresse publique avec --url wss://…. --public héberge aussi des inconnus (avec preuve de travail et petits quotas) ; --stun 0.0.0.0:3478 répond aux requêtes STUN pour les appels directs. Le nœud conserve sa clé, ses réglages et ses données dans ~/Library/Application Support/Nos Node (macOS) ou ~/.local/share/nos-node (Linux). Relancer la commande d’installation le met à jour.

Sauvegarde et récupération

Sauvegarde et récupération

Gardiens

Choose guardians répartit votre phrase entre 2 et 7 contacts, de sorte qu’un nombre d’entre eux, que vous choisissez, puisse la reconstituer ensemble ; en dessous de ce nombre, ils n’apprennent rien. Chaque part leur est envoyée chiffrée. Sur un nouveau téléphone, Import account › Ask my guardians affiche un code et un lien à leur envoyer ; chaque gardien l’ouvre dans Nós, vérifie que c’est bien vous et envoie sa part. Quand assez de parts sont arrivées, le compte revient. People you protect liste les personnes qui vous ont choisi.

Reset account efface cet appareil. Sans la phrase ni les gardiens, le compte ne peut pas revenir : personne d’autre ne l’a.

Réglages

PageCe qu’elle contient
ProfilePhoto, nom affiché, nom d’utilisateur, présentation, couleur d’accent, My card. Les modifications parviennent aussitôt à vos contacts.
PrivacyPrésentations (Contacts ou Nobody), Discoverable by key, Contacts can share your card, Invite links, confirmations de lecture (Read receipts), indicateurs de saisie (Typing indicators), statut en ligne (Online status), messages éphémères des nouvelles conversations, Blocked.
NotificationsInstant ou Pure, Show sender and text (afficher l’expéditeur et le texte), Banners while open (bandeaux quand l’app est ouverte).
ChatsThème (System, Light, Dark), taille du texte, Enter sends, Archive all chats (tout archiver), Clear all chats (tout vider).
Storage and dataEspace occupé sur cet appareil par les photos, les vidéos, les messages vocaux et les fichiers, Manage storage ; téléchargement automatique des photos, des vidéos et des fichiers (Always, Wi-Fi only, Never) et photos en haute qualité.
DevicesVos appareils, Link a device, Remove.
Backup and recoveryPhrase, sauvegardes, gardiens, People you protect, Reset account.
NetworkConnexion, vos nœuds, Add a node.
AdvancedVotre clé (en texte et en code QR), la clé de cet appareil, Publish my card again (republier ma carte), Send waiting messages now (envoyer maintenant les messages en attente).

Il n’y a pas de « vu à » : aucun nœud ne le conserve. La saisie en cours et le statut en ligne sont de minuscules enveloppes qui expirent en quelques secondes, envoyées uniquement à vos contacts, et les deux peuvent être désactivés.

Protocole

Installation et mises à jour

Confidentialité

Nós n’a ni serveur à elle ni compte. Ce qui quitte votre appareil :

Il n’y a ni statistiques d’utilisation, ni envoi de vos contacts, ni annuaire, ni « vu à ».

Remerciements