Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Java (http://www.forosdelweb.com/f45/)
-   -   crear Aplicacion con licencia (http://www.forosdelweb.com/f45/crear-aplicacion-con-licencia-547403/)

pyanqn 11/01/2008 12:15

crear Aplicacion con licencia
 
Hola.

Mi consulta es para que me guien hacia la forma de dar seguriad a mi apliacion por medio de un archivo de licencia.

Esto es. Supongamos que ya desarrolle una aplicacion, y ahora quiero exponerla a posibles compradores del producto. Para ello, distribuyo mi aplicacion java swing con java web start, pero desearia que el cliente prube la aplicacion pero por un periodo de tiempo dado, para ello tambien desearia que el usuario solicite una licencia en mi sitio web, previa suscripción. La licencia otorgada le daria un periodo de prueba de 30 dias o 30 usos.

Como podria hacer esto.


Gracias.

pyanqn 15/01/2008 04:57

Re: crear Aplicacion con licencia
 
Creo que mi mensaje anterior no fue muy claro...
Aclaro:

Lo que quiero hacer es una version de mi aplicacion, pero con caracteristicas trial. es decir que luego de pasado un tiempo, ésta caduque.

Por otro lado estaria interesante hacer que el cliente solicite un archivo de licencia en mi sitio para hacr funcionar la aplicacion como trial.

Cualquier sugerencia para cualquiera de estas dos cosas, o algun tema relacionado estaria bien.

Saludos.

pyanqn 17/01/2008 04:57

Re: crear Aplicacion con licencia
 
Bueno si a alguien le interesa, encontre alguna información que puede ser util, en principio todo se basa en el concepto de llave publica y privada. RSA.

pyanqn 28/01/2008 09:41

Re: crear Aplicacion con licencia
 
Bien, para cerrar este hilo, y para quien interese, les contare como soluciones e implemente esta cuestion.

Para comenzar. utilice el algoritmo RSA, para generar un par de claves, publica y privada. Genere tambien, un archivo xml eml en el cual, estableci las opciones que queria para mi aplicacion demo, estas fueron limitar la cantidad de creacion de un tipo de objeto, esto para varios tipos de objetos y con ditintos limites.

Luego, aplique RSA sobre el archivo anterior, y guarde mi nuevo archivo, que llame licencia.
A mi aplicacion, le agregue el archivo de texto de licencia encriptado, y la clave publica, para poder abrir el archivo. Ahora mi aplicacion puede desencriptar todo lo que solamente yo le pase!

DE esta forma, cuando la aplicacion inicia, desencripta el archivo y recupera la informacion que yo le suministre.
Por otro lado utilizo la API Preferences, para ir almacenado los usos del sistema por parte del usuario de las caracteristicas que yo deseo limitar. De esta forma, guarda en el sistema los contadores, y los chequea contra mi archivo de licencia, al cual lo almaceno temporalmente en una clase singleton de mi aplicacion, como una tabla hash. y segun el resultado de la comparacion, dado que mis contadores son enteros, dejo o no utilizar la funcionalidad que deseaba restringir.

Resumiendo. Todo se puede hacer utilizando un algoritmo de clave publica y privada, y la Api Properties, para almacenar en el sistema en el cual residira nuestra aplicacion.

Saludos

alucard2008 01/04/2008 12:39

Re: crear Aplicacion con licencia
 
hola amigo te haz vuelto un experto un favorzote necesito de tu ayuda estoy tratando de hacer algo similar a lo que tu hiciste tengo un programa en java que lo quiciera restringir o caducarlo como tu despues de tantos dias deje de funcionar o una funcion que se implemente en java para que despues de tantos dias ya no deje ocupar el programa pero todo esto sin que el usuario se de cuenta como si fuera un error algo asi como un trial no se si me entiendas porfavor si me pudieras ayudar te lo agradeceria muchisimo

TheRich 25/04/2009 07:50

Respuesta: Re: crear Aplicacion con licencia
 
hola pyanqn lei tu comentario de crear Aplicacion con licencia y me intereso saves me gustaria que me pordrias brindar ayuda mas detallada ya que eso solo me da una idea lo idea es que me dieras un pequeño manualillo si no es mucha molestia ok o mas edtallado suerte brother...

TheRich 25/04/2009 07:52

Respuesta: Re: crear Aplicacion con licencia
 
Cita:

Iniciado por TheRich (Mensaje 2884144)
hola pyanqn lei tu comentario de crear Aplicacion con licencia y me intereso saves me gustaria que me pordrias brindar ayuda mas detallada ya que eso solo me da una idea lo idea es que me dieras un pequeño manualillo si no es mucha molestia ok o mas edtallado suerte brother...

nota:
en visual net me imagino que es

javierooo 14/06/2011 16:06

Respuesta: Re: crear Aplicacion con licencia
 
Cita:

Iniciado por pyanqn (Mensaje 2265344)
Bien, para cerrar este hilo, y para quien interese, les contare como soluciones e implemente esta cuestion.

Para comenzar. utilice el algoritmo RSA, para generar un par de claves, publica y privada. Genere tambien, un archivo xml eml en el cual, estableci las opciones que queria para mi aplicacion demo, estas fueron limitar la cantidad de creacion de un tipo de objeto, esto para varios tipos de objetos y con ditintos limites.

Luego, aplique RSA sobre el archivo anterior, y guarde mi nuevo archivo, que llame licencia.
A mi aplicacion, le agregue el archivo de texto de licencia encriptado, y la clave publica, para poder abrir el archivo. Ahora mi aplicacion puede desencriptar todo lo que solamente yo le pase!

DE esta forma, cuando la aplicacion inicia, desencripta el archivo y recupera la informacion que yo le suministre.
Por otro lado utilizo la API Preferences, para ir almacenado los usos del sistema por parte del usuario de las caracteristicas que yo deseo limitar. De esta forma, guarda en el sistema los contadores, y los chequea contra mi archivo de licencia, al cual lo almaceno temporalmente en una clase singleton de mi aplicacion, como una tabla hash. y segun el resultado de la comparacion, dado que mis contadores son enteros, dejo o no utilizar la funcionalidad que deseaba restringir.

Resumiendo. Todo se puede hacer utilizando un algoritmo de clave publica y privada, y la Api Properties, para almacenar en el sistema en el cual residira nuestra aplicacion.

Saludos

Hola se ve que eres un experto no se si podrias poner algun ejemplo..seria de muchisima ayuda para muchos..

harkonen 15/06/2011 02:20

Respuesta: crear Aplicacion con licencia
 
Intenta hacer el sistema lo más simple posible y que recargue poco el rendimiento de la aplicación, si te quieren fusilar ese sistema de licencias, te lo harán en menos de 5 minutos.

Si te vas a meter con temas de licencias, deberías usar técnicas de ofuscación del código por si te lo descompilan que sea mas complejo de interpretar, cheksums que compruebe que el tamaño del jar de tu aplicación no cambia, y podrías aplicar muchas técnicas adicionales que podrían complicar almenos un poco mas la existencia.

Existe un libro muy bueno llamado "Covert Java - Techniques For Decompiling, Patching, And Reverse Engineering" en el que se detalla las técnicas para fusilar código java, asi como contramedidas que se pueden implementar para complicarlo, lo recomiendo si estas interesado en meter seguridad a tus aplicaciones y distribuirlas comercialmente.

Saludos

pyanqn 21/06/2011 11:16

Respuesta: crear Aplicacion con licencia
 
hace tiempo que escribí este post, pero utilizando claves publicas y privadas el sistema es un 99,99% seguro, podrán desencriptarlo pero es mas facil inhabilitar las secciones de validación de las características de seguridad desde el código decompilado, de todas formas esto es inevitable.

Como opción de seguridad podrás pasar algún ofuscador como se comenta mas arriba o inclusive utilizar alguna herramienta que te genera archivos exe para dificultar mas la operación de ingeniería inversa.

De todas formas si lo quieren vulnerar al soft, lo harán, por lo que solo me limito a lo mínimo que quiero hacer para dar una potencial solución a un cliente y que la pueda evaluar.

Saludos

asaelj 22/06/2011 08:19

Respuesta: crear Aplicacion con licencia
 
hola pyanqn, me gusto eso de las licencias para aplicaciones java, de verdad, ¿no podrias poner un manual mas explicado de como hacerlo, la verdad es que si seria muy util poder hacerlo tambien, gracias y saludos

Xerelo 22/06/2011 12:19

Respuesta: crear Aplicacion con licencia
 
Aunque como tema para seguir aprendiendo cosas está bien, personalmente estoy en contra del exceso de celo en el tema de licencias.

Es cierto que a todos nos fastidia la idea de que la gente se aproveche gratis de nuestro trabajo si pretendemos vivir de él. Pero también es cierto que java es libre, y que muchas de las librerías y frameworks que usamos están hechos por gente que lo cede gratuitamente.

Así que romperse la cabeza para evitar que nadie use nuestro software sin pagar, no me parece prioritario ni muy respetable, sobre todo teniendo en cuenta que siempre habrá alguien que lo puede romper y que algunas librerías que usamos tienen licencias GPL.

http://www.gnu.org/licenses/gpl-faq.html#IfLibraryIsGPL

Cita:

If a library is released under the GPL (not the LGPL), does that mean that any program which uses it has to be under the GPL or a GPL-compatible license?

Yes, because the program as it is actually run includes the library.
Ojo, no estoy diciendo que todo deba ser gratis, solo que me parece un poco hipócrita no respetar software ajeno (yo el primero) y exigir/obsesionarse con que respeten el nuestro.

pyanqn 24/06/2011 08:01

Respuesta: crear Aplicacion con licencia
 
asaelj, primero sera difícil que encuentres un tutorial o libro que te diga como hacer un trial, lo que aquí se te puede dar son tips, buenas practicas o consejos.

yo te diría investigues sobre:

+ cifrado, encriptado con clave publica y privada.
+ ofuscación

Investigar sobre técnicas para ocultar información, ect.

Luego define la estrategia que vas a seguir para implementar tu trial y finalmente consigue ayuda sobre algo bien definido, supongo que nadie se negará aquí a colaborar.

Saludos


La zona horaria es GMT -6. Ahora son las 09:10.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.