Pregunta

Las aplicaciones suelen tener las claves de registro. Se podría decirse que se puede colocar en un archivo o en el registro. A veces, una aplicación se desactiva la entrada de otra tecla, o el paso de una fecha, etc. ¿Dónde se puede de manera segura almacenar dicha información acerca de una aplicación puede desactivar? Un archivo no es la respuesta; una copia de seguridad puede ser restaurado a derrotar a este. El registro es una respuesta débil, sólo porque la mayoría de la gente no sabe que está ahí, y no piensan para restaurarlo, y si lo hacen restauran todo el asunto que por lo general tiene otros efectos secundarios desalentadores.

Me parece que el almacenamiento de la información es la desactivación irremediablemente insegura, como copias antiguas siempre pueden ser restaurados. A lo sumo se puede ocultar estos datos por la ofuscación bajo crípticamente archivos o claves de registro con nombre.

¿Hay un truco estándar no sé, o una norma esquema compatible con Windows, que ayuda con este problema?

Ronda 2: He visto una serie de respuestas. Ninguno de ellos dice específicamente "no se puede hacer esto", pero otras implican que llamadas a casa es la única buena opción (por "desactivación").

Vamos a suponer llamando a casa y mochilas no son la respuesta, y uno tiene que dejar algo en la máquina. Qué hacer esquemas típicos de concesión de licencias en realidad pueden hacer en este caso?

¿Fue útil?

Solución

Crear y firmar un archivo de licencia en el servidor. Si utiliza la criptografía de clave pública, el archivo de licencia no puede ser falsificada fácilmente. La aplicación puede ser, por supuesto, agrietado para no necesitar la licencia, pero eso es una cosa diferente.

Otros consejos

A diferencia del iPhone y otros ambientes cerrados en una plataforma abierta como Windows / Linux siempre se corre un riesgo muy alto de que la protección es fácilmente circumventable (protección serie local) o va a ser roto mediante la inversión y parchear el código. Prácticamente todos los modernos solo jugador tiene este problema. Además, es muy difícil encontrar una solución que no moleste al usuario demasiado. Todos recordamos el desastre Sony-CD-Rootkit y en la industria del juego de su siempre la más reciente del DVD-protección que no funciona en todas las unidades de la forma en que su supone que debe. Pero ¿qué se puede hacer? Usted puede probar la serie habitual, llame a casa opción y prohibir ciertas publicaciones periódicas en las nuevas actualizaciones (Adobe, FlashFXP, Windows). Si usted tiene un nivel muy bajo consumo, esto probablemente es suficiente para ti. Si - por cualquier razón - que no es una opción, ¿qué pasa con un Dongle USB que se necesita para utilizar el software. Oído hablar de bastantes programas CAD que utilizan este. Una última cosa que usted puede mirar en, ¿qué pasa con marcas de agua de su aplicación? Si aparece en ciertas redes P2P se le puede que sea capaz de ver donde está la fuga. Básicamente nada le dará una garantía del 100%, pero hay opciones para que sea más difícil para el usuario medio ... Por favor, tenga en cuenta que la mayor parte de su dinero se debe gastar en la creación de un gran producto no en la compra de protección mayoría inútiles!

He aquí una breve pero bastante buena visión general de las diferentes opciones.

http://www.developer-resource.com/how -to-proteger-software.htm

Ya, se podría cifrar las cosas, eso es lo que hacen! .Comprobar la red para varias licencias schemes.Even Microsoft tiene uno ... Microsoft Software licencias y protección

Puede utilizar la API de cifrado de Microsoft para desarrollar que se oculte code.Plus asambleas o la activación del usuario dlls.Force.

Todos los esquemas de protección son vulnerables a algún tipo de ataque. Cifrado de la información no ayuda a prevenir los ataques debido a que la información se almacena de forma ofuscado, pero incluso esto no es irrompible.

Otra opción posible es la de almacenar la información real estado de activación remota y dejar una referencia a esta información en la máquina, posiblemente cifrada. Hay muchas maneras de hacer esto, pero uno que viene a la mente es la de almacenar un GUID de algún tipo que usted podría entonces buscar en su base de datos

Una desventaja de esto es el requisito de una conexión a Internet, no sé si eso es prohibitivo o no, pero la idea general es eliminar el estado de activación de una máquina que no controlas y lo puso en una que lo hace

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top