Cerca

¿Por qué es fundamental blockchain security y cómo se implementa?

Este tutorial analiza los conceptos básicos de la seguridad de blockchain. También explica cómo funcionan el cifrado, las firmas digitales, los hashes, las claves privadas y públicas para proteger sus datos:

En la anterior serie de tutoriales de Blockchain ETF de tutoriales de Blockchain, aprendimos sobre el funcionamiento de Blockchain ETF junto con su comparación con otros recursos.

La seguridad de los datos es crítica para las cadenas de bloques y cómo funcionan.Por ejemplo, la seguridad de primera categoría evita la duplicación o destrucción de activos digitales como las criptomonedas en una cadena de bloques.

Varios métodos garantizan la máxima seguridad de los datos y la información dentro de la cadena de bloques, incluidas las técnicas avanzadas de cifrado y los modelos matemáticos de comportamiento y toma de decisiones.

En este tutorial de seguridad de blockchain, aprenderemos los conceptos básicos de seguridad dentro de una blockchain para entender qué hace que blockchain sea seguro y los conceptos básicos del cifrado.También veremos cómo la descentralización, el consenso y la criptoeconomía garantizan la seguridad de las cadenas de bloques.

También consideraremos algunos consejos sobre cómo hacer que blockchain, los fundamentos de la seguridad cuántica y el concepto de blockchain resistente a los cuantos sean más seguros.

Lo que aprenderás:

  • ¿Por qué es crítica la seguridad de blockchain?
  • Factores que contribuyen a la seguridad de blockchain
    • #1) Consentimiento e inmutabilidad
    • #2) Cifrado y su papel en la seguridad de blockchain
      • Algoritmos criptográficos
    • #3) ¿Cómo funcionan las claves privadas y públicas para proteger los datos?
    • #4) Creación de firmas digitales
    • #5) ¿Cómo ayuda el hash a proteger los datos en la cadena de bloques?
    • #6) Criptoeconomía y seguridad blockchain
    • 7) Computadoras cuánticas y blockchains resistentes a la cuántica
  • Conclusión
    • Lectura recomendada

¿Por qué es crítica la seguridad de Blockchain?

Tratamos de entender la importancia de la seguridad para las cadenas de bloques y ver las áreas que necesitan ser protegidas.

  • Tomemos las criptomonedas, por ejemplo, si la cadena de bloques no es segura, las criptomonedas pueden ser copiadas, destruidas o robadas.Lo mismo puede suceder para todos estos mensajes cifrados.
  • Además, esa información protegida ya no seguiría siendo privada ni confidencial.Esto significaría más inseguridad, robo y secuestro, por ejemplo, cuando conoces a los propietarios de grandes cantidades de criptomonedas.
  • Los contratos inteligentes sin confianza serían difíciles de lograr sin la garantía de que el acuerdo escrito no se modificará.

Factores que contribuyen a la seguridad de Blockchain

#1) Consentimiento e inmutabilidad

el consentimiento y la inmutabilidad contribuyen a la seguridad de blockchain

El consentimiento y la inmutabilidad contribuyen a la seguridad de la cadena de bloques de las siguientes maneras:

  • El consentimiento, al ser la capacidad de los nodos de la red blockchain para ponerse de acuerdo sobre el estado de la red, garantiza el cumplimiento de las normas de protección de la red.
  • El algoritmo de consentimiento define estas reglas y cómo deben ser seguidas por cualquier persona que comparta la red.Un aspecto importante del consentimiento es codificar estas reglas para garantizar que los usuarios se adhieran a las reglas sin tener que confiar entre sí.
  • La inmutabilidad, por otro lado, es la capacidad de los datos transaccionales en una cadena de bloques para no ser alterados o borrados.Esta es una característica tecnológica de blockchain.La vinculación de bloques en una cadena de bloques garantiza que dichos cambios se transmitan a cada nodo y operador de nodo gracias al código del algoritmo de consenso.Los operadores de nodos pueden rechazar o aceptar tales cambios tecnológicamente.
  • Si se rechazan los cambios, el bloque modificado se pasa como huérfano o se libera de la cadena principal más larga.La persona que saca el bloque ni siquiera recibe la recompensa.

Por lo tanto, el consentimiento protege así la cadena de bloques, ya que permite a los verificadores y nodos estar en desacuerdo con los cambios inaceptables, incluso si están de acuerdo en aquellos que son aceptables para garantizar la continuidad de la cadena.La inmutabilidad garantiza la trazabilidad de todos los datos e información protegida en una cadena de bloques, lo que significa que se notaría cualquier tipo de cambio.

#2) Cifrado y su papel en la seguridad de blockchain

El cifrado es el principal sistema de seguridad de la cadena de bloques.Permite el almacenamiento e intercambio de datos en un formato oculto a terceros y solo la persona que tiene el permiso tecnológico para revelar el significado del mensaje puede recibir y decodificar el mensaje que se le envía.

El algoritmo hash convierte los datos de fácil lectura en datos que no se pueden entender sin descifrado: El cifrado y su papel en la seguridad de la cadena de bloques El cifrado funciona a través del hashing, así como utilizando los métodos de seguridad de los pares de claves públicas y privadas.

La criptografía de clave pública asimétrica y simétrica es la forma principal de proteger los datos en una cadena de bloques.En la criptografía de clave simétrica, una clave se utiliza para cifrar y descifrar datos e información.DES y AES son ejemplos de criptografía de clave pública simétrica.

Estos se utilizan en métodos de cifrado de correo electrónico e Internet como TLS y SSL, aunque a veces utilizan una combinación de criptografía de clave simétrica y asimétrica.

(i) Las cadenas de bloques utilizan el cifrado de clave pública asimétrica, que es más seguro y utiliza varias claves privadas y públicas para cifrar y descifrar datos e información.Las claves públicas están disponibles públicamente, por ejemplo, a través de certificados digitales.El remitente de la información o criptomonedas u otros utilizará la clave pública del destinatario para cifrar los datos.El destinatario tendrá la clave para desentrañar los datos descifrando con la clave privada vinculada a la clave pública.

(ii) Por supuesto, un tercero no puede acceder al mensaje ya que se envía en un formato encriptado o ilegible.

(iii) El titular de la clave privada es la persona con la autoridad y el derecho de descifrar la información contenida en ella, como prueba de la propiedad.

(iv) Un generador de claves es un programa informático utilizado para generar claves públicas y privadas en criptografía.Estos generadores de números aleatorios (NGGs) o generadores de números pseudoaleatorios (PRNG) utilizan un grado de aleatoriedad para proteger los datos.

(v) Las claves protegen los datos al ser más difíciles de descubrir.Considere la fuerza bruta, que es una de las formas de intentar descifrar los datos cifrados sin tener claves privadas asociadas.La fuerza bruta funciona para ensayo y error donde el software adivina múltiples combinaciones de caracteres probables haciendo teclas que comienzan con el número mínimo.

Este software es bastante rápido y se utiliza para penetrar con éxito algunas técnicas de cifrado y para hackear sistemas adivinando contraseñas y claves, etc. La fuerza bruta no puede infringir el cifrado de clave pública asimétrica, principalmente porque la composición y la longitud de la clave hacen que sea difícil de adivinar.

No sólo se necesitaría una eternidad para hacerlo bien, sino que los recursos necesarios también serían insostenibles.Por lo tanto, mientras que los sistemas de cifrado de 128 bits que producen claves largas de 128 bits se emplean en algoritmos de clave simétrica de 2048 bits difíciles de descifrar.

(vi) Puede probar generadores de claves públicos y privados aleatorios en bitcoinaddress.org generando manualmente una dirección de billetera Bitcoin y su clave privada.Ambas claves se generan sin conexión reduciendo la posibilidad de verse comprometidas.

Este método utiliza movimientos esporádicos del mouse del usuario para generar semillas únicas y aumentar el grado de aleatoriedad que hace que sea más difícil, de hecho imposible, adivinar las claves generadas.Este tipo de PRNG utiliza la entropía del sistema para sembrar datos en el proceso de aleatoriedad para hacer que los resultados sean difíciles de adivinar al hacer difícil adivinar las condiciones iniciales de PRNG.

Otros sistemas derivan claves privadas de forma determinista utilizando una frase de contraseña y una función de derivación de claves.Estos métodos se utilizan en las carteras HD modernas que facilitan la generación y administración de direcciones de cartera.Todas las claves privadas para todas las direcciones de billetera en la billetera HD se generan utilizando la misma función de derivación de claves y se pueden recuperar con una sola frase de contraseña.

Algoritmos criptográficos

El cifrado puede ser fuerte o débil, medido por el tiempo y la cantidad de recursos necesarios para recuperar texto no cifrado de su texto cifrado.

1) El cifrado convencional hace un buen trabajo al proteger los datos archivados, pero puede ser muy costoso cuando se protegen los datos en tránsito.

#2) El cifrado de clave público-privado asimétrico moderno resuelve el problema de la distribución de claves.Métodos como OpenPGP utilizan un híbrido de criptografía de clave pública (cifrado asimétrico) y cifrado convencional.

Los cifradores son funciones matemáticas que permiten el cifrado y descifrado de la información. Utilice una clave, que es una palabra, un número o una frase, para cifrar texto sin formato.Diferentes claves darán como resultado diferentes textos cifrados o hashes.

#3) Un algoritmo criptográfico recopila datos aleatorios para inyectar en su función matemática y entradas de mensajes simples para producir texto cifrado.

La siguiente imagen explica cómo funciona el algoritmo de cifrado: Algoritmos criptográficos 4) Los cifrados funcionan mediante el uso de diferentes estrategias para ocultar mensajes.

Pueden combinarlo con datos adicionales, invertirlo o transferirlo, estos son solo algunos ejemplos.

#5) Por ejemplo, en criptografía de clave simétrica, el algoritmo podría utilizar cifrados de transposición en los que el orden de las unidades en texto sin formato se reordena regularmente para ocultar el mensaje.La función o dígito utilizado se denomina función bidireccional.El texto cifrado es una permutación del texto sin formato.En este caso, para descifrar el mensaje, se aplica una función inversa al texto cifrado para restaurar el orden original del texto y volver al texto no cifrado.

#3) ¿Cómo funcionan las claves privadas y públicas para proteger los datos?

Cómo funcionan las claves privadas y públicas para proteger los datos

i) El cifrado con pares de claves públicas y privadas es un proceso matemático.Una vez que la clave privada se ha utilizado para crear una firma digital, la transacción es única para cualquier otra y no puede ser copiada por nadie fuera o dentro de la cadena de bloques.

ii) Una firma para una transacción determinada no puede ser similar a una firma para una transacción diferente, incluso cuando se utiliza la misma clave privada para generar las dos firmas.

iii) Además del hecho de que las claves se ocultan matemáticamente mediante el hash, la relación entre ellas es difícil de desentrañar.Así que el mensaje original tan protegido es difícil de encontrar.

iv) La protección de los datos, la información y las transacciones con claves privadas y públicas se basa en la idea de que, si bien es fácil encontrar el producto de dos números primos grandes, es cada vez más difícil e imposible encontrar factores de un gran número si sólo se tienen factores primos muy grandes.

v) Esto se debe a que se necesitarían muchos miles de años para calcular, por cualquier método posible que incluya actualmente la computadora más rápida, los factores del número.

Se dice que dos números son congruentes en la forma si su diferencia es divisible por el módulo.El número 30 es congruente con 9 módulo 7 porque la diferencia entre 30 y 7 es divisible por 7.

En otras palabras, se expresa como; >> aMódulo b (mod l) si y solo si a = kl + b donde k es un entero, aeb son congruentes y módulo entre sí.

Si Tom quiere recibir un mensaje de Harry, es el único que puede decodificar el mensaje, incluso si todos pueden escribir el mensaje en código.Tom elegirá dos primos aeb muy grandes, luego escribirá k = ab y co-determinará el mensaje usando k pero aeb son necesarios para decodificar el mensaje.

Tom elige dos números aeb donde k = ab mientras que l = mínimo común múltiple {a-1, b-1}Tom, que quiere recibir un mensaje privado y segurode Harry elige donde c>1 y c es co-primo con l que significa c, no tengo factores comunes.

Tom también encontrará t sólo menor que l, donde ct = 1 (mod l).
Tom muestra públicamente la identidad de c y k mientras mantiene a, b, t privado.

Harry luego envía el número único como un mensaje a Tom; L y k son cubrirme y mantener la condición 0<L<k.
Harry encuentra L d donde L d = L c (mod k) y envía el mensaje L d a Tom.
Después de recibir el mensaje L d de Harry, Tom lo decodifica usando a, b, c, t, l, k para encontrar L d .

Para decodificar, Tom usará el teorema que; (L d t MóduloL (mod k). 

Ejemplo;

  • Harry envía el mensaje L a Tom; Tom elige a = 17, b = 23; que significa k = 39, l = 176, c = 3 y t = 59
  • Tom le dice a Harry k = 391 y c = 3 (nadie puede encontrar t a pesar de que tiene k y c).
  • Harry calcula L d = 180 usando L d = L c (mod k) con conocimiento de c y k.
  • Tom recibe el mensaje en el código 180.
  • Tom calcula L d ) tL Módulo (mod k). lMódulo180 59 (mod 391) y decodifica el mensaje secreto de Harry.
  • El ordenador utiliza elMódulomódulo de cálculo us para determinar los resultados de lafunción anterior.

idealmente

  • Si aMódulob (mod n), n divide ab y si n divide a –b entonces n divide (ab)c = ac-bc que significa acMódulobc(mod n); y
  • como k bMódulo k (mod n)
  • La solución sigue este ejemplo; Para encontrar x en la ecuación 0MóduloXMódulo100; y 17 3Módulox(mod 101);
  • Dado que 17 3 es demasiado grande para la mayoría de las calculadoras, comenzamos con 17 6 = 24137569 y el primer dividendo por 101, encontramos que 17 6 = (238985) (101) + 84 por lo que sabemos 17 6Módulo84 (mod 101), que se puede utilizar para hacer frente a usados

17 13 , que es = (17 6 ) 2 x 17 queMóduloes84 2 x 17Módulo 119952 (mod.10)Módulo65 (mod.101).

Así que x = 65.

#4) Creación de firmas digitales

Ahora entendamos cómo se crean las firmas digitales blockchain y su papel en la confidencialidad.

Las claves públicas se usan públicamente, si es de forma segura, a través de certificados digitales, como en el cifrado de sitios web y la jerga de correo electrónico.Los certificados son emitidos por la entidad de certificación o ca. El certificado digital contiene información personal de la misma manera que la clave pública.

La autenticidad de una Firma Digital, a su vez firmada, se demuestra mediante la verificación de su firma.En el cifrado de correo electrónico y web, las claves públicas de ca se utilizan para verificar las firmas de los certificados digitales emitidos antes de verificar la autenticidad de la información y el mensaje.

En las cadenas de bloques, la clave privada se utiliza para firmar digitalmente una transacción.A continuación, su clave pública se utiliza para comprobar que los mensajes así creados con las claves privadas correspondientes son auténticos mediante la verificación de la autenticidad de las firmas digitales en esos mensajes.Esto es lo que sucede cuando envía una transacción desde su billetera privada al sistema blockchain.

De esta forma, las claves privadas garantizan la confidencialidad de los datos enviados.

La creación de firmas digitales es un proceso informático matemático y sigue los siguientes procesos: Cómo se crean las firmas digitales en blockchain y su papel en la confidencialidad En el último paso, los dos valores hash son idénticos cuando el mensaje o la transacción no se altera o altera.

El mensaje se verifica como auténtico; de lo contrario, se rechaza como manipulación o no genuina.

Luego, si se altera una transacción en una cadena de bloques, se produce un hash distinto al formado por el remitente o su máquina durante el envío, donde la transacción original se descifra primero con la clave privada del destinatario.

Esta idea se utiliza en el comercio de criptomonedas de ida y vuelta y para hacer pagos de criptomonedas.

Otras estrategias de seguridad clave dentro de blockchains son:

  • El protocolo de dirección de billetera multifirma dentro de la cadena de bloques permite la producción de copias de claves para cada propietario de la cartera.Por ejemplo, se aplica cuando una billetera es propiedad de una familia o empresa, y tres o más partes deben firmar una transacción para ser autorizadas.
  • Con una billetera multifirma, una parte no puede gastar criptomonedas sin que otras sean testigos.La transacción debe estar firmada por más de una de las partes que poseen la llave, para gastar los fondos.
  • Algunas billeteras en línea y sistemas de cadena de bloques utilizan un protocolo de firma múltiple en el que una clave privada se almacena en el dispositivo de un usuario, la otra se guarda por el usuario fuera de línea o en un lugar separado, y la otra se deja al proveedor de servicios.Cada uno puede desbloquear la billetera o el servicio si uno se pierde o se pierde.

Pasando a la seguridad en línea, algunos sistemas permiten la generación de claves privadas como enlaces de una sola vez para cada sesión; conocido como el secreto hacia adelante.

#5) ¿Cómo ayuda el hash a proteger los datos en la cadena de bloques?

En el hashing, los datos de entrada pasan a través de una función matemática o fórmula denominada función hashing.La función convierte la entrada en una salida que no tiene sentido a menos que se devuelva al mensaje original.

  • La salida debe tener la misma longitud, independientemente de la longitud de la entrada.Por ejemplo, en una cadena de bloques de Bitcoin, que utiliza el algoritmo de prueba de trabajo, SHA-256 es el algoritmo utilizado y produce un hash a lo largo de 256 bits o 64 caracteres.
  • Dos entradas diferentes, incluso las que difieren ligeramente, como las letras mayúsculas y minúsculas, no pueden tener una salida similar.
  • La misma entrada representa la misma salida sin ninguna variación para garantizar la coherencia, independientemente de cuántas veces se aplica un algoritmo hash a la función.
  • El proceso es irreversible.Significa que comenzar con la salida y el hash no produce la entrada que la produce.

Volviendo a la cadena de bloques, que es una cadena de bloques cada uno que contiene un conjunto de datos, el bloque tiene un hash o una salida generada relacionada con los datos en la cadena de bloques.Cualquier cambio en los datos significaría una obligación de modificar el hash.Además, dado que cada hash de bloque también se genera con respecto al hash del bloque anterior, todos los bloques están interconectados.

Por lo tanto, cambiar los datos de un bloque significaría cambiar todos los hashes del bloque.Este es un aspecto importante de la protección de datos en una cadena de bloques, ya que los datos están interconectados de forma segura en una cadena de bloques es inmutable.

Vinculación de datos de bloques, identificadores de bloques/hash y bloques en una cadena de bloques: Cómo el hashing ayuda a proteger los datos en una cadena de bloques Los identificadores hash se interconectan y garantizan la seguridad y la inmutabilidad de los datos en una cadena de bloques.

El proceso de verificación de transacciones utiliza este mecanismo de hash.En esto, la persona que con éxito hashed un bloque, lo extrae y recibe la recompensa.El minero repetidamente intenta encontrar el valor hash que produce el hash de salida deseado necesario para extraer un bloque válido en la cadena.

#6) Criptoeconomía y seguridad blockchain

La criptoeconomía utiliza las mismas ideologías que la teoría de juegos donde las reglas predefinidas y las recompensas determinan matemáticamente las decisiones a tomar en diferentes situaciones.En criptoeconomía, el comportamiento de los nodos en la cadena de bloques está determinado por la criptoeconomía.

  • Las ideologías económicas están codificadas en protocolos de blockchain, incluido el comportamiento de los participantes y los posibles resultados de los comportamientos.
  • La criptoeconomía fomenta el comportamiento positivo y honesto y recompensa a los participantes que participan en dicho comportamiento mientras desalienta el comportamiento dañino o defectuoso.

Un ejemplo es recompensar a aquellos que apoyan la red comprometiendo su poder de procesamiento informático a través de premios de minería en Bitcoin.Al mismo tiempo, los nodos deshonestos o ineficientes son castigados expulsándolos de la red.

  • Equilibrar las recompensas a través del consenso y los algoritmos criptoeconomía garantiza una seguridad de red adicional porque muchas personas están motivadas para apoyar y participar positivamente en la red.Esto desautorización de la posibilidad de que más otros cometan tasas de hash en actividades maliciosas a un solo grupo o entidad que podría conducir a ataques del 51%. Por ejemplo, la competitividad de la red Bitcoin minimiza la probabilidad de ataques maliciosos.
  • Criptoeconomía, asegurando que una gran cantidad de tasas de hash se involucran en la red por tantas personas y asegura que las inseguridades como el ataque del 51% son difíciles y costosas, si no imposibles de realizar. Por ejemplo, en Bitcoin, sería altamente punitivo en términos de costos llevar a cabo un ataque de este tipo por una recompensa potencial muy pequeña.

Por lo tanto, las cadenas de bloques tienen la característica conocida como tolerancia a fallos bizantina (BFT).Esto define la capacidad de la red para seguir funcionando normalmente incluso cuando algunos nodos están en peligro o actúan maliciosamente.Este es el caso mientras el incentivo para un comportamiento honesto siga siendo mayor que para las actividades perjudiciales que se establecerían como prohibitivas.

Las redes blockchain más pequeñas con tasas de hash reducidas pueden, sin embargo, sufrir ataques del 51% porque las tasas de hash totales son muy pequeñas y es conveniente involucrar una gran cantidad de tasas de hash para atacar el 51% de los nodos y controlar la red.

7) Computadoras cuánticas y blockchains resistentes a la cuántica

Usando algoritmos informáticos ultrarrápidos, puede ser más fácil y rápido calcular, en cuestión de segundos, los factores de un gran número, incluso si tiene factores primos muy grandes.Esto significa que sería posible violar las cadenas de bloques protegidas con los algoritmos de cifrado actuales.Esto se debe a que sería posible descubrir claves criptográficas en cuestión de segundos.

  • Para responder a esto, han comenzado a surgir debates y trabajos sobre blockchain que pueden contrarrestarlo.Una cadena de bloques tan resistente a las que haría aún más difícil para las computadoras cuánticas romper cadenas.
  • En lugar de usar algoritmos criptográficos actuales que no pueden soportar computadoras cuánticas, estas cadenas de bloques usarían algoritmos que podrían generar claves más poderosas que resistan el desafío de las computadoras cuánticas.

Conclusión

Este tutorial tuvo en cuenta los conceptos básicos y el funcionamiento del cifrado, el hashing, las firmas digitales, así como el consentimiento y la criptoeconomía en la protección de blockchain.Hemos visto que si bien el cifrado es el método central de protección de las cadenas de bloques, otras técnicas también juegan un papel importante en hacer que las cadenas de bloques sean seguras.

Hemos visto que las firmas digitales ayudan a mantener la autenticidad y confidencialidad de las transacciones, aunque el hash y el cifrado de claves garantizan que el secreto desempeñe un papel importante en la seguridad de la cadena de bloques.

Lectura recomendada =>> mejor software dns blockchainHemos visto que la criptoeconomía y la descentralización animan a más usuarios a comprometer sus recursos a promover y mantener y mantener la continuidad de la red en lugar de hacer mayores esfuerzos paradestruirla.

Open

info.ibdi.it@gmail.com

Close