Red de conocimiento informático - Conocimiento del nombre de dominio - ¿Cómo puedo autorizar a otros a usar mi software mediante un bloqueo de cifrado y un número de autorización?

¿Cómo puedo autorizar a otros a usar mi software mediante un bloqueo de cifrado y un número de autorización?

Los dongles están bien, pero parece que hay que pagarlos

En el nuevo siglo, la industria de protección de software de China se enfrenta a un gran impacto y la tendencia a la piratería de software es cada vez más fuerte. ¡Esta situación ha llevado gradualmente a que un gran número de desarrolladores de software se encuentren casi indefensos frente a la piratería!

La razón principal de esta situación es que la competencia desordenada de precios en la industria de protección de cifrado de software durante muchos años ha estancado el desarrollo tecnológico y cada vez menos fabricantes de tecnología participan en la competencia en el campo de TI; En la industria de la información, una competencia de bajo nivel como ésta, en la que un producto puede venderse durante más de cinco años y su tecnología sólo se actualiza cada tres años, es poco común en la industria. Con el avance de la industria informática, la mejora de la velocidad de procesamiento de las computadoras y la tecnología de ataque físico a los chips, los productos de tecnología de cifrado han quedado completamente en desventaja en la competencia con la tecnología de descifrado pirateada.

En 2002, la industria de protección de software finalmente marcó el comienzo de un mayor nivel de actualización tecnológica. La característica sobresaliente de esta ola de actualizaciones tecnológicas es la innovadora aplicación de la tecnología de tarjetas inteligentes, que se usa ampliamente en las finanzas, el ejército, la autenticación de identidad de redes y otros campos con altos requisitos de seguridad y estabilidad, para la protección del software comercial. El sistema de cifrado de software de nueva generación construido con tecnología de tarjeta inteligente como núcleo realmente proporciona una protección integral y de alta seguridad para los códigos de software y los datos importantes de los usuarios.

Los productos icónicos de esta actualización tecnológica son la última cerradura de cifrado de élite de cuarta generación de Clover y el perro inteligente de Rainbow World.

A continuación, comparamos el sistema de cifrado de software de nueva generación construido con tecnología de tarjeta inteligente como núcleo y los productos de cifrado de software convencionales actuales desde el nivel técnico de la cerradura de cifrado Elite de cuarta generación.

(1) Deficiencias de los bloqueos de cifrado de software convencionales

Para los productos de protección de cifrado de software, los usuarios están más preocupados por la eficacia del cifrado, la compatibilidad del producto y la estabilidad del hardware en general. Los bloqueos de cifrado de software actualmente en el mercado están contenidos en una microcomputadora de un solo chip, que es la llamada CPU incorporada. Los fabricantes de software utilizan principalmente funciones de algoritmo para el cifrado. Las cerraduras cifradas suelen añadir también algunas funciones auxiliares, como conteo inverso, actualización remota, etc. A través del análisis de estos bloqueos de software, creemos que tienen al menos tres debilidades fatales en términos de seguridad:

Debilidad 1: Hay fallas importantes en el principio de diseño

En la actualidad , el hardware de bloqueo de cifrado principal proporciona funciones de lectura, escritura y transformación de algoritmos, y la relación entre las transformaciones de algoritmos es difícil de descifrar y exhaustiva. Sin embargo, el mayor defecto de este tipo de bloqueo de cifrado es que el algoritmo no se revela al fabricante del software. El algoritmo de transformación del bloqueo se fija en la fábrica y el cifrado del software solo puede configurar los parámetros del algoritmo. Esto limita el uso del algoritmo. Registre previamente los resultados del algoritmo y luego verifíquelos cuando el software se esté ejecutando (usando una tabla de códigos), o realice al menos dos transformaciones en el software y luego compare la consistencia de los resultados; el descifrador intercepta Estos datos se pueden descifrar mediante estadísticas y análisis

Debilidad 2: el bloqueo de cifrado está limitado por la potencia de procesamiento y no puede proporcionar una protección sólida para el software

Debilidad 2: cifrado El El bloqueo está limitado por la potencia de procesamiento y no puede proporcionar una protección sólida para el software.

Se han lanzado al mercado varios bloqueos de cifrado "programables". La característica más importante de este tipo de bloqueo de cifrado es que permite a los usuarios diseñar su propio. propios algoritmos dedicados. La aparición de "bloqueos de cifrado" programables es de hecho un avance en la tecnología de cifrado de software. "Rockey4" y "Rockey3" en "Rockey3" y "Rockey4" en "Rockey4" son todos productos de este tipo.

Sin embargo, debido a limitaciones de costos, este tipo de bloqueo de cifrado a menudo solo puede utilizar un microcontrolador de 8 bits de uso general o un chip ASIC del mismo nivel de 10 a 20 yuanes como microprocesador central. La potencia de procesamiento y computación de este microcontrolador de gama baja es bastante débil, lo que trae grandes limitaciones al bloqueo de cifrado "programable". Las principales manifestaciones son: 1. La complejidad de la transformación del algoritmo no es lo suficientemente alta, 2. La codificación de instrucciones. el espacio es pequeño, 3. El área del programa es pequeña. Estas limitaciones impiden que los usuarios logren esquemas de cifrado ideales de alta resistencia a través de dongles "programables".

Debilidad 3: el hardware en sí es débil para resistir ataques maliciosos

Con el desarrollo del diseño de circuitos integrados, la tecnología de producción y los productos de seguridad, aumenta la posibilidad de que el hardware del chip central sea atacado. está aumentando. Los ataques de hardware típicos incluyen ataques de sondeo electrónico (como SPA y DPA) y ataques físicos (sondeo, como el uso de la tecnología SiShell), que analizaremos brevemente a continuación.

El principio de las técnicas de ataque de detección electrónica (SPA y DPA) es que el chip del microcontrolador es un componente electrónico activo cuando ejecuta diferentes instrucciones, el consumo de energía correspondiente también cambiará en consecuencia. Mediante el uso de instrumentos electrónicos especiales y técnicas estadísticas matemáticas para detectar y analizar estos cambios, se obtiene información clave específica en el microcontrolador.

Los ataques físicos se pueden llevar a cabo de las siguientes maneras: analizando y leyendo directamente la memoria interna del chip u otra lógica a través de un microscopio electrónico de barrido; leyendo el contenido de la memoria a través de sondas de prueba a través de interfaces externamente inaccesibles, como las de fabricación; punto de prueba del fabricante) accede directamente a los datos de la memoria o del procesador y luego inicia la función de prueba del microcontrolador;

Dado que los microcontroladores de bajo nivel de uso general no están destinados a fabricar productos seguros y no brindan protección específica contra ataques físicos, los datos se leen directamente desde la memoria mediante ataques de sondeo electrónico (SPA y DPA) relativamente fáciles. Aunque la mayoría de los microcontroladores comunes tienen la función de quemar fusibles para proteger el código en el microcontrolador, dichos chips tienen una amplia gama de aplicaciones, grandes lotes de lanzamientos, depuración y procesamiento, y frecuentes transferencias de tecnología entre fabricantes, lo que dificulta su uso. descargar programas se ha convertido en una tarea relativamente fácil encontrar lagunas en el diseño, utilizar la interfaz de prueba de chips del fabricante y leer información a través de datos y tiempos de programación especiales.

Los chips ASIC se personalizan según las necesidades del usuario y se producen en pequeños lotes. Debido a que utilizan circuitos lógicos especiales y no es fácil probar interfaces funcionales públicamente, siempre que los sistemas desarrollados en base a ellos no guarden información importante o no se utilicen en situaciones de seguridad de alto nivel, aún pueden prevenir ataques físicos en circunstancias normales. .

(2) Uso de la tecnología de tarjetas inteligentes como núcleo para crear la función de seguridad de una nueva generación de cerraduras de cifrado

Las tarjetas inteligentes IC se utilizan ampliamente en los sectores militar, financiero, de seguros y otros. áreas relacionadas con la economía nacional y el sustento de las personas debido a su desempeño de seguridad confiable. En áreas importantes, se ha construido una nueva generación de productos de cifrado de alta resistencia con tecnología de tarjetas inteligentes como núcleo, que tiene un desempeño de seguridad muy superior.

Mejora 1: los códigos de software importantes se trasplantan completamente al hardware

Consulte la Figura 1 y la Figura 2 para conocer el principio de funcionamiento del bloqueo de cifrado Elite IV.

Como se puede ver en la Figura 1 y la Figura 2, en el programa de protección de software de la cerradura Elite IV, el código de clave y los datos del software de la aplicación de PC "desaparecen" y se trasplantan de forma segura a Elite IV. Protegido en herrajes de cerradura. Los códigos y datos críticos de las aplicaciones de PC "desaparecen" y se transfieren de forma segura al hardware bloqueado Elite IV. Cuando sea necesario, el software de la aplicación puede utilizar el motor de llamada de función para ordenarle a Elite IV que ejecute código y datos críticos en el hardware y devuelva los resultados, completando así la funcionalidad completa de todo el software.

Dado que el código y los datos no se copian en la PC, el descifrador no puede adivinar el algoritmo ni robar los datos, lo que garantiza en gran medida la seguridad de todo el sistema de software.

Elite IV proporciona hasta 32~64K bytes de espacio de datos y programas, que pueden acomodar casi 10.000 líneas de código C.

Mejora 2: potentes capacidades informáticas y de procesamiento

La cerradura de cifrado Elite IV construida con tecnología de tarjeta inteligente tiene potentes capacidades informáticas y de procesamiento de datos, y puede admitir bibliotecas de punto flotante y bibliotecas de funciones matemáticas , biblioteca de servicios de seguridad y bibliotecas de entrada y salida estándar, que son fundamentales para mejorar la solidez del cifrado.

Mejora 3: el chip de la tarjeta inteligente tiene una seguridad extremadamente alta

El chip de la tarjeta inteligente tiene un nivel de integración extremadamente alto, que es diferente de las microcomputadoras comunes de un solo chip de gama baja. Solo ha pasado la prueba de las agencias de seguridad internacionales. Solo los fabricantes de chips de seguridad profesionales certificados (EAL 4 y IT SEC) pueden proporcionar chips para tarjetas inteligentes.

Los chips de tarjetas inteligentes pueden resistir eficazmente ataques de detección electrónica (SPA y DPA) y ataques físicos (SiShell) y proporcionar medidas de protección de seguridad completas durante la etapa de diseño del hardware. Lo desarrollan los fabricantes de chips para permitir la ejecución en el chip generando ruido adicional y señales de interferencia, o agregando circuitos de filtro para eliminar el ruido, agregando varias capas de protección, utilizando materiales especiales (materiales sensibles a los haces de electrones), etc. Las instrucciones no pueden ser monitoreadas. Al mismo tiempo, el chip de la tarjeta inteligente proporciona un generador de números aleatorios por hardware. Bajo el control de la CPU, cada vez que el chip transmite datos al mundo exterior, los números aleatorios generados pueden garantizar que los datos no se repitan.

Para garantizar la confiabilidad y disponibilidad de los chips de tarjetas inteligentes, la organización internacional autorizada de gestión de estándares técnicos ISO ha formulado especialmente un estándar de prueba para este propósito: ISO/IEC 10373, que estipula los estándares de prueba para dispositivos inteligentes. Tarjetas bajo requisitos de prueba ultravioleta, de rayos X y electromagnéticos. En 1999, ISO lanzó una nueva norma técnica de chips de seguridad ISO/IEC 15408. La nueva norma presenta requisitos claros para las capacidades de prevención de seguridad física de los chips de tarjetas inteligentes.

Los chips de tarjetas inteligentes que cumplen con los estándares anteriores tienen las siguientes funciones antiataques físicos:

◆ La función de prueba no se puede reactivar quemando el fusible (la función de prueba la proporciona El fabricante del chip de la tarjeta inteligente tiene una mayor operatividad para la función de detección integral del chip de la tarjeta inteligente. Si no se activa la función de prueba, la seguridad del chip de la tarjeta inteligente mejorará en gran medida.

◆ Detección de alto/bajo voltaje; detección de baja frecuencia de reloj;

◆ Evita que el bus de direcciones y el bus de datos sean interceptados.

◆ Implementación lógica de la física; protección de la memoria (código de acceso, etc.);

◆ La prueba exhaustiva del chip de la tarjeta inteligente hará que el chip de la tarjeta inteligente sea más operable. Si no se puede iniciar la función de prueba, la seguridad del chip de la tarjeta inteligente se verá afectada. mejorarse mucho. );

◆ Capa de protección física del bus y la memoria, etc.

La función de prueba que protege a los fabricantes de chips de tarjetas inteligentes es una función de prueba integral para chips de tarjetas inteligentes.

Además, el chip de la tarjeta inteligente también tiene algunas características de seguridad que son extremadamente útiles para la protección del software:

Función de autobloqueo del chip: el acceso del software al chip está protegido primero por el código PIN y el código PIN El desarrollador del software puede establecer el número de intentos. Cuando un usuario ilegal utiliza un diccionario para atacar, si el número de intentos excede el valor establecido, el chip se bloqueará y se bloquearán todas las operaciones externas. el chip se detendrá. Todas las operaciones externas en el chip se detendrán.

Número de serie único a nivel mundial: el chip de la tarjeta inteligente tiene un número de serie único a nivel mundial que no se puede cambiar, lo que evita el uso fraudulento y permite una gestión efectiva de los productos emitidos. Si los desarrolladores de software cooperan con los proveedores de tecnología de cifrado, pueden obtener servicios que proporcionen un control de segmentos de código de secuencia especial, lo que puede resolver casi fundamentalmente el problema de la duplicación y falsificación de hardware.

Generador de números aleatorios de hardware (tecnología de ruido blanco): se utiliza para generar números aleatorios de alta potencia. Además de la necesidad de algoritmos simétricos para generar claves, los números aleatorios son muy importantes y se utilizan ampliamente en el campo del cifrado de seguridad. Por lo tanto, un generador de números aleatorios de alta potencia en el propio hardware es de gran importancia para la seguridad.

Temporizador de reloj de hardware: una función necesaria para el uso de sincronización de software, anti-rastreo y otros métodos comunes de protección de software.

Mejora 4: El núcleo de la tecnología de tarjetas inteligentes: el sistema operativo COS

COS (sistema operativo de tarjeta) se almacena en el chip de la tarjeta inteligente y es un sistema relativamente pequeño pero muy completo y riguroso. sistema. . COS gestiona cada movimiento de la tarjeta inteligente. Además de estar garantizada por algunos diseñadores y fabricantes de chips, COS implementa principalmente la seguridad de todo el sistema de tarjetas inteligentes.

La seguridad de todo el sistema de tarjetas inteligentes está garantizada en parte por los diseñadores y fabricantes de chips, y la mayor parte la implementan los desarrolladores de COS.

COS se divide principalmente en cuatro partes: gestión de comunicaciones, gestión de documentos, gestión de seguridad y gestión de aplicaciones. La Organización Internacional de Normalización (ISO) ha adoptado disposiciones detalladas sobre los indicadores físicos, indicadores eléctricos y estándares de aplicación de tarjetas inteligentes: ISO7816--3 y 4, los indicadores eléctricos y formatos de comando para que las tarjetas inteligentes intercambien información con el. mundo exterior se especifican en detalle.

El desarrollo de sistemas COS es muy difícil y requiere una gran carga de trabajo, lo que requiere una gran inversión de mano de obra y recursos materiales; cualquier sistema de control de chip que no se desarrolle rápidamente de acuerdo con los estándares puede tener fallas de diseño, lo que lleva a enormes fallas. peligros de seguridad. Debido a su tecnología central, el fabricante de la cerradura de cifrado no puede controlar completamente la combinación de sistemas COS de terceros fabricantes. La seguridad del sistema depende de los terceros fabricantes de COS, lo que también aumenta los riesgos de seguridad para los usuarios.