Red de conocimiento informático - Espacio del host - ¿Se puede descifrar todo el software? ¿Por qué los desarrolladores no impiden que se produzcan versiones descifradas?

¿Se puede descifrar todo el software? ¿Por qué los desarrolladores no impiden que se produzcan versiones descifradas?

En primer lugar, el software es 100% crackable. En el peor de los casos, utilizaré el método exhaustivo y enumeraré todas las posibilidades.

¡En el siglo XX no existía Internet! El software utiliza un CD para escribir código en sectores no copiables y luego le proporciona una contraseña. Al instalar el CD se generará la contraseña correspondiente en base a este código, que es el que te proporciona la empresa de software. El método de descifrado es omitir la contraseña, ¡que es la versión descifrada!

2. ¡A finales del siglo XX empezó a nacer Internet! Generalmente, el software adopta el registro en línea y el uso informático. Por ejemplo, después de instalar Photoshop 8.0, la máquina generará aleatoriamente un número de 25 dígitos. Solo necesita enviarlo al sitio web, y el sitio web generará un nuevo número de 25 dígitos mediante cálculo y se lo enviará. Entonces puedes usarlo. Este proceso de generación fue descifrado posteriormente por alguien que inventó un software de cálculo de descifrado llamado "decodificador".

3. ¡Código de red de software en el siglo XXI! En el siglo XXI, debido al desarrollo de Internet, la mayor parte del software debe estar conectado a Internet en cualquier momento y en cualquier lugar. Entonces solicité una contraseña única a través de mi número de teléfono móvil. ¡Cada vez que inicia el software, necesita identificar su dirección, número de teléfono móvil y otra información! Cuando la contraseña se utiliza en varias máquinas o ubicaciones, automáticamente dejará de ser válida. ¡Nuestra membresía iQiyi es este tipo de contraseña! Dado que se trata de una vinculación de contraseña de uno a varios y está conectada a Internet en cualquier momento, es difícil utilizarla de forma gratuita durante mucho tiempo. ¡No hay forma de hablar de cracking!

En tres épocas, desde la incapacidad de lidiar con el software descifrado hasta la actualidad, el software de red no se puede descifrar. ¡La historia mejora constantemente!

En primer lugar, asegúrese de que todo el software se pueda descifrar, pero el costo de descifrarlo es diferente. Incluso IOS se puede crackear y hacer jailbreak, y mucho menos Windows. Realmente no hay muchas versiones profesionales de Windows original en China. ¿Por qué los desarrolladores no impiden que se creen versiones crackeadas?

Porque no se puede detener.

La voladura es un método de craqueo simple. Podemos aplicar ingeniería inversa al archivo ejecutable del software y luego recompilarlo para lograr el propósito del craqueo.

Por ejemplo: tenemos un software que irá a un sitio web para su verificación cada vez que ingrese el código de registro. Si se aprueba la verificación, se devolverá una instrucción después de que el software reciba esta instrucción. equivale a un registro exitoso. Después de recompilar, podemos modificar esta dirección y cambiarla a una dirección de descifrado que construimos nosotros mismos. Sin embargo, no importa lo que ingresemos, devolveremos un comando exitoso para que podamos lograr el propósito de descifrar.

Por supuesto, también podemos modificar la lógica del procesamiento de verificación. Por ejemplo, si el usuario ingresa un código de registro incorrecto, la verificación pasará, lo que también puede lograr el propósito de descifrar.

También hay una manera de descifrarlo escribiendo su propia máquina de registro. Toda verificación de software tiene un algoritmo lógico fijo. Siempre que comprendamos este algoritmo, podemos escribir un registro basado en la generación del código de verificación. Logic. Machine y genere el código de registro correcto, complete el registro utilizando este código de registro.

Hay muchas formas de descifrar y existen diferentes métodos de descifrado para diferentes programas. Los desarrolladores, naturalmente, no quieren que su software sea descifrado, por lo que han agregado muchos métodos anti-craqueo. Sin embargo, estos métodos tendrán lagunas, porque estos métodos anti-craqueo son en realidad software en sí mismos, siempre que lo sean. El blindaje blando puede agrietarse. ¿Se puede descifrar todo el software? ¿Por qué los desarrolladores no impiden que se creen versiones descifradas?

Esta pregunta puede responderse desde varios aspectos.

En primer lugar, todo el software se puede descifrar. Es sólo la dificultad y el valor del descifrado lo que determina el número de crackers.

Este problema es algo similar al bloqueo y desbloqueo. Siempre y cuando tengas ciertas habilidades y esfuerzo, se puede decir que casi todas las cerraduras se pueden abrir sin llave.

En segundo lugar, ¿por qué los desarrolladores no impiden la generación de versiones crackeadas?

Pon un ejemplo. Hace unos años, BOSS de Microsoft dijo: Sé que a los chinos les gusta robar (piratería de software), pero aun así, todavía espero que roben nuestro software.

Esta frase ilustra la verdad de que, hasta cierto punto, la mayoría de los desarrolladores de software prefieren que alguien descifre sus propios productos y algunos utilicen sus propios productos pirateados.

¿A qué se debe esto?

De hecho, esto tiene dos efectos.

El primer efecto es que el software pirateado se vuelve popular en grandes cantidades y puede combatir a sus competidores. Si la lucha contra la piratería es demasiado dura y nadie recurre a la piratería, es probable que los productos de sus competidores se aprovechen de la situación y ocupen el mercado. Por ejemplo, Windows, si Gates y sus colegas luchan duramente contra la piratería, es muy probable que los sistemas operativos nacionales aprovechen la oportunidad para desarrollarse. Si se permite la piratería, uno de los efectos más importantes es convertir a la mayoría de los usuarios en un hábito y bloquear las oportunidades para el desarrollo de sistemas nacionales.

El segundo efecto es que tienen una nueva forma de ganar dinero.

Por ejemplo, la mayoría de las computadoras que usan sistemas operativos ahora pueden conectarse a Internet. A Gates le resulta fácil saber qué máquinas usan sistemas pirateados. Si algunas pequeñas o medianas empresas se atreven a utilizar la piratería, recopilarán pruebas y luego enviarán cartas legales a estas empresas. Se ha recopilado la prueba de su uso de la piratería. Puede pagarnos 10.000 yuanes para comprarnos una licencia. , o ir a la corte. En este caso, se puede decir que existe una alta probabilidad de perder la demanda y la indemnización, y el número es muy grande. Aunque muchas empresas de software no ganan dinero con la piratería, pueden ganar mucho dinero de esta manera. Las actualizaciones de software y el craqueo mantienen una relación contradictoria. El análisis específico es el siguiente:

Es muy común que los desarrolladores protejan el software que desarrollan, pero ningún desarrollador debería pensar que su software no se puede descifrar.

En primer lugar, debe comprender que el objetivo principal del desarrollo de software definitivamente no es "proteger el software contra posibles ataques". Para proteger el software, muchas ganancias del código de protección de seguridad superan las ganancias, y luego todo el software desarrollado se convierte en algo similar a un firewall de red.

Todos los métodos de cifrado no pueden garantizar completamente la seguridad, pero el software de descifrado Cracker considerará la "relación costo-efectividad". Por ejemplo, es muy problemático para mí descifrar este software. Es posible que deba trabajar continuamente. durante una semana, pero este software sólo se vende por diez yuanes, por lo que generalmente no considerarás perder este tiempo descifrándolo.

Además, descifrar el software destruirá la integridad del software, lo que provocará que algunas funciones se vuelvan anormales o incluso inutilizables. El autor solo necesita proteger las funciones principales y malinterpretar estas funciones después del descifrado (por ejemplo, por completo). descifrar los archivos guardados), descifrar este tipo de software requiere que Cracker tenga el mismo nivel técnico que un desarrollador en el campo actual.

Vuelvo a salirme del tema, pero es importante. Alguien comparó una vez a Hacker y Cracker. De hecho, la diferencia entre ellos es muy grande. Los piratas informáticos se centran en la tecnología de transmisión de red y los sistemas operativos, y los crackers se centran en la tecnología de compilación y los lenguajes de bajo nivel. El pirateo no tiene necesariamente fines de lucro, pero el pirateo definitivamente tiene amigos y enemigos, pero el cracking destruye los intereses de todos; (La piratería desenfrenada restringirá seriamente el desarrollo de la industria del software. Por ejemplo, la piratería de Windows está en todas partes. Las personas que desarrollan otro sistema quieren recuperar el costo vendiendo el sistema es básicamente una fantasía).

Finalmente, déjame resumir. Qiu Bojun, el líder de WPS, dijo una vez: Alguien pirateó su software, lo que significa que el software ha sido reconocido. Es imposible que los desarrolladores no consideren el tema de la piratería, pero primero alguien debe usar su software antes de que tenga valor. La protección del software y el craqueo de software son un par de contradicciones y escudos. La existencia de enemigos puede mantenernos alerta en todo momento.

El programa está en modo de depuración, que es de un solo paso. Los programas en ejecución también se pueden capturar y poner en modo de depuración. Siempre que encuentre algunos puntos clave de juicio y cambie el programa, podrá descifrarlo.

No todo el software se puede descifrar. Solo se puede decir que todo el software cuyo código de programa y base de datos sean locales se puede descifrar.

Por ejemplo: "computadora en la nube", "teléfono en la nube". Todos los códigos del programa y las bases de datos se colocan en el lado del servidor y solo hay un cliente responsable de iniciar sesión en el teléfono móvil o computadora local.

"Computadora en la nube" y "teléfono en la nube" pueden transmitir instrucciones de operación local a la computadora del lado del servidor o al teléfono móvil. Todos los procesos de ejecución del programa se completan en la computadora o al teléfono móvil del lado del servidor y luego se transfieren. A través de la red, la imagen se transmite de regreso a la computadora local en tiempo real. Debido a la rápida velocidad de la red y la baja latencia, parece que realmente se está operando localmente.

Para el software o sistemas en la nube, todos los códigos, bases de datos y procesos de ejecución están en el lado del servidor. Incluso el proceso de verificación de la cuenta y la contraseña al iniciar sesión debe compararse con la base de datos del lado del servidor. Por lo tanto, la posibilidad de que este tipo de software o sistema sea pirateado es casi nula. Incluso si se piratea, puede que sólo sea mediante tecnología de piratería o la filtración de información confidencial como cuentas, contraseñas y direcciones IP. ¿Por qué se dice que el software y los sistemas locales se pueden descifrar?

Puede que sean necesarios meses para construir una casa, pero puede que solo haga falta un momento para derribarla. Lo mismo ocurre con el software y los sistemas locales. El proceso de descifrado es un proceso complicado. No es necesario saber cómo se escriben todos los códigos, cuáles son los principios operativos, cómo se ejecutan y cuál es la lógica de ejecución. siempre que encuentre la ejecución Los fragmentos de código para la autenticación y autorización de permisos son suficientes.

Permite que el software salte a la interfaz principal del software tan pronto como comienza a ejecutarse, evitando el proceso de ingresar nombres de usuario y contraseñas y verificar nombres de usuario y contraseñas.

También puede permitir que el módulo de verificación de nombre de usuario y contraseña del software salte a la interfaz principal del software, independientemente de si la verificación fue exitosa o fallida.

Los amigos que visitan con frecuencia el foro "Kanxue" sabrán que existen varias herramientas e ideas para descifrar software. El craqueo de software se ha convertido en una disciplina muy temprana y tiene el nombre elegante de "ingeniería inversa de software".

Ingeniería inversa de software

La ingeniería inversa de software se refiere a partir de un sistema de programa ejecutable y utilizar una variedad de tecnologías informáticas como descifrado, desmontaje, análisis de sistemas y comprensión de programas para analizar el software Realizar desmontaje y análisis inverso de estructuras, procesos, algoritmos, códigos, etc., y deducir el código fuente, principios de diseño, estructuras, algoritmos, procedimientos de procesamiento, métodos operativos y documentos relacionados de productos de software.

Cuando se desarrolle software, también se utilizará tecnología antimanipulación para evitar la ingeniería inversa y la reingeniería de software especial. En las aplicaciones prácticas aparecen dos tipos de ingeniería inversa: uno es que el código fuente del software está disponible, pero casi no hay ningún documento de descripción de los departamentos de nivel superior o el documento de descripción ya no es aplicable o se pierde. La otra es que el código fuente del software no está disponible y cualquier esfuerzo por encontrar su código fuente se considera ingeniería inversa. Así que no piense en la ingeniería inversa del software como un tema muy sombrío. Simplemente lo utilizan a menudo personas oportunistas.

La ingeniería inversa del software puede utilizar "tecnología de sala limpia" para evitar la infracción de derechos de autor. En algunos países, la ingeniería inversa del software está protegida siempre que cumpla con las disposiciones de uso legítimo de las leyes de interpretación de la industria del derecho de autor. Por ejemplo:

Lo anterior solo proporciona las ideas básicas para descifrar software, para que todos puedan comprender mejor por qué se pueden descifrar el software y los sistemas locales. La ingeniería inversa de software no es tan simple como se imagina. Este tema requiere habilidades básicas de programación, dominar los principios y técnicas del shell y una comprensión relativamente buena de los sistemas operativos. En resumen, implica más conocimiento y hay más cosas que aprender. Se necesita mucho tiempo para dominar este tema con soltura. Bajo ingeniería inversa, la tecnología de cifrado y el mecanismo de registro del software también evolucionan constantemente.

Al principio, se podía utilizar software original siempre que se comprara el disco de distribución o el CD. Sin embargo, debido a la prevalencia de los discos ópticos pirateados, ha evolucionado que es necesario introducir una serie de claves de activación para activar derechos genuinos. Pronto aparecieron los programas de conteo de números y, por lo tanto, surgió la verificación en línea.

Sin embargo, no importa cuán poderoso sea el mecanismo de empaquetado/cifrado del software y cuán perfecto sea el mecanismo de registro, siempre que el código del software sea local, definitivamente será descifrado, solo que lleva mucho tiempo.

Lo anterior es sólo mi opinión personal. Las críticas y correcciones son bienvenidas.

Todo es cuestión de si vale la pena. Si ahora se necesitan 100 días para que el software funcione, se necesitarán otros 5 días para que sea difícil de descifrar. Entonces podría hacerlo. Digamos que se necesitan otros 5 días para que sea casi irrompible. Puedo optar por no hacerlo. Porque tal vez esta parte casi no tenga valor.

Si yo, llamado Ju Hard, voy a un país a promocionar software, y hay una empresa llamada UPS en este país que es muy parecida a mi software, lo que quiero ahora es matarlo primero, y ni siquiera me importa. Mis promotores se comieron ellos mismos las tarifas de promoción. En este momento, no solo no haré anti-craqueo, sino que también apoyaré activamente a estos promotores.

Si el agua está clara, no habrá peces. Después de todo, la piratería es riesgosa. Los novatos pueden buscar versiones crackeadas, pero las funciones definitivamente no son lo suficientemente fluidas para usarlas. Todavía estoy dispuesto a gastar dinero para comprar unos genuinos.

Cuando sale un software, la versión descifrada también es un método de marketing. Si se cobra directamente, ¿dónde lo descargarán y experimentarán los usuarios?

De hecho, todo el software se puede descargar. Cracked Incluyendo aplicaciones nacionales como Alipay y WeChat.

Análisis: por un lado, los piratas informáticos descifran software para demostrar la tecnología y mostrar sus habilidades a los desarrolladores; por otro lado, quieren obtener ganancias. En 2019, Tmall sufrió 2.200 millones de ataques maliciosos en 24 horas durante Double Eleven. ¿Significa esto que Tmall está blindado y no tiene lagunas? No. Las aplicaciones de este nivel estarán equipadas con un equipo de seguridad profesional, que técnicamente filtra a la mayoría de los "hackers novatos". Después de todo, los mejores hackers son una minoría y generalmente desdeñan hacer tales cosas, al mismo tiempo que tienen en cuenta la disuasión legal. No es un asunto trivial que las aplicaciones a nivel nacional sean pirateadas y nadie puede garantizar que saldrán ilesas. Hay un dicho que dice que "una botella llena de agua no hará olas, pero una botella llena de agua sí hará olas". Se puede decir que los piratas informáticos que atacaron a Tmall en Double Eleven eran básicamente "media botella de agua". No es fácil para Tmall resistir la prueba, pero no es sorprendente.

No hace falta decir que sobre el software de aplicaciones generales, los desarrolladores dedican la mayor parte de sus esfuerzos a la investigación funcional y hacen todo lo posible en términos de seguridad. Si quieren hacerlo mejor, es necesario. establecer un equipo de seguridad dedicado, pero esto aumentará muchos costos de desarrollo. Aun así, no puede garantizar que el software tenga cero vulnerabilidades. Por lo tanto, a los ojos de los piratas informáticos, la mayor parte del software equivale a "correr desnudo".

Resumen: Muchas versiones descifradas de software aparecen en Internet porque algunas personas no tienen un gran conocimiento de los derechos de autor y hacen cosas ilegales con sentido de suerte. No es que los desarrolladores no lo impidan, es que el costo de la protección de los derechos es alto y los desarrolladores de software básicamente hacen la vista gorda. El software crackeado es un "obstáculo" para el desarrollo de la industria del software. ¿Quién pagaría por la versión genuina cuando existe una gratuita? Si los desarrolladores no pueden ganar dinero, ¿quién desarrollará software con todo su corazón? Este es un bucle sin fin. Sin embargo, a medida que la conciencia de la gente sobre los derechos de autor aumente gradualmente y la supervisión de los derechos de autor en mi país continúe mejorando, esta situación mejorará enormemente. Todo lo que nosotros, la gente común y corriente, tenemos que hacer es apoyar los derechos de autor genuinos.