2009-08-13 10 views
7

¿Cuál es la mejor y más segura forma de licenciar el software? ¿Hay un programa existente para hacerlo? Quiero vender un script mío, pero quiero asegurarme de que los usuarios no puedan redistribuirlo o venderlo ellos mismos (por supuesto, si desactivan el registro en su propia computadora y eligen revender, esa es su elección).La forma más segura de licenciar software

El lenguaje de software es VB.net.

Dado que no estoy seguro de si puedo alojar una base de datos de registro de cualquier tipo, ¿hay alguna manera de mantener la licencia de forma autónoma de forma segura? Me gustaría que el usuario pueda descargar la demostración y poder actualizar a la versión completa de alguna manera.

¡Gracias por la ayuda!

Si no existe actualmente un software para hacer esto, ¿cómo podría hacerlo?

Respuesta

7

Dado que no estoy seguro de si estoy o no podría alojar una base de datos de registro de cualquier tipo, ¿hay alguna manera de mantener autónomo de forma segura liscensing?

No, no hay forma de hacerlo de forma segura. Incluso si tiene una base de datos de registro, es crackable.

Elimina el código de la versión completa de la demostración. Si tiene una pequeña cantidad de compradores, esto reduce considerablemente las posibilidades de fugas.

Si desea hacer una protección contra copia, debería comenzar a leer sobre ella. Ya que está preguntando sobre esto, puedo decir que le llevará mucho tiempo hacer una protección de copia decente. Lo mejor es contratar a alguien más para que lo haga por usted.

A .net ofuscador es probablemente la solución más fácil y efectiva para usted.

+0

¿Hay alguna manera de hacerlo? – Cyclone

+0

¿Hay un obfuscator .net gratuito? No puedo encontrar la descarga de Dotfuscator en ninguna parte de su sitio web ... – Cyclone

+0

Siempre hay una manera, pero pregúntele a la RIAA y al DVD CCA qué tan efectivas son. – chris

0

No te molestes. Si un usuario está lo suficientemente determinado como para revender su script, no hay absolutamente nada que pueda hacer para detenerlo. Al hacerlo, limita los usuarios que quieran modificar su secuencia de comandos por motivos no maliciosos.

+0

Lo sé, pero al menos deseo evitar que las personas simplemente publiquen copias en todas partes. Todo lo que tomaría ahora para que alguien redistribuya mi script es un correo electrónico o una carga en un servidor. – Cyclone

+0

Sin embargo, puede hacer que sea más difícil para aquellos que no quieren gastar más de 5 minutos en intentarlo. Estas herramientas resuelven un cierto porcentaje del problema, no todo el problema. Si 50 personas de cada 1000 compran su software porque no fue fácil para ellos simplemente copiarlo, entonces es dinero bien gastado. –

0

No es tanto una respuesta a la cuestión de la concesión de licencias, pero si le preocupa que sus clientes potenciales descompilen sus ensamblajes, entonces debería considerar la ofuscación.

La ofuscación se realiza en las versiones de lanzamiento y modifica en gran medida el nombre de las clases, los métodos y los campos de la aplicación. Si un usuario intenta regenerar el código fuente utilizando una herramienta como Reflector, se encontrará con un alto nivel de dificultad al tratar de hacer que el código compile o funcione.

Actualización: Para responder el comentario de ciclón: Dotfuscator es probablemente el más conocido ya que ha sido el envío con Visual Studio desde el año 2003 (creo; no está seguro de si se limita a las ediciones específicas VS). Algunas búsquedas rápidas de Google encontraron un tutorial al usarlo en Visual Studio 2008, y también en some alternative options.

+0

¿Tiene en mente algún ofuscador que deba usar? – Cyclone

+0

Estoy usando Visual Basic 2008 Express, no viene con eso>. < – Cyclone

0

con .net? Es muy difícil protegerlo.

La mejor opción es hacer un sistema trivial y confiar en la honestidad de las personas. Haga que sea fácil y simple para quienes realmente compran su software.

Demo? omita el código de la descarga.

básicamente, no ser demasiado paranoico ...

5

Si se desea lo suficiente su software y hace bien la gente va a pagar por ello. Siempre tendrá un% que nunca lo hará. En lugar de perder el tiempo tratando de detenerlos, concéntrese en mejorar el producto.

99.9% de las empresas no quieren robar algo y prefieren no cambiar su software para las necesidades. Prefieren comprar algo de la caja que funcione.

Tenga en cuenta Fog Bugz from Fog Creek se envía con su código fuente completo, y no tienen problemas para vender el software porque es un producto de calidad.

La calidad es importante, concéntrese en eso, no en la seguridad.

+0

Hmm, así que básicamente estás diciendo que si el producto es lo suficientemente bueno y hace lo que dice, suficientes personas seguirán adelante y realmente lo comprarán correctamente manera en que no importa? Tiene sentido, es bueno que no estoy cobrando mucho por esto. Sé que cuanto más alto sea el precio, más probable es que los usuarios no quieran pagar. – Cyclone

+0

Eso es lo que estoy diciendo. Es la calidad que atraerá a las personas a su producto. Enfoca tus enfados en eso. –

+0

Eso es lo que estoy haciendo en este momento, está casi listo para la venta. Solo tengo una característica que está molestando y no estoy haciendo nada en este momento, pero lo arreglaré en breve. – Cyclone

2

En general, no hay forma de proteger .NET software de craking it. Es muy fácil (especialmente con Reflector). Así que hay que realizar algunos pasos para poder proteger hasta cierto punto:

  1. Ofuscación el código (a menudo tarea muy trivial ya que no puede ocultar interfaces públicas expuestas al hacer referencia a ellos).
  2. Si el software es un componente de desarrollo, se puede proteger usando Licencias .NET incorporadas (usando .licx archivos en Visual Studio). Una compañía ayuda con esto: http://www.infralution.com/
  3. Usuario servidor de registro (esto no protegerá contra agrietamiento, pero protegerá del uso "sin licencia").

En cualquier caso ofuscación es el paso principal, ya que es la única cosa que pone NET más cerca de binarios nativos.

0

Solo existe una forma de garantizar que su software no se piratee y que haga que la mayor parte de la lógica y/o comunicación residan en un servidor. Incluso entonces, si su producto es lo suficientemente popular, las personas intentarán tener acceso a su software de servidor para ejecutarlo de manera privada.

3

Eche un vistazo al artículo Developing for Software Protection and Licensing; explica cómo elegir una solución, por qué debe ofuscar su aplicación y da una serie de consejos para estructurar su código para que sea más difícil de descifrar.

Lo que hay que recordar es que una vez que la aplicación se ejecuta en otra máquina, no hay una forma 100% garantizada de evitar la ejecución. Lo que puede hacer, si tiene cuidado, es subir el listón lo suficientemente alto como para que sea más fácil comprar su software que crackearlo.

Descargo de responsabilidad obligatorio & plug: la compañía que cofundé produce el OffByZero Cobalt software licensing solution for .NET, que admite VB.NET de forma nativa.

+0

Se ve bien. Pregunta irritante obligatoria: ¿Puedo obtener una copia gratuita a cambio de una copia de todo el software pago que he hecho? (Bromeando en su mayoría) – Cyclone

Cuestiones relacionadas