Foros del Web » Programación para mayores de 30 ;) » .NET »

Seguridad contra PIRATAS??

Estas en el tema de Seguridad contra PIRATAS?? en el foro de .NET en Foros del Web. Saludos, Acabo de terminar un proyecto en Visual Studio 2010 en lenguaje Visual Basic y hay algunas Empresas interesadas en comprarlo. Para evitar copias hice ...
  #1 (permalink)  
Antiguo 03/03/2011, 14:39
Avatar de TECKNOCK  
Fecha de Ingreso: agosto-2010
Mensajes: 80
Antigüedad: 14 años, 3 meses
Puntos: 1
Exclamación Seguridad contra PIRATAS??

Saludos,

Acabo de terminar un proyecto en Visual Studio 2010 en lenguaje Visual Basic y hay algunas Empresas interesadas en comprarlo.

Para evitar copias hice algo muy sencillo:

1º He creado un archivo en una carpeta oculta del disco duro.

2º Al iniciar, lo primero que hace mi programa es buscar si ese archivo existe en esa PC

- Si el archivo existe arranca sin problemas

- Si el archivo no existe aparece un aviso contra la piratería y el programa se cierra.

De esta manera evito que las personas puedan hacer copias de mi programa en otras máquinas. Para mayor seguridad el archivo no se crea con el instalador, lo creo manualmente en la PC del cliente y además no les entrego el instalador a los clientes, es decir, ellos me pagan y yo en persona voy e instalo el programam en una PC y si quieren más instalaciones tienen que pagar por cada PC.

Mi pregunta es:

1º ¿Que les parece mi metodo de seguridad? ¿Es suficiente?

2º ¿Me pueden sugerir otros métodos contra Piratería?

GRACIAS !!!
  #2 (permalink)  
Antiguo 04/03/2011, 04:29
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 13 años, 10 meses
Puntos: 89
Respuesta: Seguridad contra PIRATAS??

Tu metodo no me parece eficaz porque:

1) Si descubren el metodo, con copiar ese archivo bastaría
2) Tienes que ir tu a instalarlo, si te lo compra 1.000.000 de personas...¿que harás?
3) Si un cliente te compra el programa y tiene que formatear el ordenador donde lo quiere, tienes que volver a ir.
4) Si un cliente del otro lado del mundo está interesado, te tienes que recorrer medio mundo para instalarlo.

Para mi el mejor método es el que usan los juegos on-line. Cuando se conecta, comprueba en una base de datos tuya si esa licencia está en uso en otro sitio y si no es así te deja iniciar y si es así te dice que ya esta en uso y no te deja iniciar.
  #3 (permalink)  
Antiguo 04/03/2011, 08:48
 
Fecha de Ingreso: julio-2009
Mensajes: 20
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Seguridad contra PIRATAS??

Crea licencias y que las compruebe mediante un servidor si ya esta siendo utilizada.

Crea una aplicacion servidor en el cual consulte tu aplicacion si la licencia esta en uso.
si es asi, simplemente no se ejecuta el programa o se desintala.

La desventaja de esta opcion es que el cliente debe estar siempre conectado a internet

La aplicacion servidor la podrias trabajar con socket. No es muy dificil ni algo demoroso.

Espero que te ayude un poco Saludos
  #4 (permalink)  
Antiguo 04/03/2011, 08:58
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 14 años, 5 meses
Puntos: 267
Respuesta: Seguridad contra PIRATAS??

Aprovechando el tema... con respecto a lo que mencionas peluza_string tienes por alli alguna direccion donde vea lo que dices?. Saludos!
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #5 (permalink)  
Antiguo 04/03/2011, 09:20
 
Fecha de Ingreso: julio-2009
Mensajes: 20
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Seguridad contra PIRATAS??

Información específica del tema no tengo
Si te puedo dar un link para que veas el trabajo con socket en .net

Mas que nada es la lógica de crear una aplicación servidor en la cual consulte a una base de datos de licencias, y si esta siendo usada esa licencia. Si es así que el servidor envíe una señal al programa al cual se le quiere agregar la seguridad y al recibir la señal ejecutar el evento, ya sea cerrar la aplicación o continuar con su ejecución.

http://www.elguille.info/colabora/puntoNET/PabloTilli_SocketsVBNET.htm

También puedes averiguar un poco más en relación a las aplicaciones cliente servidor.

Saludos y espero que les sirva la info.
  #6 (permalink)  
Antiguo 04/03/2011, 09:25
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 14 años, 5 meses
Puntos: 267
Respuesta: Seguridad contra PIRATAS??

Se agradece . Saludos!
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #7 (permalink)  
Antiguo 04/03/2011, 11:26
Avatar de Porlachucha  
Fecha de Ingreso: noviembre-2008
Ubicación: Santiago
Mensajes: 172
Antigüedad: 16 años, 1 mes
Puntos: 5
Respuesta: Seguridad contra PIRATAS??

me gustaria agregar un par de comentarios.

1.- como dice la cancion "Hay que comer..". La orientacion comercial que le quieres dar a tu proyecto, a mi juicio no debiera ser restrictiva. Esta bien eso de evitar que te roben el esfuerzo los malditos piratas , pero en vez de bloquear el funcionamiento del programa, deberias tomar otras medidas, como por ejemplo promocionarlo.. una forma es abriendo popus (si es que es una app web) o bien en las impresiones, poner leyendas alusivas a comprar el producto.. otra forma tambien efectiva, es restringir la cantidad de informacion que manejara la version no pagada, por ejemplo.. 100 clientes.. 1000 impresiones.. etc, las cuales quedan liberadas al comprar la licencia. y obvio, como ya dijeron varios aca, implementar un sistema de comprobacion a traves de internet.

2.- no se si sea tan buena idea de implementar a traves de sockets... hay que recordar que muchos administradores de redes en las empresas bloquean casi todos los puertos disponibles.. creo que seria mas conveniente usar webservices. esos van por el puerto de navegacion de los browser.

saludos
plch
__________________
Nada mas patetico que "detestar" a Intel o Microsoft o Windows o Apple ... apuesto que eres el tipico teton espinilluo y pajero que usa Linux para sentirse capo ...
  #8 (permalink)  
Antiguo 07/03/2011, 09:26
Avatar de TECKNOCK  
Fecha de Ingreso: agosto-2010
Mensajes: 80
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Seguridad contra PIRATAS??

Gracias a todos por sus respuestas, pero tampoco es un proyecto que le vaya a interesar a empresas fuera de mi ciudad, Es decir con éxito llegaré a vender a unas 100 empresas.

Como dije en la pregunta, no pienso darles el instaldor, yo voy a ir en persona a instalar el programa y por las características del mismo las empresas no van a necesitar mas de 1 PC.

Son empresas pequeñas y no creo que ninguna tenga conexion a Internet, por eso necesito aplicar algun metodo de sguridad LOCAL.

Pinso que mi método de crear un archivo oculto es bueno, el unico pelgro estaria en que alguien logre abrir mi archivo *.EXE y vea en el codigo fuente la ruta al archivo. Personalmente he intentado hacerlo pero no logré encontrar un programa o metodo que permita ver el codigo fuente de un EXE.

Mi pregunta es:

¿Conocen alguna forma de abrir un *.EXE que ponga en peligro mi proyecto?
  #9 (permalink)  
Antiguo 07/03/2011, 11:02
Avatar de Porlachucha  
Fecha de Ingreso: noviembre-2008
Ubicación: Santiago
Mensajes: 172
Antigüedad: 16 años, 1 mes
Puntos: 5
Respuesta: Seguridad contra PIRATAS??

wow.. me quede pegado con el boton send... sorry .

oye, metodos para descubrir tu truco si por supuesto que existen... un tipo que quiera ""hackear"" tu idea, podria perfectamente desensamblar tu codigo... no seria muy dificil averiguar tu file trick... incluso, si en vez de un archivo usas informacion en el regedit en la maquina.. eso ya es parte del pasado.
creo que vale la pena adaptar tu software a la "era internet".. tienes al menos una ventaja en la cual nadie te podra robar tu trabajo..

saludos, y disculpa nuevamente por la repeticion de los mensajes mas arriba..

plch
__________________
Nada mas patetico que "detestar" a Intel o Microsoft o Windows o Apple ... apuesto que eres el tipico teton espinilluo y pajero que usa Linux para sentirse capo ...
  #10 (permalink)  
Antiguo 07/03/2011, 11:13
Avatar de TECKNOCK  
Fecha de Ingreso: agosto-2010
Mensajes: 80
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Seguridad contra PIRATAS??

Gracias por tu interes, pero realmente te digo que mis clientes no tienen internet ni piensan pagar por el servicio ya que en su rubro no es necesario.
  #11 (permalink)  
Antiguo 10/03/2011, 14:23
Avatar de TECKNOCK  
Fecha de Ingreso: agosto-2010
Mensajes: 80
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Seguridad contra PIRATAS??

Bueno, por lo visto es dificil que un pirata pueda encontrar el archivo.

Se que no hay un metodo de seguridad 100% infalible... y considero que el mio es un buen metodo.


GRACIAS !!!
  #12 (permalink)  
Antiguo 12/03/2011, 09:46
Avatar de TECKNOCK  
Fecha de Ingreso: agosto-2010
Mensajes: 80
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Seguridad contra PIRATAS??

A quien le sirva, busquen información acerca de OFUSCAR codigo fuente

Un excelente programa es "EazFuscator .Net"

Sirve para que programas como REFLECTOR no puedan decifrar el Codigo fuente a partir de nuestro "Archivo.EXE"
  #13 (permalink)  
Antiguo 12/03/2011, 13:32
 
Fecha de Ingreso: septiembre-2009
Ubicación: Cuenca
Mensajes: 57
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: Seguridad contra PIRATAS??

No es seguro tu método contra la piratería. Sería muy sencillo con un decompilador o un sistema de ingeniería inversa ver qué archivo busca tu programa. Además, como alternativa, existen librerías en el propio .Net que permiten ver el estado de ficheros y disparan rutinas apenas registran algún cambio, por ejemplo, algún archivo extra que haya sido insertado luego de instalar tu programa.

Yo mismo he visto que, luego de 'proteger' mis sistemas, puedo desifrar el código fuente. Es una inmensa tristeza frente a tanta competencia.

LASTIMOSAMENTE .Net no ofrece ninguna óptima protección contra un desensamblado debido que únicamente, luego de escribir el código fuente, se genera un lenguaje intermedio que la plataforma .Net lo interpreta en tiempo de ejecución (MSIL) y RECIÉN lo traduce a lenguaje nativo, aún así parezca que solo hay que llevar el ejecutable con x archivos extras. Los ofuscadores pueden ofrecer una ayuda parcial, pero no total. Estoy en una búsqueda exhaustiva de algún compilador a lenguaje nativo (lenguaje máquina) para mis programas en C# .Net
¿Crées que logro encontrar uno?

Microsoft reconoce 2 maneras de compilar del lenguaje intermedio (MSIL) a nativo, por medio de su compilador JIT (Just In Time) de .Net Framework que a mi gusto resulta ya hasta un absurdo porque si quiero instalar un sistema hecho en .Net necesito el Framework y lo peor es que trabajo con el 3.5 que requiere conexión a internet y pesa más de 200MB. El segundo es el ngen.exe que igualmente depende del framework. Ambos a mi parecer son basura diferente, pero iguales al fin.

Conclusión: No hay forma de proteger el código de .Net tan exitosamente como lo fuera con un compilador a código fuente. Pero lo último que leí fue sobre un software ULTRA CARO llamado Salamander... averiguen y coméntenme por favor. Además que el Salamander ofrede un decompilador ultra que fácil sencillo conseguir gratis por internet, por eso digo que es sencillo averiguar qué archivo usas para proteger tu sistema.
  #14 (permalink)  
Antiguo 13/03/2011, 16:33
Avatar de TECKNOCK  
Fecha de Ingreso: agosto-2010
Mensajes: 80
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Seguridad contra PIRATAS??

Estimado pancho2413;

Te agradezco por la inofrmación provista.

Creo que todos estamos de acuerdo en que no existe un metodo 100% seguro contra la piratería, es decir que siempre habrá alguien con el conocimiento y las herramientas suficientes para romper nuestras barreras.

Sin embargo, es importante estudiar al tipo de gente que va a necesitar nuestro SOFTWARE, por ejemplo: Si hago un sistema para "Restaurantes" no me tengo que preocupar que las "Estaciones de Gas" me vayan a piratear el programa, simplemente porque no les importa.

Entonces, en lo que respecta a mi proyecto:

- Mis clientes solo son algunas empresas en mi ciudad, lo que me asegura que en otras partes del mundo mi programa no va a ser de interés para nadie.

- Estas empresas no utilizan Internet "en lo absoluto", la mayoría no cuentan con equipos de computación (si me compran el programa también les tengo que vender una computadora), lo que hace muy dificil (no imposible) que alguno de estos clientes tengan experiencia en Crack, Hack o siquiera nociones de programación básica.

- Por último, tengo un respaldo legal con los derechos de autor. Si me entero que alguna empresa está utilizando mi Software sin autorización puedo demandarlos por una fuerte suma de dinero. (tengo algunas formas de saber si una empresa me ha pirateado)

Por lo tanto, si requeiro un método de seguridad es más que nada para impresionar a los posibles piratas los cuales espero se "asusten" cuando vean que su copia ilegal no les funciona, y les muestra un mensaje con temas legales.

===============

Cita:
... .Net Framework que a mi gusto resulta ya hasta un absurdo porque si quiero instalar un sistema hecho en .Net necesito el Framework y lo peor es que trabajo con el 3.5 que requiere conexión a internet y pesa más de 200MB
Respecto a este tema te comento que yo estoy trabajando con el .Net Framework 4 y me he descargado el instalador OFFLINE (se que también hay instaladores OFFLINE de las demás versiones). En el Instalador de mi programa he puesto el .Net Framework 4 como prerequisito y le he añadido el instalador OFFLINE, entonces cuando voy a instalar en la PC del cliente, mi instalador revisa que exista el .Net Framework 4 y si no existe pues lo instala sin necesidad de Internet y posteriormente se realiza la instalación correcta de mi programa.

Última edición por TECKNOCK; 14/03/2011 a las 09:48
  #15 (permalink)  
Antiguo 24/06/2011, 16:04
Avatar de jhonwilliams  
Fecha de Ingreso: marzo-2004
Ubicación: Copacabana - Colombia
Mensajes: 1.484
Antigüedad: 20 años, 9 meses
Puntos: 76
Respuesta: Seguridad contra PIRATAS??

Cita:
Iniciado por TECKNOCK Ver Mensaje
(tengo algunas formas de saber si una empresa me ha pirateado)
Me interesaría saber como haces para darte cuenta cuando te piratean la aplicación, porque después de leer todo el post me quedo muy claro que tus clientes no están conectados a Internet, por lo tanto la aplicación no te avisara por web cuando fue ejecutada desde un lugar no licenciado.

Saludos
__________________
Si mi respuesta te ha ayudado, agradezco que me regales unos puntos de Karma XD.

"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)
  #16 (permalink)  
Antiguo 24/06/2011, 20:58
 
Fecha de Ingreso: mayo-2011
Ubicación: sinaloa
Mensajes: 150
Antigüedad: 13 años, 7 meses
Puntos: 4
Pregunta Respuesta: Seguridad contra PIRATAS??

Cita:
Iniciado por jhonwilliams Ver Mensaje
Me interesaría saber como haces para darte cuenta cuando te piratean la aplicación, porque después de leer todo el post me quedo muy claro que tus clientes no están conectados a Internet, por lo tanto la aplicación no te avisara por web cuando fue ejecutada desde un lugar no licenciado.

Saludos
jeje poes yo creo que se lo envia telepaticamente.
me intereso este tema. todo hiba bien pero con informacion que no concuerda ya me perdi. para que quieres evitar que te pirateen un software que va estar en micro-empresas que lo unico que quieren es sacar el total de alguna venta. xD no se dedican mucho a los reportes ni nada por el estilo, que tipo de aplicacion será?

y sigo con la duda como sabes cuando te piratean tu software sin internet ????
  #17 (permalink)  
Antiguo 20/09/2011, 09:22
 
Fecha de Ingreso: marzo-2007
Mensajes: 16
Antigüedad: 17 años, 9 meses
Puntos: 0
Respuesta: Seguridad contra PIRATAS??

Es un tema viejo, pero sin embargo muy interesante y creo que debemos de abundar mas en el tema para las personas que llegan a este topico "Seguridad contra Piratas" y desean conocer tecnicas fiables para asegurar sus software.

Lo primero que debo decir es que validar las licencias a traves de internet es una de las mejores soluciones si el 100% de nuestros clientes utilizaran internet, cosa que no creo que se ajuste a la realidad de la mayoria de los clientes, asi que deberiamos descartarla, ya que no podemos obligar a los clientes que no tienen internet, que paguen un servicio mensual solo para validar nuestro software, es injusto, ademas hay que tomar en consideracion las averias y fluctuaciones que puede sufrir un servicio de internet, aunque los clientes lo tengan, no podran validar su licencia y por tal motivo tampoco podran utilizar el software en un caso de averia prolongada del servicio.

Aunque las condiciones particulares de "tecknock" de sus clientes le hace sentir confianza en implementar su metodo de seguridad de copiar un archivo oculto en una carpeta, realmente es muy pobre, con un decompilador de .Net se puede obtener el codigo completo de su aplicacion y legible si no esta osfuscado, personalmente puedo decir que he decompilado aplicaciones en .Net y he obtenido el 100% del codigo fuente sin ninguna dificuldad, es mucho mas dificil decompilar (o practicamente imposible) una aplicacion win32 nativa generada por otros lenguajes como Delphi.

Sin decompilar la aplicacion seria muy facil detectar el archivo oculto, entre muchas cosas que se podria hacer para violar con exito tu software seria que una persona con conocimientos medios o basicos de informatica podria localizarlo muy facilmente, solo tendria que buscar todos los archivos que tengan la misma fecha de modificacion o creacion de los archivos de tu aplicacion en el disco completo. Quizas te preguntes "por que tendria que buscar un archivo si ni si quiera sabe que utilizo un archivo oculto?" pues casi todas las aplicaciones de hoy en dia siempre copian archivos en otras carpetas como en el system32, o el program files, la logica elemental de que un programa no corra en otro computador es porque le faltan algunos archivos necesarios, seria el primer paso a considerar para comenzar a buscar posibilidades de exito en poder correr el software en otro computador.

En fin, creo que en Software mas "ambiociosos", en donde queremos tener una amplia cartera de clientes y distribuidos en diferentes puntos geograficos, deberiamos utilizar algo mas trabajado y profesional.

Propongo un metodo:

Seriales Compuestos: consiste en generar las licencias por medios de seriales alfanumericos los cuales internamente esten compuestos por informaciones unica de nuestro cliente, obviamente esta informacion debe estar fuertemente encriptada y solo nuestro software puede validarla con alguna llave de seguridad privada por cliente tambien encriptada.

Una vez validado el serial por nuestro sistema, este contendra la informacion que necesita el software para activar o desactivar algunas funciones internas, nombre del cliente a visualizarse dentro de la aplicacion que puede utilizarse en la pantalla de bienvenida, en los titulos de los informes, etc. Aunque puedan copiar el programa y tengan un serial, pues este le sera inservible en otro negocio.

La generacion de los seriales y de las llaves privadas deben de provenir un software totalmente independiente al software que deseamos comercializar, exclusivo de nuestro uso, si llegaran a decompilar nuestro sistema no obtendrian el codigo fuente de las generaciones de estos.

La forma mas sencilla de violar la seguridad de nuestro sistema para tener una copia servible en otros negocios es robar a nosotros mismos el software de la generacion de los seriales y llaves privadas.

Nada es imposible de violar, pero algunos metodos son mas eficasez que otros, encontrar un archivo oculto copiado en el disco, necesitaria una personas sin muchos conocimientos informaticos y 10 minutos, para violar el serial compuesto necesitaria ser un hacker muy experimentado y 10 minutos no le alcanzaria ni si quiera para analizar el problema.
  #18 (permalink)  
Antiguo 01/07/2012, 21:56
 
Fecha de Ingreso: agosto-2009
Mensajes: 2
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Seguridad contra PIRATAS??

Saludos

He estado en una idea para crear un sistema anti-pirateria

Le daré la idea para ver si pueden ayudarme…

Es crear una llave encriptada por ejemplo encriptar la llave “hola-mundo”
Ejemplo de los datos encriptado cada carácter en su código ascii + un carácter especifico adicionado, numero o como quieras encriptado de forma segura.
Ejemplo llave encriptada “retoalograr”
Option Explicit
'//For Action parameter in EncryptString
Const ENCRYPT = 1
Const DECRYPT = 2
Public Function EncryptString( _
UserKey As String, Text As String, Action As Single _
) As String
Dim UserKeyX As String
Dim Temp As Integer
Dim Times As Integer
Dim i As Integer
Dim j As Integer
Dim n As Integer
Dim rtn As String
'//Get UserKey characters
n = Len(UserKey)
ReDim UserKeyASCIIS(1 To n)
For i = 1 To n
UserKeyASCIIS(i) = Asc(Mid$(UserKey, i, 1))
Next
'//Get Text characters
ReDim TextASCIIS(Len(Text)) As Integer
For i = 1 To Len(Text)
TextASCIIS(i) = Asc(Mid$(Text, i, 1))
Next

'//Encryption/Decryption
If Action = ENCRYPT Then
For i = 1 To Len(Text)
j = IIf(j + 1 >= n, 1, j + 1)
Temp = TextASCIIS(i) + UserKeyASCIIS(j)
If Temp > 255 Then
Temp = Temp - 255
End If
rtn = rtn + Chr$(Temp)
Next
ElseIf Action = DECRYPT Then
For i = 1 To Len(Text)
j = IIf(j + 1 >= n, 1, j + 1)
Temp = TextASCIIS(i) - UserKeyASCIIS(j)
If Temp < 0 Then
Temp = Temp + 255
End If
rtn = rtn + Chr$(Temp)
Next
End If

'//Return
EncryptString = rtn
End Function
El asunto esta en que…
La llave este dividida de forma que cada versión de tu software pueda contener un desencryptador para poder comparar, aquí es lo interesante

Que el programa no valide una llave de texto de caracteres igualado sino que busque un carácter especifico y actúe de una forma para desencriptar.

Id llave guardada en el programa “hola-mundo”

Ejemplo simple para abrir las ideas

Función del desencryptador con la llave introducida y creada por el encryptador


'//introducciendo la llave escritada
Dim string Millave = retoalograr

Validator = rtn

‘Para abrir el producto

If Millave = validator then
I = 0
For I = totaldeformulario
Idformulario(0).enable =true
I = i +1
Else
Msgbox(“la llave del producto no es valida”)
Next i

NOTA: El codigo de arriba es copiado de un tutorial

Pero la idea que quiero lograr es que luego de tener un texto desencriptado quiero poder crear un interpretador de caracteres que me interprete la llave inscrita en el código del programa ejemplo “hola-mundo”
E=h %=-
A=o w=m
Q=l e=u
S=a u=n
L=d
A=o
Para asi si se Le aplica ingenieria inversa a mi software se Le pueda hacer dificir conocer La llave interna....

Espero abrir las ideas
  #19 (permalink)  
Antiguo 03/07/2012, 07:13
 
Fecha de Ingreso: marzo-2009
Mensajes: 32
Antigüedad: 15 años, 8 meses
Puntos: 3
Respuesta: Seguridad contra PIRATAS??

Estimados:

Yo programe en VB6 y mi forma de armar un sistema Antipiratería era muy fácil.

1.Leer el Número de serie de los discos rígidos.
2.Leer Número de serie de la bios.
3.Leer la MAC Adress de la placa de red.

4.Hacer una función con todos estos datos para formar un serial.
5.El cliente tenia que enviarme el serial o pasármelo por teléfono y yo le respondía con la clave para que la ingrese.
Una vez que la ingresaba el software mío la decodificaba la comprobaba con el disco,Nº de la bios y la placa de red y guardaba la clave en un archivo mdb con doble encriptación, primero le pasaba una librería con un método de encriptación y luego otra con otro método.
y cada ves que iniciaba el sistema decodificaba los datos y los comprobaba con el hardware para evitar cambios.
si el cliente cambiaba el hardware lo único que tiene que hacer es enviarme el nuevo serial y yo enviarle la nueva clave y listo.

Esto también se puede hacer con un pendrive leyendo el numero de serie del pendrive y que el sistema ya salga validando este numero de serie inalterable.

Espero que ayude en el tema...

Saludos...
Charly Alize
Buenos Aires...
Argentina...
  #20 (permalink)  
Antiguo 03/07/2012, 19:14
 
Fecha de Ingreso: febrero-2011
Mensajes: 99
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: Seguridad contra PIRATAS??

Si es que tú dices que no tienen internet, con un grupo de amigos se hiso lo siguiente:

1. Cuando se instala el programa el instalador coge todos los datos de la máquina y todos los datos de la ubicación del programa más el peso de cada archivo incluyente del programa (para que no se cambien), cuando se finaliza el instalador, en su mismo código programe para que le inyecte todos esos datos al archivo .exe (para ello tienes que tener el número de bits que pesa él .exe y además el número de bits que pesa los datos inyectados, para esa ser la variable del peso del .exe)

2. Cuando el programa se abre por primera vez te pedirá la llave inicial y como dijo charlyalize, puedes cifrar todos esos datos recolectados y formar un serial, y tu tener la llave y dársela.

3. Cada vez que se abra el programa este mismo se auto-cifra, codificando su código de cifrado y su código de des-cifrado, así se evita un seguimiento de código al programa.

4. el auto-cifrado se puede hacer mediante 2 llaves públicas (una que se autogenere con cada ejecución) y 2 privadas, estas llaves lo alteraran cada vez que se abra, la llave publica puede ser autogenerada por el tiempo, el número de procesos, y un número aleatorio que este entre el 100,000 y 1,000,000,000.

5. el programa cada vez que es abierto recolecta todos los datos que recolecto el instalador, los cifra y los compara con los datos almacenados en el programa, si son diferentes tú ya ves si le borras el programa o le borras todo el PC. LOL

En la actualidad es el mejor código que conozco, pues con mis amigos lo probamos y contratamos a un experto en hacking para ver si lo podía romper, pues lo rompió, pero se tardó 292 horas sabiendo cómo funcionaba el sistema, ósea, se demoró más de un mes.

Etiquetas: copias, pirateria, seguridad
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:53.