Princípio fundamental
O Solo2 cria um túnel privado entre duas pessoas. Directo. Sem intermediários.
O nosso servidor faz uma única coisa: apresentar as duas extremidades do túnel para que se encontrem. Para isso precisa do mínimo indispensável — os identificadores dos dois pares — que mantém na memória RAM durante os milissegundos que dura a apresentação. No instante em que os dois dispositivos se encontraram, esses dados são apagados da memória. Nunca, em nenhum momento, ficam escritos num disco.
Uma vez ligados, o servidor desaparece. Não participa na conversa. Não a vê. Não a armazena. Não sabe quanto dura, nem com que frequência falam, nem sobre o que falam.
Não te pedimos que nos acredites. Pedimos-te que comproves:
Teste 1 — O servidor é dispensável.
Uma vez estabelecido o túnel directo, o nosso servidor já não participa. Se caísse nesse momento, a tua conversa continuaria sem interrupção. Enquanto os vossos dispositivos estiverem ligados e conectados à internet, o túnel é vosso. Nós já não estamos lá.
Teste 2 — Envia um ficheiro de 10 gigabytes.
Não só vai ser rápido — é que ao nosso servidor é-lhe completamente indiferente. Experimenta estar 24 horas seguidas a enviar ficheiros de 10 gigas ou mais, de forma contínua. O nosso servidor nem se apercebe, porque não intervém. Experimenta isso com qualquer outro serviço de mensagens.
Teste 3 — Fala de telescópios.
Passa uma tarde a falar com alguém sobre telescópios, ou canas de pesca, ou qualquer coisa que nunca tenhas pesquisado na internet. Espera uns dias. Não aparecerá publicidade de telescópios em lado nenhum. As tuas palavras não saíram do teu túnel.
Os teus dados, a tua responsabilidade.
Esta é a nossa maior virtude e, sendo honestos, aquilo a que mais vais custar habituares-te. As tuas mensagens, ficheiros e contactos vivem num cofre cifrado dentro do teu dispositivo. Não há cópia em nenhum servidor. Estão protegidos com 24 palavras — o mesmo nível de segurança que o Bitcoin. Mas estão num único sítio, a não ser que instales o Solo2 num segundo dispositivo — os dois cofres sincronizar-se-ão automaticamente quando estiverem ligados ao mesmo tempo. Também podes exportar um backup cifrado. Aqui não há nuvem que te salve se perderes o teu único dispositivo. Os teus dados são teus, com todas as consequências.
Em detalhe
O servidor do Solo2 é completamente cego. Não sabe com quem falas, o que dizes, nem que ficheiros partilhas. Nem sequer os sinais técnicos que estabelecem a ligação entre dispositivos são legíveis para o servidor — viajam cifrados de ponta a ponta.
As tuas mensagens viajam diretamente entre dispositivos, cifradas de ponta a ponta. O teu histórico vive cifrado no teu navegador, nunca no nosso servidor.
As chaves de cifra rodam automaticamente com cada mensagem. Cada mensagem é cifrada com uma chave única que é descartada imediatamente após o uso. Isto é tecnicamente conhecido como Double Ratchet, e significa que mesmo que alguém obtivesse uma chave, só poderia ler uma única mensagem — não a conversa. Além disso, a segurança restaura-se automaticamente após cada ronda de comunicação: uma chave comprometida torna-se inútil assim que a próxima mensagem é trocada.
Quando uma ligação direta entre dispositivos não é possível (por exemplo, por restrições de rede), é utilizado um servidor espelho (tecnicamente chamado TURN): os dados são refletidos de um dispositivo para outro, mas o espelho não tem consciência do que reflete — tudo viaja cifrado de ponta a ponta e o servidor não pode lê-lo. Além disso, todos os pacotes são preenchidos a um tamanho uniforme para impedir que um observador possa deduzir informações analisando o tamanho ou a frequência do tráfego.
Podes sempre ver na aplicação que tipo de ligação estás a usar — direta ou através do servidor espelho — e agir em conformidade.
A tua chave mestra é gerada aleatoriamente com 256 bits de entropia real — o mesmo nível que o Bitcoin. Ao criar a tua conta, o Solo2 gera uma chave única que é representada como 24 palavras. A tua palavra-passe protege o acesso ao serviço. As tuas 24 palavras são a chave dos teus dados. São duas chaves diferentes para duas portas diferentes.
Mesmo que o nosso servidor desapareça, os teus dados sobrevivem. Com as tuas 24 palavras podes aceder ao teu cofre local sem ligação ao servidor. Os teus dados são teus — a sério.
1. Dados que temos no servidor
1.1 A tua conta de utilizador
Estes são todos os campos que existem no teu registo. Não há mais nenhum.
| Dado | Porquê | Proteção | Duração |
|---|---|---|---|
| Nome de utilizador | Para poderes iniciar sessão | Texto simples (público por design) | Até apagares a tua conta |
| Palavra-passe | Autenticação | Protegida com Argon2id (recomendado pela OWASP, resistente a ataques com hardware especializado). Nunca armazenamos a tua palavra-passe real | Até apagares a tua conta |
| Nome público | Para que os teus contactos te reconheçam | Texto simples (tu o escolhes) | Até o alterares ou apagares a tua conta |
| Código de vinculação | O teu endereço dentro do Solo2 — como um número de telefone. É o que partilhas com alguém para que te encontre e te envie um pedido de ligação | Texto simples, único (~10 caracteres) | Até apagares a tua conta |
| Saldo da conta | Dinheiro que adicionaste à tua conta | Número (em cêntimos) | Até apagares a tua conta |
| Saldo bónus | Bonificações recebidas (promoções). Consumidas antes do saldo económico | Número (em cêntimos) | Até apagares a tua conta |
| Tipo de conta | O teu plano atual (teste, padrão, ouro, platina) | 1 byte (número inteiro: 0=teste, 1=padrão, 2=ouro, 3=platina, 4=pausado, 5=suspenso) | Até que mude ou apagues a tua conta |
| Data e hora de registo | Quando criaste a tua conta | Data e hora completa (timestamp) | Permanente |
| Identificadores internos | O sistema precisa de dois códigos internos para se referir a si sem usar o seu nome de utilizador. Um é o seu ID principal e o outro um código de referência. Ambos são opacos — não significam nada fora do sistema | Dois códigos aleatórios de 24 caracteres cada (ex.: u_7kX9mP2...). Não contêm o seu nome, data ou dados pessoais — são puramente aleatórios | Até apagares a tua conta |
| Versão de segurança | Que versão do algoritmo de proteção da palavra-passe foi utilizada | Número interno | Até apagares a tua conta |
| Indicadores de estado | Flags técnicas (se o teu saldo mudou, se tens o modo de segurança máxima ativo) | 1 byte — o equivalente a uma única letra. Não cabe mais nada | Até apagares a tua conta |
Para teres uma ideia do volume: o teu registo completo ocupa cerca de 400 bytes — menos do que este parágrafo. São os teus nomes (inventados se quiseres), uma impressão digital da tua palavra-passe (tamanho fixo, 60 bytes), a tua chave mestra cifrada (um bloco opaco de ~128 bytes que não conseguimos ler), dois números para o teu saldo, umas datas e um byte de configuração. Isso é tudo o que existes no nosso servidor.
1.2 Sessões ativas
| Dado | Porquê | Proteção | Duração |
|---|---|---|---|
| Hash do token de sessão | Manter a tua sessão ativa | Impressão digital irreversível (SHA-256). O token original nunca é armazenado no servidor | 24 horas — depois é completamente eliminado |
| Data de criação | Para que o sistema saiba quando foi criada — útil para limpeza automática | Carimbo de tempo numérico (segundos unix) | Eliminado com a sessão |
| Data de expiração | A sessão expira 24 horas após a criação. Não é renovada com o uso — tem uma data de expiração fixa | Carimbo de tempo numérico (criação + 24 horas) | 24 horas — depois é completamente eliminado |
Ao terminar sessão ou ao expirar, a linha é completamente eliminada da base de dados. Não fica qualquer rasto de que a sessão existiu.
1.3 Pedidos de vinculação
| Dado | Porquê | Proteção | Duração |
|---|---|---|---|
| ID do solicitante | Para saber quem enviou o pedido | Código interno de 24 caracteres aleatórios | 3 dias — depois é eliminado automaticamente |
| ID do destinatário | Para saber a quem se destina | Código interno de 24 caracteres aleatórios | 3 dias — depois é eliminado automaticamente |
| Estado | Pendente / aceite / rejeitado | 1 byte (número inteiro: 0=pendente, 1=aceite, 2=rejeitado) | Eliminado ao ser resolvido ou ao expirar (3 dias) |
| Data de criação | Saber quando o pedido foi criado para poder eliminá-lo automaticamente | Carimbo de data/hora numérico (segundos unix) — 4 a 8 bytes | 3 dias — depois é eliminado automaticamente |
Nota importante: Enquanto o pedido está pendente (máximo 3 dias), o servidor sabe efetivamente que o utilizador A pediu para se conectar ao utilizador B. Passados 3 dias, o pedido é eliminado automaticamente. Uma vez aceite a vinculação, o servidor não guarda a relação. A tua lista de contactos existe apenas no teu navegador, cifrada.
1.4 Código de vinculação
| Dado | Porquê | Proteção | Duração |
|---|---|---|---|
| Código de vinculação (alias) | Identificador curto para que outro utilizador te encontre e solicite criar um túnel | Código aleatório de 8 caracteres derivado do teu ID interno | Permanente (é o teu identificador público de conexão) |
1.5 Subscrições push (notificações)
| Dado | Porquê | Proteção | Duração |
|---|---|---|---|
| Endereço de notificação | Enviar notificações para o teu navegador | URL do fornecedor do navegador (Google, Mozilla ou Apple) | Até desativares as notificações ou apagares a tua conta |
| Chaves de cifra push | Cifrar a notificação para que apenas o teu navegador a possa ler | Padrão Web Push | Igual ao endereço |
1.6 Feedback (suporte)
| Dado | Porquê | Proteção | Duração |
|---|---|---|---|
| A tua mensagem | Para podermos ajudar-te | Texto simples | Até o processarmos |
| O teu ID de utilizador | Para saber quem precisa de ajuda | ID interno | Igual à mensagem |
1.7 Sinalização de ligação (efémera)
Para que dois dispositivos possam ligar-se diretamente, precisam de trocar sinais técnicos de estabelecimento de ligação (protocolo WebRTC). O único momento em que o nosso servidor mantém em memória o teu código de utilizador e o do teu contacto é durante os milissegundos em que processa este pedido de ligação. Dura um instante, existe apenas na memória RAM e nunca é escrito em disco. Os sinais em si estão cifrados de ponta a ponta
| Dado | Porquê | Proteção | Duração |
|---|---|---|---|
| Sinais de ligação | Estabelecer a ligação direta entre dispositivos | Cifrados de ponta a ponta com a chave pública do destinatário. O servidor não pode lê-los nem modificá-los | 60 segundos |
1.8 Servidor espelho (relay TURN)
Se a ligação direta não é possível, é utilizado um servidor espelho: os dados passam por ele como a luz através de um espelho — são refletidos de um lado para o outro, mas o espelho não tem consciência do que reflete. Todos os pacotes são preenchidos a um tamanho uniforme para que um observador não consiga distinguir uma mensagem de um simples batimento de ligação.
| Dado | Porquê | Proteção | Duração |
|---|---|---|---|
| Credencial de acesso | Autenticar-te no servidor espelho | A tua identidade é transformada numa impressão digital irreversível — o servidor espelho não sabe quem és | 24 horas |
1.9 Pagamentos processados
Os pagamentos são o único ponto onde existe uma fricção real com o anonimato. Sejamos honestos sobre isso.
Quando te registas no Solo2, escolhes um nome de utilizador (pode ser inventado), uma palavra-passe e um nome público (também inventado, se quiseres). Nenhum dado te vincula a uma pessoa real. Mas se fizeres um pagamento com cartão, a tua instituição financeira sabe quem és.
O que recebemos da plataforma de pagamento é unicamente uma confirmação e um montante. Não recebemos nem armazenamos o nome do titular, o número do cartão, o documento de identidade, nem qualquer dado pessoal do pagador. São montantes pequenos — legalmente equivalentes a um talão de caixa, como comprar um chupa-chupa num quiosque: o comerciante não regista o documento de identidade de quem paga.
Além disso, o registo de pagamento é deliberadamente desvinculado
| Dado | Porquê | Proteção | Duração |
|---|---|---|---|
| Registo de pagamento | Contabilidade e obrigações fiscais | Confirmação + montante. Sem dados pessoais do pagador. Sem vinculação a nenhuma conta de utilizador | Permanente (obrigação legal) |
Sobre o pior cenário possível:
Todas as nossas receitas são legais e contabilizadas através da plataforma de pagamento. Liquidamos os impostos correspondentes. Mas o anonimato do cliente é total da nossa parte.
2. Dados que NÃO temos no servidor
Isto é o que nos define. O servidor do Solo2 não armazena nem tem acesso a
- As tuas mensagens
- Os teus ficheiros
- A tua lista de contactos
- O teu histórico de chat
- A tua localização
- Analíticas de uso
- Dados do dispositivo
- Metadados de comunicação
Sobre o teu endereço IP
O teu endereço IP não é armazenado em nenhuma base de dados. Nos registos técnicos do servidor, os endereços IP são transformados em impressões digitais irreversíveis (hash) — úteis para detetar padrões de abuso, mas impossíveis de reverter para o IP original. Estes registos são eliminados automaticamente a cada 7 dias. Os sinais de ligação, que poderiam conter o teu IP, estão cifrados de ponta a ponta — o servidor não os consegue ler.
3. Dados no teu navegador (O Cofre)
Tudo o que se segue vive exclusivamente no teu navegador
Os teus dados estão cifrados em repouso — mesmo que alguém acedesse ao armazenamento do teu navegador, apenas encontraria blocos cifrados ilegíveis sem a tua palavra-passe.
Quando exportas uma cópia de segurança, é cifrada com a mesma proteção (Argon2id + AES-256-GCM). Só quem conhecer a tua palavra-passe pode decifrá-la.
| Dado | Cifra | Controlo |
|---|---|---|
| Mensagens | AES-256-GCM | Tu decides quando as apagar |
| Ficheiros | AES-256-GCM | Tu decides quando os apagar |
| Contactos (pares) | AES-256-GCM | Tu decides quem vincular |
| Estado de verificação | AES-256-GCM | Tu verificas a identidade de cada contacto |
| Índice de pesquisa | Cifrado com tokens irreversíveis (HMAC) | Reconstruído a partir das tuas mensagens |
| Estado de entrega | AES-256-GCM | Quais mensagens foram entregues |
| Mensagens pendentes | AES-256-GCM | Fila de envio quando não há ligação |
Armazenamento temporário do navegador
| Dado | Tipo | Duração | Porquê |
|---|---|---|---|
| Sessão de utilizador | Memória local do navegador (localStorage) | Até terminares sessão | Manter a tua sessão |
| Versão da app | Memória local do navegador (localStorage) | Permanente | Detetar atualizações |
| Preferência de tema | Memória local do navegador (localStorage) | Permanente | Recordar o teu tema visual |
| Preferência de idioma | Memória local do navegador (localStorage) | Permanente | Recordar o teu idioma |
| Palavra-passe (modo segurança máxima) | Memória de separador (sessionStorage) | Desaparece ao fechar o separador | Reinicializar a cifra se recarregares a página |
Nota sobre a segurança no navegador
O Solo2 funciona dentro do teu navegador web. Os teus dados cifrados estão protegidos em repouso, mas quando a aplicação está aberta e te mostra as tuas mensagens decifradas no ecrã, a segurança depende também do teu ambiente:
- Extensões do navegador:
- Navegador limpo:
- Aplicação nativa:
4. Ligações de rede
A aplicação Solo2
| Domínio | Motivo | Dado enviado |
|---|---|---|
| solo2.net | API da aplicação | Autenticação, sinalização, presença |
| pay.menzuri.com | Plataforma de pagamento | Apenas se efetuares um pagamento |
Nenhum outro domínio.
Mesmo para descobrir o endereço IP público do teu dispositivo (necessário para estabelecer ligações diretas entre utilizadores), usamos o nosso próprio servidor (tecnicamente chamado STUN). Não delegamos em serviços externos. Gerimo-lo nós mesmos.
A página de apresentação
A página de apresentação (solo2.net) — que é independente da aplicação — utiliza um sistema de medição anónima alojado nos nossos próprios servidores na Alemanha:
| Domínio | Motivo | Dado enviado |
|---|---|---|
| stats.menzuri.com | Medição anónima de visitas | Página visitada (sem cookies, sem IP, sem identificação) |
Este sistema não instala cookies, não regista o teu endereço IP, não te identifica, não te segue entre visitas e não partilha dados com terceiros. A aplicação Solo2 não tem este sistema nem qualquer outro tipo de analítica.
5. Apagar os teus dados
Existem duas ações diferentes, e é importante que conheças a diferença:
Apagar dados locais
Nas definições da aplicação tens duas opções de eliminação local:
- Apagar os meus dados
- Reset de emergência
Em ambos os casos, a tua conta no servidor continua a existir.
Recuperação automática entre dispositivos
Se perderes os teus dados num dispositivo e tiveres outro ligado, o Solo2 deteta a situação e oferece-te restaurar a tua identidade e o teu cofre automaticamente. A restauração viaja cifrada (Argon2id) por ligação direta entre os teus dispositivos — sem passar pelo servidor.
Eliminar a tua conta do servidor
- São eliminadas todas
- A eliminação é atómica
- Os registos de pagamento ficam deliberadamente desvinculados
- Os identificadores nos logs do servidor são impressões digitais irreversíveis: não é possível vincular um log à tua conta uma vez eliminada.
- O Cofre no teu navegador não é eliminado automaticamente com esta ação (não temos acesso ao teu navegador). Para o eliminar, executa primeiro a eliminação nuclear ou limpa os dados do site no teu navegador.
5b. A tua chave mestra e as tuas 24 palavras
Ao criar a tua conta no Solo2, é gerada uma chave mestra com 256 bits de entropia real (a mesma usada pelo Bitcoin). Esta chave é representada como 24 palavras que só tu conheces. A tua palavra-passe envolve esta chave para guardá-la cifrada no servidor — o servidor não a consegue ler.
Isto significa que tens duas chaves independentes
Algoritmos exatos (verificável)
Geração: CSPRNG
Como a tua chave mestra é protegida
| Camada | O que é | Onde reside |
|---|---|---|
| Palavra-passe | Acesso ao servidor. Envolve a tua chave mestra | Na tua memória + hash no servidor |
| Segredo do dispositivo | Segundo fator invisível, gerado automaticamente na instalação | No teu dispositivo (não extraível) |
| Chave mestra (24 palavras) | 256 bits de entropia real, gerada aleatoriamente. Nível Bitcoin (BIP39) | Num papel que tu guardas + envolvida no servidor |
| Rotação de chaves | Cada mensagem usa uma chave única que é destruída depois (Double Ratchet) | Automática, transparente |
Se mudares a tua palavra-passe
Mudar a tua palavra-passe é instantâneo. A tua chave mestra é simplesmente re-envolvida com a nova palavra-passe — a tua identidade não muda, o teu cofre não é re-cifrado, os teus contactos não são afetados, e as tuas 24 palavras continuam a ser as mesmas. É uma operação de milissegundos.
Recuperação
Se perderes a tua palavra-passe, podes aceder ao teu cofre com as tuas 24 palavras — sem precisar de servidor. Se perderes as tuas 24 palavras, podes fazer login com a tua palavra-passe e o servidor devolve-te a tua chave envolvida. Se perderes ambas, os teus dados são irrecuperáveis. Como no Bitcoin, isso é segurança por design.
6. O que acontece se alguém aceder ao servidor sem autorização
Se um atacante obtivesse acesso completo ao servidor do Solo2, obteria:
- Nomes de utilizador e nomes públicos
- Códigos de vinculação
- Chaves públicas (inúteis sem a chave privada, que está no teu navegador)
- Impressões digitais de palavras-passe (inúteis sem um ataque de força bruta extremamente custoso graças ao Argon2id)
- Impressões digitais de tokens de sessão (inúteis sem o token original)
- Pedidos de vinculação pendentes (IDs internos, expiram em 3 dias)
- Tipo de conta, saldos e datas de registo
- Registos de pagamento (sem poder vinculá-los a um utilizador específico)
O que NÃO obteria:
- Nenhuma mensagem (nunca estiveram no servidor)
- Nenhum ficheiro (nunca estiveram no servidor)
- Nenhuma lista de contactos (nunca esteve no servidor)
- Nenhum histórico de chat (nunca esteve no servidor)
- Nenhuma chave privada de cifra (residem no teu navegador)
- Nenhum endereço IP (não são registados)
7. O nosso compromisso
Este manifesto será atualizado com cada alteração relevante na gestão de dados. Se adicionarmos um novo campo à base de dados, aparecerá aqui. Se eliminarmos algo, também.
A versão vigente é sempre esta página.