2009-03-31 13 views
7

¿Cuál es el mejor enfoque para la licencia de Custom .NET Components o aplicaciones para vender?¿Cuál es el mejor enfoque para proteger componentes personalizados de .NET con licencia?

  • Cerrado Fuente modo
  • 2 licencias:
    • licencia Trial características limitadas (gratis)
    • todas las funciones
+0

¿Como licens_er_ o licens_ee_? –

+0

Usted está vendiendo los componentes, ¿lo tomo? ¿Te importa si la prueba se extiende por todas partes? ¿Desea evitar algo más de lo que ya previene la ley de derechos de autor? ¿Algo específico o extraño sobre cómo se usarán? –

Respuesta

0

Hay una gran cantidad de desaparecidos detalle aquí.

¿Tiene licencia de alguien o intenta crear una licencia?

Código abierto, código cerrado, venta? Si vende, ¿proporciona la fuente?

¿Cuál es el uso final del componente/aplicación? ¿Lo está hospedando (como un sitio multi-tenant) o es más COTS?

¿Qué están haciendo sus competidores con su modelo de ventas? ¿Parece estar trabajando para ellos? p.ej. suena razonable? < - emular eso.

Al responder estas preguntas, encontrará la licencia que se ajuste a sus necesidades.

0

GPL. O declararlo dominio público. O un EULA de 24 páginas que restringe la capacidad de los usuarios para afeitarse mientras usan el componente. O algo así.

¿Por qué no nos dices qué estás tratando de hacer, cuáles son los usos previstos y qué te gustaría que suceda?

6

En cuanto a un escenario de "Fuente cerrada", considere usar ofuscación. He estado usando SmartAssembly y estoy muy satisfecho con los resultados.

En cuanto a los modos de licencia. Estás hablando de componentes .net para que el público objetivo sea desarrollador. No creo que se ocupen de pruebas limitadas gratuitas. Si va a vender algo valioso a la comunidad de desarrolladores, prepárese para ver una versión "Completamente presentada" en Rapidshare o torrents.

Recomendaría concentrarme en el soporte y las actualizaciones/mejoras frecuentes en lugar de la protección. En la mayoría de los casos, el "negocio" compra soporte en lugar de binarios.

Si necesita algunos títulos de herramientas ¿por qué no busca en Google? La consulta ".net licensing" le dará tonos de enlaces.

Espero que ayude.

0

Cuando realiza pruebas de su software que se pueden actualizar a versiones completas (en otras palabras, ensamblajes que contienen todas las características), no hay mucho que pueda hacer para evitar que alguien lo piratee al final. (con .net es incluso más fácil que con ensamblajes nativos).

Firma & La ofuscación es la única manera de evitar que se le realice ingeniería inversa en una forma muy legible, pero el uso de algo como un reflector básicamente le dará la información completa.

Una de las maneras más simples de mantener la apariencia de las licencias es:

  • uso público/cifrado de clave privada para salvar a la concesión de licencias (fecha de vencimiento, características habilitadas, etc) la información en un archivo
  • incluya la clave pública en el ensamblado
  • decodifique la información cifrada al inicio de su aplicación para verificar si alguien tiene licencia para usar su aplicación.
  • generar licencias cuando sea necesario con su clave privada y distribuir esos archivos (o teclas si los datos son lo suficientemente pequeños)

Como alternativa puede incluir la información de licencia en texto claro con un código hash (esto es la clave de licencia, el algoritmo también debe ser compatible con la clave pública/privada) en texto claro con la aplicación, y solo verifica si la información de licencia coincide con el código de hash.

Cuestiones relacionadas