Aplicación Práctica de Prueba de Trabajo en Captcha

Prueba de trabajo (en lo sucesivo, "PoW") en la introducción de Wikipedia se refiere a que generalmente requiere que los usuarios realicen algunos cálculos complejos y que requieren mucho tiempo, y el servidor puede verificar rápidamente las respuestas, por lo que el tiempo consumido, Equipo y La energía se utiliza como costes garantizados para garantizar que los servicios y recursos se utilicen según las necesidades reales.

En la vida real, se puede ejemplificar de la siguiente manera: los estudiantes toman una prueba y les lleva cierto tiempo responder las preguntas; después de que finaliza la prueba, el maestro puede juzgar rápidamente la corrección de la respuesta del estudiante. En este proceso, los estudiantes son los usuarios, el docente representa al proveedor del servicio y el examen es la prueba de la carga de trabajo de los estudiantes para responder las preguntas.

Aplicaciones prácticas de la prueba de trabajo

Después de ingresar las palabras clave de "prueba de trabajo" o "pow" en el motor de búsqueda, más del 90% de las páginas tendrán contenido relacionado con blockchain. De hecho, como mecanismo de algoritmo de consenso de la red blockchain, PoW ha desempeñado un papel extremo en la industria blockchain en los últimos años. En ecosistemas de blockchain descentralizados como Ethereum y Bitcoin, cualquier transacción cifrada debe verificar su autenticidad a través de un mecanismo de consenso antes de que pueda convertirse en parte de la cadena. PoW tiene un código de programa de protocolo muy difícil, que no solo puede hacer que los nodos en el sistema descentralizado funcionen de manera segura, sino que también protege la red blockchain de ataques maliciosos de piratas informáticos.

La popularidad de la cadena de bloques ha hecho que PoW aparezca a la vista del público y se comprenda gradualmente, pero de hecho PoW ya ha tenido aplicaciones prácticas antes del surgimiento de la industria de la cadena de bloques. La prueba de trabajo se propuso en 1993, y posteriormente se aplicó a ataques anti-DDOS y anti-spam. Por ejemplo, el gigante de Internet Microsoft lo aplica a servicios de correo electrónico como Hotmail, Exchange y Outlook, y requiere que todos los correos electrónicos recibidos usen archivos adjuntos PoW fuertes para evitar que se envíe una gran cantidad de correos electrónicos no deseados.

Prueba de trabajo y Captcha

En vista de la capacidad de PoW para bloquear eficazmente las interacciones de alta frecuencia y sus ventajas únicas, el equipo de I+D de GeeExpert lo aplicó a Behavioral Experience 4.0. En el sistema informático, el verificador en PoW es el servidor y el trabajador es el solicitante, pero es muy probable que el solicitante sea un producto negro y gris que socava la seguridad empresarial. Usan computadoras para enviar una gran cantidad de solicitudes basura en un corto período de tiempo, causando daño al negocio. Teniendo en cuenta la ocurrencia de esta situación, Geetest presenta la prueba de trabajo PoW. Cuando el solicitante envía una solicitud, el solicitante le hará una pregunta a la otra parte. El solicitante necesita gastar una cierta cantidad de tiempo y costo de capital para dar el resultado a la verificador para la verificación.

La prueba de carga de trabajo de Geek adopta principalmente un método de operación hash.Antes de presentar en detalle cómo se aplica PoW al código de verificación de Geek, aquí hay una explicación del algoritmo hash para su comprensión posterior.

Algoritmo hash, se refiere al algoritmo hash seguro (inglés: Secure Hash Algorithm, abreviado como SHA) es una familia de funciones hash criptográficas, y es un algoritmo hash seguro certificado por el Estándar Federal de Procesamiento de Información de EE. UU. Un algoritmo que puede calcular una cadena de longitud fija correspondiente a un mensaje digital. Y si los datos de entrada son diferentes, la probabilidad de que correspondan a cadenas diferentes es alta.

Proceso de negocio de prueba de trabajo extrema

En el proceso comercial de prueba de trabajo del código de verificación de Geetest, al cargar los recursos de verificación, el servidor de Geetest envía parámetros de PoW al cliente.Los parámetros incluyen partes clave como la dificultad de cálculo de PoW, el método de operación hash y el número de serie comercial. Al realizar la verificación, el cliente debe calcular el resultado de PoW además de la respuesta al código de verificación. De acuerdo con los parámetros entregados, el cliente realiza operaciones hash con cadenas aleatorias que cumplen las condiciones, realiza múltiples operaciones a través de la imprevisibilidad de las operaciones hash y la aleatoriedad de las cadenas aleatorias, y finalmente obtiene un resultado calificado. Finalmente, el resultado es Enviarlo a el servidor Geetest para la verificación, y solo si la respuesta es correcta puede pasar la verificación.

 

En este proceso, el cliente necesita una segunda respuesta, es decir, además de responder el resultado correcto del código de verificación, como mover el control deslizante a la posición correcta y hacer clic en el texto en el orden correcto, el usuario también debe responder el código de verificación Resultado PoW correcto. En comparación con el código de verificación anterior que solo verifica una respuesta, la aplicación de PoW ha aumentado los requisitos del código de verificación en el cliente y también se ha mejorado la seguridad.

Debido a que el cliente de un usuario normal solo necesita pasar un código de verificación a la vez, la cantidad de solicitudes es pequeña y el cálculo correspondiente también es muy pequeño. El tiempo promedio de búsqueda de una cadena es de decenas de milisegundos, y el impacto en clientes normales es insignificante, pero para los clientes maliciosos, deben gastar más CPU para encontrar la cadena correspondiente para pasar la detección, de modo que el comportamiento de los clientes maliciosos pueda ser limitado.

PoW mejora el rendimiento de la seguridad del código de verificación

Generado aleatoriamente y no se puede manipular: al cargar la solicitud de verificación, la cadena está relacionada con el ID de verificación, el número de serie y el tiempo de generación del mensaje devuelto por la solicitud del código de verificación, por lo que ningún parámetro de PoW se puede manipular a voluntad. En casos extremos, incluso si los productos negros entienden las reglas de generación de cadenas, intentan eludir el mecanismo POW falsificando y alterando los parámetros de solicitud. Geetest también puede detectar anomalías por primera vez cuando el servidor está realizando la verificación e inmediatamente marcar o bloquear la solicitud iniciada.

Evite el cálculo por adelantado: los parámetros de PoW emitirán parámetros relacionados con el número de serie de verificación al cargar el código de verificación. Primero debe cargar el código de verificación, obtener recursos y obtener el número de serie antes de realizar cálculos posteriores. Los expertos en seguridad empresarial con experiencia también dijeron que este es el punto central: una vez que se realiza el cálculo previo en el proceso, PoW es inútil.

Resistente al cracking del lado del cliente: los productos de seguridad a menudo requieren detección ambiental en el lado del cliente, y el anti-reconocimiento de los piratas informáticos es el mismo. Invertirán recursos para crackear la lógica del producto y evadir la detección ambiental. Sin embargo, incluso si el código de verificación que utiliza PoW se descifra en el lado del cliente, los piratas informáticos no pueden pasarlo por alto, ya que toda la lógica de verificación debe realizarse en el lado del servidor.

Altamente integrado con el sistema de control de riesgos: PoW se combina con el sistema de control de riesgos de experiencia extrema para identificar cuentas anormales. Juzgamos los riesgos de los usuarios a través de estrategias de control de riesgos como la frecuencia de IP y la frecuencia del dispositivo, y reducimos la dificultad de cálculo para cuentas normales y bajas. usuarios de riesgo; Las solicitudes inusuales de riesgo medio a alto aumentan en dificultad. Esta estrategia genera un alto consumo de tiempo y CPU para los productos de Heihui, lo que bloquea el tráfico anormal y brinda a las empresas operaciones de usuario más seguras, convenientes e inteligentes.

La respuesta no se puede revertir: la cadena aleatoria generada por el cliente forma el mensaje de Hashcash, que debe codificarse con un algoritmo hash, pero debido a que el algoritmo hash es irreversible, cualquier cliente solo puede hacer múltiples intentos para encontrar la cadena de destino.

Tome las siguientes dos preguntas de cálculo como ejemplos: 1+4=5; 2+3=5

Conocemos la pregunta y obtenemos la respuesta "5", pero no podemos deducir que la pregunta debe ser "1+4" porque la respuesta es "5", y hay innumerables posibilidades como "2+3" y "1.5+ 3,5".

epílogo

Cuando todos se enfocan en el PoW en Bitcoin, GeeExpert optó por encontrar otra forma de aplicar este algoritmo de consenso a Behavior Verification 4.0 Esta innovación, sin duda, garantiza una mayor seguridad del código de verificación. Desde su establecimiento hace diez años, Geetest se ha comprometido con la innovación como fuerza impulsora del desarrollo. Además de la prueba de carga de trabajo PoW, Geetest Behavior 4.0 también fue pionera en un sistema de defensa de seguridad dinámico de siete capas. Tomando la iniciativa en el juego de la producción gris. , los dos juntos crean una experiencia de comportamiento seguro 4.0

Supongo que te gusta

Origin blog.csdn.net/geek_wh2016/article/details/126849699
Recomendado
Clasificación