El mejor método para ofuscar o proteger ensamblajes .Net [cerrado]
Pregunta
Estoy buscando una técnica o herramienta que podamos usar para ofuscar o de alguna manera proteger nuestro código C# compilado.El objetivo no es la seguridad del usuario/datos, sino obstaculizar la ingeniería inversa de algunas de las tecnologías de nuestro software.
Esto no es para uso en la web, sino para una aplicación de escritorio.
Entonces, ¿conoces alguna herramienta disponible para hacer este tipo de cosas?(No es necesario que sean gratuitos)
¿Qué tipo de implicaciones de rendimiento tienen, si las hay?
¿Tiene esto algún efecto secundario negativo al utilizar un depurador durante el desarrollo?
Registramos rastros de problemas en el campo.¿Cómo afectaría esto la ofuscación?
Solución
Esta es una lista bastante buena de ofuscadores de Mercado de Visual StudioOfuscadores
- Punto de brazo
- Ofuscador criptográfico
- Comportamiento para .NET
- Implementar LX CodeVeil
- Fuscador de puntos Ofuscador .NET
- Salamandra Ofuscador .NET
- Diseños semánticos:Ofuscador de código fuente de C#
- Montaje inteligente
- Especias.Net
- Thinstall
- Xenocódigo Postconstrucción 2006
- Reactor .NET
No he observado ningún problema de rendimiento al ofuscar mi código.Si solo envía seguimientos de pila basados en texto, es posible que tenga problemas para traducir los nombres de los métodos.
Otros consejos
Hay herramientas que también "desofuscan" las DLL ofuscadas; sugeriría convertir la pieza que necesita ser protegida en un componente no administrado.
http://xheo.com/products/code-protection
Hizo el trabajo por mí en el pasado.
Estás perdiendo el tiempo siguiendo ese camino.Si tiene un código que no quiere que nadie vea, debe mantenerlo a puerta cerrada.Por ejemplo, ejecute ese código únicamente en su propio servidor utilizando una interfaz de servicio web.
Ofuscar su código sólo disuade a las personas más casuales.A medida que la industria de los videojuegos se inclinaba hace mucho tiempo, ningún código está a salvo de ser descifrado.