Existe escasa documentación oficial al respecto, pero el número de descargas constituye un factor esencial. Si el archivo no está firmado digitalmente, las descargas se contabilizan sobre un resumen criptográfico (hash), de modo que cada nueva versión exige construir la reputación desde cero. Sin embargo, en presencia de una firma, la reputación se asocia con el certificado del que proviene, es decir, varios archivos distintos pero firmados con el mismo certificado acumulan reputación entre ellos.
Para generar estas firmas es necesario adquirir un certificado digital de una autoridad de certificación reconocida por Windows. Debe solicitarse con el propósito expreso de firma de código, que también se conoce como firma Authenticode; no se puede emplear, por ejemplo, un certificado para SSL/TLS. Por lo general son de pago y no precisamente baratos. Presentan una vigencia limitada (un año, dos, tres...) y cada renovación supone un desembolso adicional. Algunas autoridades certificadoras pueden ofrecer descuentos para determinados tipos de proyectos. Los certificados de validación extendida (EV) tienen un coste todavía superior, quizá prohibitivo para pequeños negocios, y conllevan más trámites pero también otorgan una reputación inmediata. No obstante, un certificado normal (no EV) basta para la mayoría de usos aunque "cueste más" generar reputación.
Microsoft ofrece en el SDK de Windows la herramienta de línea de comandos Signtool.exe para las operaciones de firma de código. Su sintaxis y uso resultan bastante complejos. No estoy especialmente familiarizado con el tema pero hay abundante información en Internet si se busca bien. Es fundamental emplear un sello de tiempo (timestamp) que preserve la validez de la firma después de que el certificado de origen haya expirado.