Nós
O Nós é um mensageiro sem servidores, para Android e iPhone. As conversas, os grupos, as fotografias, as mensagens de voz, os ficheiros e as chamadas são cifrados ponto a ponto e viajam por caixas de correio em nós que qualquer pessoa pode pôr a funcionar, incluindo o seu próprio computador. Não há número de telemóvel, nem conta, nem empresa pelo meio. O nome diz as duas coisas: “nós” somos as pessoas, e “nós” são também os pontos da rede que elas formam.

Primeiros passos
O primeiro ecrã oferece Criar conta, Importar conta e Explorar sem conta.
- Criar conta: um nome, um nome de utilizador e uma fotografia opcionais, e uma cor de destaque. “A sua identidade são as suas chaves. Não é preciso número de telemóvel.” Nada fica registado em lado nenhum: o perfil só viaja dentro do seu cartão, até aos seus contactos.
- Guarde a sua frase de recuperação: doze palavras que são a sua conta. Toque em Mostrar as palavras, escreva-as e depois toque em Já as escrevi. Mais tarde é permitido; uma faixa em Conversas lembra-o até confirmar.
- Explorar sem conta abre a app com pessoas, grupos e mensagens de exemplo, guardados na memória e enviados para lado nenhum. As chamadas, a leitura de códigos e a rede ficam desativadas. A faixa “Está a explorar conversas de exemplo” sai e volta ao primeiro ecrã.
Os separadores em baixo são Conversas, Chamadas, Contactos e Definições.
Adicionar pessoas
Ninguém o pode procurar pelo número de telemóvel nem pelo nome. As pessoas chegam até si através do seu cartão, e é o utilizador quem escolhe a quem o dá.
- O meu cartão (Contactos › o ícone do QR, ou Descobrir › Partilhar o seu cartão) mostra um código QR e Partilhar ligação. Quem o ler ou abrir a ligação pode dizer olá uma vez. As ligações de convite funcionam durante 30 dias; Privacidade › Ligações de convite cancela-as todas.
- Ler código QR lê o cartão de outra pessoa, um nó a adicionar, um dispositivo a associar ou um número de segurança. Introduzir uma ligação aceita as mesmas coisas coladas.
- Abrir uma ligação de convite mostra a pessoa e Adicionar contacto. Adicionar troca os vossos cartões e selos, para que só os dois possam escrever nas caixas de correio um do outro. O outro lado recebe-o como contacto de imediato (“entrou pelo seu convite”).
- Procurar na rede (Descobrir) encontra alguém pela sua chave (64 carateres), por um endereço como
[email protected](quando o domínio da pessoa responde em/.well-known/nos/<name>), ou abre uma ligação de convite. Só encontra quem ativou Detetável pela chave; essa pessoa recebe um pedido. - Apresentar a alguém (nos detalhes de um contacto) envia a cada um de dois contactos o cartão do outro. Cada um vê “Apresentado por …” em Pedidos e adiciona o outro com Dizer olá.
Pedidos
As pessoas que o encontraram pela chave, ou que lhe foram apresentadas, aparecem em Pedidos (uma faixa em Conversas e em Contactos). Não lhe podem escrever até tocar em Aceitar. Ignorar esquece-as; Bloquear também as trava nas suas caixas de correio.
Conversas
A lista mostra cada conversa com a última mensagem, a hora, as marcas de entrega, quem está a escrever, os rascunhos e o número de mensagens por ler. Todas, Por ler, Grupos e Arquivo filtram-na; o campo de pesquisa filtra pelo nome e pelo texto. Mantenha uma conversa premida (ou clique com o botão direito) para Afixar, Silenciar, Marcar como lida, Arquivar ou Apagar conversa. + abre Adicionar um contacto, Enviar mensagem a um contacto, Novo grupo e Notas para mim (sincronizadas com os seus outros dispositivos).

Mensagens
- Escreva e envie; nos telemóveis, Enter acrescenta uma linha, a menos que Definições › Conversas › Enter envia esteja ativado.
- + na caixa de escrita envia uma Fotografia ou vídeo, uma fotografia da Câmara, um Ficheiro (até 100 MB) ou A minha localização (abre no OpenStreetMap).
- O microfone grava uma mensagem de voz: toque para começar e depois envie ou descarte. As mensagens de voz reproduzem-se com a sua forma de onda.
- Mantenha uma mensagem premida (ou clique com o botão direito) para as reações rápidas e Responder, Reencaminhar, Guardar ou partilhar, Editar (o seu próprio texto, até 48 horas depois), Informações e Apagar (para si, ou para todos até 48 horas depois). Um duplo clique reage com um coração.
- As fotografias mostram logo uma pequena pré-visualização e são descarregadas dos nós; toque para abrir em ecrã completo. Os ficheiros são descarregados quando lhes toca.
Estados de entrega
| Marca | Significa |
|---|---|
| Relógio | À espera neste telemóvel (sem ligação, ou nenhuma caixa de correio respondeu). Sai sozinha. |
| Um visto | Numa caixa de correio da outra pessoa. Fica lá à espera até o telemóvel dela a ir buscar. |
| Dois vistos | O dispositivo da outra pessoa recebeu-a e decifrou-a. |
| Dois vistos azuis | A outra pessoa leu-a (se ambos tiverem as confirmações de leitura ativadas). |
| Aviso | Não entregue (bloqueado, ou sem forma de chegar à pessoa). Informações › Enviar novamente tenta outra vez. |
Informações numa mensagem indica quando foi escrita, enviada para a caixa de correio, entregue e lida; nos grupos, quem a recebeu e leu.
Mensagens temporárias
Nos detalhes de uma conversa, Mensagens temporárias (1 hora, 24 horas, 7 dias, 90 dias ou Desativado) faz as novas mensagens desaparecerem dos dois telemóveis ao fim desse tempo. Privacidade › Mensagens temporárias define o temporizador para as novas conversas.
Grupos
Novo grupo pede um nome, uma fotografia opcional e os contactos a adicionar (até 64 membros). Nenhum servidor guarda o grupo: cada membro guarda a lista de membros, assinada pelos administradores, e cada mensagem é cifrada uma vez com a chave de quem a envia e colocada nas caixas de correio de cada membro.

- Os separadores do grupo, no topo: Conversa, Multimédia, Ficheiros, Membros.
- Os administradores podem Adicionar membros, Remover do grupo, Tornar administrador, mudar o nome do grupo e a respetiva fotografia. Sair do grupo sai; a conversa fica no dispositivo.
- Os membros que não são seus contactos continuam a chegar até si, e o utilizador até eles, apenas no grupo: cada membro sela as suas caixas de correio para o grupo.
- Quando alguém entra ou sai, quem envia começa a usar chaves novas, por isso quem saiu não consegue ler o que vem depois.
Chamadas
Os botões do telefone e da câmara na conversa de um contacto iniciam uma chamada de voz ou de vídeo. As chamadas vão diretamente entre os dois dispositivos (WebRTC), cifradas; a sinalização viaja em pequenos envelopes que expiram num minuto. Durante uma chamada: Silenciar, Câmara (ativar ou desativar o vídeo), Virar e Terminar. Uma chamada recebida mostra Aceitar e Recusar.
Não há reencaminhamento para as chamadas: quando as duas redes não permitem um caminho direto, a chamada não se estabelece, e a app indica “Não foi possível ligar diretamente”. O separador Chamadas lista as suas chamadas; toque no telefone para ligar de volta.
Contactos
A lista mostra os seus contactos com o nome de utilizador, Online (quando o partilham) e os seus grupos. Os detalhes de um contacto têm Mensagem, Ligar, Vídeo, Verificar número de segurança, Alcunha (só o utilizador a vê), multimédia, mensagens temporárias, Silenciar, Apresentar a alguém, os Dispositivos da pessoa, Bloquear, Limpar conversa e Remover contacto.
Números de segurança
Cada par de contactos partilha um número de segurança de 60 dígitos. Compare-o pessoalmente ou numa chamada, ou leia o código no telemóvel da outra pessoa com Ler o código dela: se coincidir, marque-a como Verificado (um distintivo ao lado do nome).
Bloquear
Bloquear cancela o selo que deu a essa pessoa em todas as suas caixas de correio: os nós deixam de aceitar os envelopes dela. A pessoa não é avisada. Definições › Privacidade › Bloqueados lista e desbloqueia.
Notificações
Definições › Notificações tem dois modos:
- Instantâneo: as suas caixas de correio acordam este dispositivo com uma notificação push vazia, através do serviço push do navegador. Esse serviço fica a saber quando acordar o dispositivo, nunca o que foi enviado nem por quem. A notificação diz “Nova mensagem”; a mensagem é obtida e decifrada quando abre a app.
- Puro: nenhuma notificação push. Vê as novas mensagens quando abre a app.
No iPhone, as notificações precisam da app no ecrã principal (Safari › Partilhar › Adicionar ao ecrã principal) e depois de Ativar notificações. A app para Android procura mensagens enquanto está aberta. Com a app aberta, uma faixa mostra as novas mensagens de outras conversas.
Dispositivos
Definições › Dispositivos lista os seus dispositivos. Para adicionar um, abra o Nós no novo dispositivo, escolha Importar conta › Associar ao meu telemóvel, dê-lhe um nome e, no telemóvel, toque em Associar um dispositivo e leia o código que ele mostra (ou abra lá a ligação). O novo dispositivo recebe os seus contactos e grupos e, a partir daí, todas as mensagens; as mensagens anteriores ficam onde estavam. A frase de recuperação fica no dispositivo principal, que é também o que remove dispositivos.
Rede

Um nó guarda caixas de correio: envelopes cifrados, até o telemóvel os ir buscar (30 dias, no máximo). Não os consegue ler nem ver quem os enviou. Cada pessoa tem até três caixas de correio em nós diferentes, indicadas no seu cartão; uma mensagem vai para todas e a primeira recolha apaga-a.
- Os seus nós mostra cada nó, se está ligado, e as suas caixas de correio nele.
- Ligação: Automática usa os seus nós, e o público quando não tem nenhum; Manual usa apenas os nós que adicionou.
- Adicionar um nó lê ou cola a ligação que um nó imprime. Se o nó ainda não tiver sido adotado, Adotar este nó torna-o seu: aloja-o a si e aos seus contactos com quotas maiores (500 MB de mensagens e 2 GB de multimédia por pessoa, 30 dias) em vez das públicas (50 MB e 200 MB, 7 dias para a multimédia).
- Sem nenhum nó próprio, a app usa o nó público em leonardoaguiar.com.
Pôr o seu próprio nó a funcionar
O nos-node funciona no macOS e no Linux (arm64 e x86_64):
curl -fsSL https://leonardoaguiar.com/apps/nos/install.sh | sh
nos-node run
nos-node address
nos-node address imprime uma ligação e um código QR; abra-a em Definições › Rede › Adicionar nó para adotar o nó. Atrás de um router doméstico, execute-o com --attach wss://leonardoaguiar.com/_/nos#f4eea0585b7f4cc4ecfab6a76082a724ee42c7b57d462377f6cf8344c785d00a: mantém uma ligação ao nó público, que lhe reencaminha as apps sem ver nada além de bytes cifrados. Num servidor, coloque-o atrás de TLS (nginx ou Caddy) e indique o seu endereço público com --url wss://…. --public aloja também desconhecidos (com prova de trabalho e quotas pequenas); --stun 0.0.0.0:3478 responde a STUN para chamadas diretas. O nó guarda a chave, as definições e os dados em ~/Library/Application Support/Nos Node (macOS) ou ~/.local/share/nos-node (Linux). Executar novamente o comando de instalação atualiza-o.
Cópia de segurança e recuperação

- Frase de recuperação: Mostrar frase de recuperação (certifique-se de que ninguém está a ver).
- Fazer cópia agora e Fazer cópia todos os dias enviam uma cópia de segurança cifrada (contactos, grupos, conversas e as chaves deste dispositivo; não a multimédia) para as suas caixas de correio, cifrada com uma chave derivada da sua frase. Guardar ficheiro de cópia cria um ficheiro
.nosbakque guarda o utilizador. - Importar conta › Frase de recuperação encontra o seu cartão nos nós, abre as suas caixas de correio e recupera a cópia mais recente. Sem cópia de segurança, a sua identidade, o perfil e as caixas de correio voltam, mas os contactos e as conversas começam vazios: volte a adicionar os seus contactos com o seu cartão.
- Importar conta › Ficheiro de cópia abre um
.nosbakcom a respetiva frase.
Guardiões
Escolher guardiões divide a sua frase entre 2 e 7 contactos, de forma que um número deles, escolhido por si, possa recuperá-la em conjunto; menos do que isso não revela nada. Cada parte chega-lhes cifrada. Num telemóvel novo, Importar conta › Pedir aos meus guardiões mostra um código e uma ligação para lhes enviar; cada guardião abre-a no Nós, confirma que é mesmo o utilizador e envia a sua parte. Quando chegam partes suficientes, a conta volta. Pessoas que protege lista quem o escolheu a si.
Repor conta apaga este dispositivo. Sem a frase nem guardiões, a conta não pode voltar: mais ninguém a tem.
Definições
| Página | O que tem |
|---|---|
| Perfil | Fotografia, nome a mostrar, nome de utilizador, sobre, cor de destaque, O meu cartão. As alterações chegam de imediato aos seus contactos. |
| Privacidade | Apresentações (Contactos ou Ninguém), Detetável pela chave, Os contactos podem partilhar o seu cartão, Ligações de convite, Confirmações de leitura, Indicador de escrita, Estado online, Mensagens temporárias para novas conversas, Bloqueados. |
| Notificações | Instantâneo ou Puro, Mostrar remetente e texto, Faixas com a app aberta. |
| Conversas | Tema (Sistema, Claro, Escuro), Tamanho do texto, Enter envia, Arquivar todas as conversas, Limpar todas as conversas. |
| Armazenamento e dados | Espaço ocupado neste dispositivo por fotografias, vídeos, mensagens de voz e ficheiros, Gerir armazenamento; descarga automática de fotografias, vídeos e ficheiros (Sempre, Só por Wi-Fi, Nunca) e fotografias em alta qualidade. |
| Dispositivos | Os seus dispositivos, Associar um dispositivo, Remover. |
| Cópia de segurança e recuperação | Frase, cópias de segurança, guardiões, Pessoas que protege, Repor conta. |
| Rede | Ligação, os seus nós, Adicionar um nó. |
| Avançado | A sua chave (em texto e em código QR), a chave deste dispositivo, Publicar o meu cartão novamente, Enviar já as mensagens em espera. |
Não há “visto pela última vez”: nenhum nó o guarda. O indicador de escrita e o estado online são envelopes minúsculos que expiram em segundos, enviados apenas aos seus contactos, e ambos podem ser desativados.
Protocolo
- Identidade: as doze palavras (BIP39) derivam a chave de identidade (Ed25519, cuja metade pública é a sua chave), a chave do cartão, a chave das cópias de segurança, a chave dos selos e as chaves de cada caixa de correio. Cada dispositivo tem a sua própria conta Olm.
- Cartão: um registo assinado com os seus dispositivos, caixas de correio e perfil, com o interior cifrado com a chave do cartão, que só os contactos têm. Os nós guardam-no sob um nome derivado dessa chave, por isso um desconhecido que só saiba a sua chave não o consegue encontrar.
- Sessões: as mensagens um a um usam Olm (o Double Ratchet, do vodozemac do Matrix), iniciado com chaves de uso único guardadas nas suas caixas de correio; os grupos usam Megolm, com uma cadeia de envio por membro.
- Envelopes: selados com a chave da caixa de correio (X25519 e XChaCha20-Poly1305) e preenchidos até 1, 4, 16 ou 48 KB. O nó vê o nome da caixa de correio, o selo, um tempo de vida e o escalão de tamanho; nada sobre quem envia.
- Selos: tokens assinados pelo dono da caixa de correio para cada contacto, que indicam uma chave de portador que tem de assinar cada envelope, com limites diários. Bloquear revoga o selo no nó. Os desconhecidos pagam com prova de trabalho.
- Canal para os nós: Noise NK sobre WebSocket, com a chave do nó conhecida de antemão, por isso nem um reencaminhador nem o terminador TLS à frente de um nó conseguem ler ou forjar o que quer que seja. Os nós atrás de routers ligam-se a um reencaminhador com Noise IK.
- Multimédia: cada ficheiro é cifrado com a sua própria chave, cortado em pedaços de 48 KB e endereçado pelo hash dos pedaços.
- Despertares: Web Push (RFC 8291 e 8292) com uma chave VAPID criada pela app, para que qualquer uma das suas caixas de correio possa acordar o telemóvel sem uma chave push central.
Instalação e atualizações
- Android: o APK deste site. Android 7 ou posterior. A app pergunta a este site, uma vez por dia, qual é a versão mais recente e mostra Nós x está disponível em Definições; o novo APK instala-se por cima do antigo e mantém a sua conta e as suas conversas.
- iPhone e iPad: a app web, a partir do Safari. Abra leonardoaguiar.com/apps/nos/app/, toque em Partilhar › Adicionar ao ecrã principal e abra o Nós a partir do ecrã principal. iOS 16.4 ou posterior. Atualiza-se sozinha.
- Qualquer navegador: o mesmo endereço funciona num Chrome, Safari, Edge ou Firefox recente, com a conta guardada nesse navegador.
- O nó: consulte Pôr o seu próprio nó a funcionar.
Privacidade
O Nós não tem servidor próprio nem conta. O que sai do seu dispositivo:
- Envelopes para caixas de correio nos nós, selados: o nó vê um nome de caixa de correio aleatório, o escalão de tamanho, a hora e o endereço de internet que se ligou.
- O seu cartão nos seus nós, assinado e cifrado para os seus contactos.
- Pedaços de multimédia na sua caixa de correio e na do destinatário, cifrados, até serem descarregados (7 dias nos nós públicos, 30 nos seus).
- Cópias de segurança cifradas nas suas caixas de correio, quando estão ativadas.
- Notificações push vazias para acordar o dispositivo, através do serviço web push da Apple, da Google ou da Mozilla, quando as notificações Instantâneas estão ativadas.
- Chamadas, diretamente para o outro dispositivo; o servidor STUN da Cloudflare (
stun.cloudflare.com) diz a cada telemóvel o seu endereço público. - A verificação de versão da app para Android: um pedido por dia a este site, sem enviar nada sobre si.
Não há estatísticas de utilização, nem envio de contactos, nem diretório, nem “visto pela última vez”.