Segurança · Transparência de rede
Cada ligação que esta aplicação pode estabelecer.
Para revisores de segurança informática, encarregados de proteção de dados, compras públicas — e para quem quiser verificar a promessa local-first em vez de acreditar nela. Mantida ao ritmo do código: quando uma versão adiciona ou altera uma ligação, esta página muda na mesma versão.
Última verificação na v0.6.20 · 10.06.2026
A promessa fundamental
O áudio das reuniões, as transcrições, os resumos e as impressões vocais nunca saem do dispositivo. A transcrição (whisper.cpp), a separação de interlocutores (pyannote/ONNX), a correspondência de vozes e os resumos LLM correm inteiramente em local. A tabela abaixo é a lista completa do tráfego de rede que a aplicação pode gerar — o que cada ligação transporta e como desligá-la.
Aplica-se à v0.6.20 e posteriores. Em versões anteriores (≤ 0.6.19), o registo de rede ainda não regista as chamadas de licença e de recomendação e o modo offline rigoroso não as bloqueia; a CSP rigorosa da webview e o painel «Os seus dados» também chegam com a v0.6.20.
Como verificar por si próprio
- Registo de rede integrado: Definições → Privacidade → Registo de rede mostra cada tentativa de saída (data e hora, host, finalidade, permitida/bloqueada) e exporta em JSON-lines. O ficheiro subjacente:
%APPDATA%/<app-id>/network-audit.jsonl. - O modo offline rigoroso (Definições → Privacidade) bloqueia cada ligação da tabela antes de qualquer resolução DNS ou abertura de socket (destinos loopback/LAN excetuados). A telemetria, que usa o transporte próprio do SDK Sentry, é desligada à força pelo modo offline na sua própria barreira.
- Ou observe o tráfego: execute o Wireshark ou o Process Monitor sobre o processo da aplicação. Com o modo offline ativo — ou simplesmente sem funcionalidades de nuvem configuradas — não deverá ver tráfego além da verificação de atualizações opcional.
Ligações
| # | Finalidade | Destino | Quando | O que é enviado | Como desligar |
|---|---|---|---|---|---|
| 1 | Verificação + transferência de atualizações | GitHub Releases (repositório público de versões) | Arranque da aplicação / «Procurar atualizações» manual | Apenas GET HTTP; sem dados do utilizador. Os metadados HTTP habituais (IP, user agent) chegam ao GitHub. As atualizações são verificadas com assinatura ed25519 antes da instalação. | O modo offline rigoroso suspende-a; flag de auto-atualização por marca |
| 2 | Transferência dos modelos IA | GitHub (repositório público de modelos) | Assistente de primeira execução, mudança de modelo, reparação — sempre por sua iniciativa | GET HTTP dos ficheiros de modelos; sem dados do utilizador | Não inicie transferências; o modo offline bloqueia |
| 3 | Ativação da licença / heartbeat diário / desativação | API de licenças (localtranscript.com) | Apenas com uma chave de licença guardada. As instalações ativadas por domínio (empresariais) e as instalações Free não enviam nada | Chave de licença, impressão digital da máquina (SHA-256 dos IDs de hardware — sem números de série em claro), nome do computador, sistema operativo, versão da aplicação, e-mail da conta | Não ative online (existe o token offline); o modo offline rigoroso bloqueia (tolerância de 90 dias) |
| 4 | Programa de recomendação | API de recomendação (localtranscript.com) | Apenas depois de aderir explicitamente ao programa | E-mail, código de recomendação, impressão digital da máquina, bit de consentimento de marketing | Não adira; o modo offline rigoroso bloqueia |
| 5 | Telemetria de falhas e desempenho | Sentry, região UE (*.ingest.de.sentry.io) | Opt-in, desativada por predefinição. Apenas em versões compiladas com um DSN, apenas após o seu consentimento (assistente ou Definições) | Relatórios de falhas depurados + medições de tempo: versão da aplicação, classe de hardware, stacks de erro com nomes de utilizador ocultados no dispositivo. Nunca áudio, transcrições, nomes ou conteúdos de ficheiros | Predefinição: desativada; interruptor nas Definições; o modo offline rigoroso força a desativação |
| 6 | Transcrição na nuvem / IA na nuvem (fornecedores opcionais) | OpenAI, Anthropic ou Infomaniak (Suíça) — à sua escolha | Apenas se configurar explicitamente um fornecedor de nuvem com a sua própria chave API. O local é a predefinição | Áudio das reuniões (transcrição na nuvem) ou texto das transcrições (Ações IA na nuvem) — para o fornecedor escolhido, sob a sua própria conta | Nunca configure um fornecedor; «local» é a predefinição; o modo offline rigoroso bloqueia |
| 7 | Leitura de calendário (iCal) | O URL do seu próprio calendário | Apenas se configurar um URL de calendário | GET HTTP do feed iCal | Não o configure; o modo offline bloqueia (URLs LAN continuam permitidos) |
O que nunca tem um caminho de rede
Gravação, transcrição, separação de interlocutores, correspondência interlocutores/contactos, criação de impressões vocais, pesquisa semântica e resumos LLM locais — não existe nenhum caminho de código que carregue conteúdos de reuniões, a menos que tenha configurado a ligação n.º 6 por si próprio.
A base de dados das reuniões (SQLite), os ficheiros de áudio e as impressões vocais dos contactos vivem na pasta de dados local da aplicação (Definições → Privacidade → «Os seus dados» mostra-a e abre-a; «Apagar todos os dados» elimina-a). A aplicação não cifra esta pasta por si — está protegida pela sua conta de utilizador Windows; recomendamos a cifragem de disco BitLocker.
Aplicação no código (para revisores)
Todo o HTTP da tabela passa por um único ponto de controlo (net_guard): escreve a linha de auditoria e, no modo offline rigoroso, rejeita destinos não-LAN antes de qualquer resolução DNS. Exceções intencionais: n.º 1 (atualizador — suspenso pelo modo offline no ponto de chamada) e n.º 5 (transporte do SDK Sentry — bloqueado na inicialização e no envio). A webview corre sob uma Content-Security-Policy restritiva: mesmo comprometido, o código frontend não pode contactar hosts arbitrários.
Para TI e encarregados de proteção de dados
Minimização de dados pela arquitetura: na configuração predefinida, os conteúdos das reuniões são processados apenas no dispositivo — não há nenhum subcontratante de nuvem a avaliar para efeitos de LPD/RGPD. O reconhecimento de interlocutores é biometria exclusivamente local: as impressões vocais são criadas, guardadas e comparadas na máquina. O modo offline rigoroso e o registo de auditoria exportável foram concebidos como demonstração para concursos públicos — incluindo para municípios e administrações que queiram atas automáticas das suas sessões.
Estão disponíveis versões white-label e instalações geridas (MSI para SCCM / Intune / políticas de grupo), com predefinições pré-configuradas. Perguntas, apoio AIPD ou um piloto: hello@localtranscript.com.
Gratuito para sempre · sem cartão · sem conta