Tengo una aplicación C++ para Windows. Firmo nuestro instalador y mi ejecutable, pero actualmente no firmo mis archivos DLL (como zlib1.dll). No es gran cosa firmarlos también, pero ¿alguien puede explicar cuál es el beneficio? Por ejemplo, ¿mi programa aparecerá de manera diferente a AV o firewall si todas sus dependencias están firmadas? ¿Los usuarios recibirán diferentes advertencias?¿Debo firmar mis archivos DLL?
Respuesta
Su programa no aparecerá diferente a AV o firewall. Comprobarán si hay firmas en el ejecutable que ya ha firmado. Firmar sus dlls tiene más sentido cuando usted mismo verifica esas firmas antes de cargarlas. Esto asegura la integridad de todos los dlls en tiempo de ejecución. Es una práctica segura recomendada firmar todos los binarios que envía y validar sus firmas en tiempo de ejecución. Si sus dlls van a ser usados por otros productos, entonces debe firmarlos ya que esos productos querrán verificar su autenticidad e integridad.
¿Qué pasa con la vinculación implícita? ¿Hay alguna forma de verificar la firma en esa configuración o es necesario convertir todas las cargas DLL en enlaces explícitos (es decir, llamadas LoadLibraryEx)? –
Gran pregunta, Brent. Me encantaría saber la respuesta. – twk
No creo que sea posible verificar firmas para dlls vinculados implícitamente, ya que los dlls se cargarán antes de que se active el código. Sin embargo, sí sé de un producto que carga explícitamente los dlls con los que vincula implícitamente solo para verificar la firma . – 341008
- 1. beneficio de firmar dll con nombre seguro
- 2. ¿Debo capitalizar mis constantes?
- 3. ¿Debo mantener mis archivos de proyecto bajo control de versión?
- 4. ¿Qué debo nombrar mis archivos con definiciones de clases genéricas?
- 5. ¿Cómo debo organizar mis archivos de proyecto de Xcode?
- 6. ¿Cómo debo organizar mis temas ASP.Net y archivos CSS comunes?
- 7. ¿Debo firmar mi manifiesto de ClickOnce?
- 8. ¿Cómo debo almacenar mis clases personalizadas?
- 9. ¿Debo probar mis controladores (MVC)?
- 10. ¿Cómo debo nombrar mis clases de CSS?
- 11. ¿Debo usar AutoMapper en mis pruebas unitarias?
- 12. ¿Debo crear DLL para la modularidad?
- 13. ¿por qué este código bloquea mis archivos?
- 14. ¿Cómo distribuir archivos apk a mis amigos?
- 15. Notepad ++ sintaxis resaltando mis archivos
- 16. donde guarda tomcat mis archivos?
- 17. ¿Debo mezclar mis UnitTests y mis pruebas de integración en el mismo proyecto?
- 18. Cómo firmar archivos de instalación de un Visual Studio .msi
- 19. Dónde almacenar archivos DLL externos?
- 20. ¿Debo cambiar mis utilities.pl a un módulo utilities.pm?
- 21. ¿Cómo obtengo una prueba unitaria para copiar mis archivos DLL y otros archivos cuando ejecuto una prueba?
- 22. ¿Dónde debo colocar mis archivos de widgets personalizados en Yii framework?
- 23. Dónde debo almacenar los archivos binarios de DLL en mi solución de estudio visual
- 24. MEF cargando archivos DLL que requirieron archivos DLL en el GAC
- 25. ¿A qué URL JSTL debo hacer referencia en mis JSP?
- 26. Según mis requisitos, ¿debo usar NSIS o jprofiler/install4j
- 27. ¿Qué archivos generados por RubyMine debo confirmar?
- 28. ¿Debo registrar los archivos * .mo?
- 29. Cómo firmar digitalmente archivos PDF con tarjetas inteligentes en .NET?
- 30. ¿Debo usar @import o archivos de manifiesto?
¿Por qué no los firmas? Ya pagó el certificado, por lo que solo se necesitan unos segundos durante la compilación para firmarlo. ¿Por qué omitirlo? – Tim
Tim, probablemente lo haga de todos modos, principalmente tengo curiosidad sobre cuál es el efecto. – twk