Se você desenvolve e distribui programas para Windows — um utilitário, um instalador, um app da sua empresa — mais cedo ou mais tarde esbarra nisto: o usuário clica em baixar, e o sistema trata o seu trabalho limpo como ameaça. Muita gente perde downloads (e confiança) sem entender o porquê. A boa notícia é que o caminho é conhecido e você pode trilhá-lo antes do lançamento.
A regra de ouro
Assine sempre com o mesmo certificado. A reputação mora no publicador, não no arquivo.
01 Por que o Windows bloqueia um app novo
O Microsoft Defender SmartScreen é um porteiro. Quando um executável chega a um PC pela primeira vez, ele pergunta: "já vi esse programa rodar bem em milhares de máquinas?" Se a resposta é não, aparece a tela azul de "aplicativo não reconhecido" — e boa parte das pessoas desiste ali mesmo.
O detalhe cruel: isso acontece mesmo com um programa perfeitamente limpo. O SmartScreen não está dizendo que seu app é um vírus. Está dizendo que ele é desconhecido. E, para o usuário assustado, desconhecido parece a mesma coisa.
02 Assinar é obrigatório — mas não é mágica instantânea
Assinar seu executável com um certificado de assinatura de código (de uma autoridade que o Windows já confia — Certum, Sectigo, DigiCert e afins) faz duas coisas essenciais:
Primeiro, troca o rótulo de "editor desconhecido" pelo seu nome verificado. O usuário deixa de ver "sei lá quem fez isso" e passa a ver "publicado por Fulano". Segundo, prova que o arquivo não foi adulterado depois de sair da sua mão.
⚠ o mal-entendido comum
Assinar não zera o aviso do SmartScreen no dia seguinte. A assinatura te dá identidade; a reputação ainda precisa ser construída. É por isso que muita gente assina, vê o aviso continuar e conclui — errado — que "o certificado não funcionou".
03 A reputação mora no publicador
Aqui está a peça que muda tudo. O SmartScreen guarda reputação em dois níveis: por arquivo (cada versão começa do zero) e — o mais importante — por publicador, ou seja, por certificado.
Quando o seu primeiro app assinado acumula downloads e execuções limpas ao longo de semanas, o SmartScreen aprende: "esse certificado é gente boa". A partir daí, todo app novo assinado com o mesmo certificado herda essa confiança — e passa liberado praticamente de imediato.
O que aconteceu aqui no VLB
-
1º app
O viewer do VLB, recém-assinado, passou cerca de um mês com a tela azul do SmartScreen. Nesse período, só o Chrome baixava sem reclamar (ele usa reputação própria, mais branda). Era o certificado construindo nome.
-
Depois
Meses mais tarde, um app totalmente diferente — o VLB-DDNS, assinado com o mesmo certificado. Baixou e abriu limpo, de primeira, numa máquina zerada. Sem tela azul, sem espera. Herdou a reputação que o viewer já havia pago.
A lição prática: você paga o "pedágio" de reputação uma única vez, com o primeiro produto. Cada app seguinte, assinado com o mesmo certificado, já nasce confiável. Trocar de certificado joga tudo isso fora e recomeça do zero.
04 Enquanto a reputação não chega: o truque do .zip
Durante aquelas primeiras semanas, alguns navegadores (o Edge principalmente) chegam a recusar o download do .exe direto. A solução é simples e honesta:
✓ distribua dentro de um .zip
Os navegadores liberam o download de um .zip sem drama. O usuário extrai e roda. Isso resolve o download; o aviso do SmartScreen ao abrir ainda depende de assinatura + reputação — mas já tira o primeiro obstáculo do caminho.
05 Como acelerar a liberação
Submeta cada binário assinado à Microsoft. No portal do Microsoft Defender existe um "enviar arquivo para análise" — é grátis e ajuda a limpar falsos positivos e a acelerar a reputação. Vale a pena a cada versão nova nos primeiros tempos.
Se o orçamento permite e a pressa é grande, um certificado EV (Extended Validation) dá reputação praticamente instantânea — em troca de ser mais caro e exigir um token físico de hardware. Para a maioria dos projetos, certificado comum + paciência resolve.
# assinar com carimbo de tempo (o timestamp é essencial:
# mantém a assinatura válida mesmo depois de o certificado expirar)
signtool sign /sha1 <impressão-digital-do-cert> /fd sha256 ^
/tr http://time.certum.pl /td sha256 "SeuApp.exe"
06 Checklist antes de lançar
- ✓
Tenho um certificado de assinatura de código de uma autoridade que o Windows confia.
- ✓
Vou usar esse mesmo certificado em todos os apps — para a reputação se somar num nome só.
- ✓
Assino com carimbo de tempo (/tr), para a assinatura sobreviver à expiração do certificado.
- ✓
Distribuo em .zip nas primeiras semanas, para o navegador não barrar o download.
- ✓
Submeto cada versão à Microsoft e conto com algumas semanas até o aviso sumir sozinho.
- ✓
Explico ao usuário, na página de download, que o aviso é normal em apps novos e como seguir ("Mais informações → Executar assim mesmo").
O SmartScreen não é seu inimigo — é um porteiro que ainda não te conhece. Assine, seja consistente, dê tempo ao tempo. O investimento no certificado rende para sempre: cada app novo já entra pela porta da frente.
Este guia é livre. Se ajudou você, compartilhe. — Virtual Life Brasil 💙