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.
¿Como licens_er_ o licens_ee_? –
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? –