Segurança
Segurança: o que fica onde
O NomaDev foi feito para que o teu trabalho nunca tenha de passar por nós. Esta página explica, ponto a ponto, onde ficam o teu código, as tuas palavras-passe e as tuas chaves, e o pouco que o nosso próprio serviço guarda.
Os teus projetos nunca saem do teu computador
O servidor do NomaDev corre no computador ou VPS onde os teus projetos já estão. O Claude Code, o git, a pré-visualização e os envios correm todos lá.
O teu telemóvel liga-se diretamente a essa máquina. Em casa, normalmente pelo Tailscale, uma rede encriptada ponto a ponto baseada em WireGuard; num VPS, por HTTPS com o teu próprio certificado. Não há nenhum servidor nosso pelo meio, por isso não conseguiríamos ver o teu código nem que quiséssemos.
Palavras-passe e frases secretas ficam guardadas só no teu telemóvel
Quando um envio precisa de uma palavra-passe de FTP ou SFTP, ou da frase secreta de uma chave SSH, escreve-la no telemóvel. Se escolheres lembrar, fica guardada no Keystore do Android, o armazenamento encriptado protegido pelo hardware do telemóvel; se não, vale só para essa tentativa.
A palavra-passe vai para o teu computador só para esse envio, fica em memória enquanto o envio decorre e nunca é gravada no disco — nem no teu computador nem por nós. Os nossos servidores nunca a veem.
Desligar o telemóvel na app também apaga as palavras-passe nele guardadas.
As chaves SSH só mudam de sítio se pedires
Para publicar por SFTP o servidor usa as chaves SSH que já estão no teu computador, na pasta do teu utilizador. Não são copiadas nem transferidas para lado nenhum: o telemóvel só fica a saber se a chave pede uma frase secreta.
A única exceção és tu que a decides: para usares no terminal a chave de um destino, podes copiá-la para o telemóvel. Como funciona, logo abaixo.
O terminal SSH
O terminal liga-se do telemóvel diretamente ao servidor, por SSH: a ligação é encriptada de ponta a ponta e não passa pelo teu computador nem por nenhum servidor nosso. Por isso funciona até com o computador desligado.
As chaves e palavras-passe do terminal ficam só no telemóvel, encriptadas com uma chave do Keystore do Android protegida pelo hardware. Para as usar é precisa a tua impressão digital ou PIN, e o desbloqueio vale cinco minutos. Nunca vão para a cópia de segurança do Android nem para o Google Drive, e só a parte nativa da app as usa, no momento de ligar.
Podes gerar uma chave diretamente no telemóvel: a parte privada nunca sai de lá, e no servidor copias só a pública. Se preferires a chave que um destino já usa no computador, a app copia-a uma única vez, depois da tua impressão digital ou PIN, e só se o pedido chegar encriptado, por HTTPS ou por um proxy HTTPS na mesma máquina: numa ligação sem encriptação o computador recusa.
Na primeira vez que te ligas a um servidor, a app mostra a impressão digital dele e guarda-a; para os destinos já confirmados pelo computador, vale a dele. Se a impressão digital mudar, a app para e avisa, e para aceitar é preciso manter o botão premido. Chaves e palavras-passe só são desbloqueadas depois dessa confirmação.
O que passa pelo terminal fica na memória do telemóvel, nunca no disco, e desaparece quando fechas a sessão. O terminal não aparece nas apps recentes nem nas capturas de ecrã, a não ser que o permitas. Em segundo plano as sessões ficam abertas no máximo durante o tempo que escolheres, e pela notificação fechas todas com um toque.
Só os telemóveis que autorizas
Para ligar um telemóvel precisas de um código mostrado no teu computador: 8 caracteres, de utilização única, válido durante 10 minutos e anulado após 5 tentativas erradas. O QR leva o mesmo código.
Cada telemóvel recebe então o seu próprio token de acesso. O servidor guarda só a impressão digital SHA-256 dele, nunca o token em si, por isso nem quem lê os ficheiros do servidor consegue fazer-se passar pelo teu telemóvel.
Em Definições vês todos os telemóveis ligados e podes desligar qualquer um. Um telemóvel desligado já não consegue ligar-se; reiniciar o servidor fecha também uma ligação que ainda estivesse aberta.
Nada fica aberto sem autenticação
Cada pedido ao servidor tem de levar o token do telemóvel. A ligação em tempo real começa com um ticket de utilização única válido durante 30 segundos, para que o token nunca acabe num endereço ou num log.
A pré-visualização do site que estás a desenvolver nunca é pública: só abre pela app, com um ticket de utilização única trocado por um cookie privado.
Na primeira vez que envias para um servidor FTPS ou SFTP, a app mostra a impressão digital do servidor e o NomaDev guarda-a; se mudar depois, a app avisa antes de continuar.
O que os nossos servidores guardam, e nada mais
Mantemos um único serviço: o que reencaminha as notificações para o teu telemóvel, porque a chave do Firebase necessária para as enviar não pode ir dentro da app.
Guarda o token de notificação do teu telemóvel, associado a um identificador aleatório que o teu computador usa para pedir uma notificação. Para cada notificação recebe o tipo (concluído, pergunta, permissão, erro, pré-visualização), o nome do projeto e o id da sessão; é ele que escreve o texto a partir de frases fixas e não guarda nada disto.
Nunca recebe código, mensagens de erro, palavras-passe ou chaves. As estatísticas de utilização, na app e no site, só começam se aceitares: vão para o Google Analytics e nunca contêm código, ficheiros ou nomes de projetos.
E o Claude?
O Claude Code corre no teu computador com a tua própria conta, e envia à Anthropic o que precisa para trabalhar no teu código — exatamente como quando o usas no terminal. O NomaDev não acrescenta nem muda nada nessa troca. Vê a política de privacidade da Anthropic.
Perguntas sobre segurança
Conseguem ver o meu código?
Não. O teu telemóvel fala diretamente com o teu computador, e o nosso único serviço trata das notificações, que nunca contêm código.
Onde ficam guardadas as minhas palavras-passe de FTP e SFTP?
Só no Keystore do Android do teu telemóvel, e só se escolheres lembrá-las. O computador usa-as em memória para um único envio.
O terminal SSH passa pelo meu computador?
Não. O telemóvel liga-se diretamente ao servidor. As chaves e palavras-passe do terminal ficam só no telemóvel, encriptadas e desbloqueadas com a tua impressão digital ou PIN.
E se alguém descobrir o endereço do meu servidor?
Sem o token de um telemóvel ligado, todos os pedidos são recusados, e para ligar um telemóvel novo é preciso um código mostrado no teu computador.
E se perder o telemóvel?
Desliga-o a partir de outro telemóvel ligado, em Definições: a partir desse momento já não consegue ligar-se. Se a app estava aberta, reinicia também o servidor, que fecha a ligação que ele já tinha.