Instituto CoinEx | Seguridad de los activos en la blockchain: razones por las que se requiere el método en tiempo real como una capa de seguridad adicional

CoinEx en Español
10 min readApr 26, 2022

--

Desde el verano DeFi del 2020, el impulso dado por el continuo avance de las infraestructuras blockchain, estos protocolos DeFi han evolucionado para poder satisfacer cada una de las necesidades, volviéndose cada vez más sofisticados, cubriendo las estrategias de farming de rendimiento basadas en derivados de bloques, plataformas de créditos y protocolos de préstamos en cadena que conectan colaterales del mundo real, entre muchas otras más.

Uno de los factores clave detrás del auge de la innovación DeFi es un concepto llamado composición. Cuando se publica un nuevo protocolo DeFi, la mayor parte de su código fuente también está disponible para el público. Esto significa que los códigos fuente de los Smart-contracts de uno o más protocolos DeFi pueden componerse fácilmente para crear uno nuevo. Estos trabajan como bloques de LEGO: ya que se pueden usar bloques en diferentes formas para construir proyectos únicos, reduciendo significativamente el costo de la innovación.

Sorprendentemente, en vista de tales innovaciones, el número de los usuarios DeFi no ha visto ningún crecimiento significativo desde el 2020. Mientras tanto, las instituciones tradicionales no han puesto liquidez en este espacio Blockchain. Una de las principales causas de esta es la preocupación de seguridad de las DeFi.

Las finanzas en el mundo real vienen con un sistema de seguro muy bien establecido. Por ejemplo, cuando se mueven fondos de un Banco A a un Banco B, habrá camiones blindados y policías armados para mantener los fondos seguros, lo cual es un proceso que tranquiliza a los usuarios de esos bancos. Además, los bancos también serán responsables de la propiedad de un cliente y ofrecerán una compensación por cualquier pérdida durante el proceso.

Las DeFi, sin embargo, difieren del sistema financiero tradicional. Los Smart-contract son inmutables por diseño. Son esencialmente cajas negras que no enviarán registros legibles, por lo que las personas no pueden obtener una visión clara de los procesos internos. La mayoría de las auditorías de Smart-contracts no ayudan, ya que se centran sólo en formas conocidas de ataques, en lugar de nuevos tipos de fallas que es muy probable que ocurran. Mientras tanto, muchos protocolos DeFi se etiquetan a sí mismos como un producto de “use bajo su propio riesgo”. Esto puede asustar a los usuarios habituales y hacer que no tengan confianza para depositar la mayor parte de sus activos en un ecosistema DeFi.

Sin embargo, las DeFi no han decepcionado a quienes no confiaban en ellas. Hasta ahora, las DeFi han visto 82 violaciones de seguridad, con una cantidad pirateada inicial de más de 1.8$ mil millones. En particular, el préstamo flash es el ataque más común y representa 33 casos de la cifra anterior. Una de las razones de seguridad detrás de un ataque de préstamo flash es la falta del concepto de un tiempo exacto y un mecanismo de confirmación en la blockchain. Veremos las razones específicas a continuación.

I. El tiempo y la red de las computadoras

Primero veamos cómo funciona el tiempo en los programas de computadora tradicionales.

El tiempo es un concepto esencial para los programas de computadora. Sin el concepto de tiempo, es imposible acceder a cualquier sitio web habilitado para TLS, crear sinergia para ciertos algoritmos, intercambiar secretos o autenticar licencias de Windows. Damos por sentado el cronometraje en las computadoras, pero el intercambio y el seguimiento del tiempo es un problema increíblemente difícil de resolver cuando se trata de operaciones reales.

El tiempo es esencialmente una representación del estado global actual del universo. Esto significa que, en un momento dado, cada entidad debe compartir exactamente el mismo valor. Obviamente, este es un gran problema para las computadoras: supongamos que hay un reloj atómico enorme y de alta precisión en el centro del universo, que transmite datos de tiempo a través de Internet. Un problema durante este proceso es que la transmisión de datos lleva su tiempo. Cuando un dispositivo recibe datos de tiempo a través de Internet y los aplica a sus propios sistemas, el estado global del universo (tiempo) ya habría cambiado. En otras palabras, es imposible que un dispositivo de red esté perfectamente actualizado con el valor de tiempo global real.

Otro problema con el cronometraje en red es que no podemos predecir perfectamente el tiempo requerido para la transmisión de datos: las condiciones de la red cambian constantemente y nadie puede garantizar una confiabilidad perfecta en la naturaleza. Combinado con el primer problema, esto significa que el destinatario tampoco puede replicar perfectamente el valor del tiempo, lo que genera inconsistencias.

El Network Time Protocol (NTP) resuelve este problema a través de la estructura de verificación mutua de los servidores de cronometraje distribuidos en todo el mundo (hasta 15 estratos) y mediante la construcción de un árbol de expansión de la ruta más corta de Bellman-Ford (que reduce las inconsistencias tanto en la latencia como en el tiempo de transferencia). Esto funciona perfectamente bien para las computadoras personales y los servicios centralizados, especialmente con aplicaciones que dependen de una sincronización precisa (por ejemplo, programas de encriptación). A pesar de que las marcas de tiempo derivadas a través de NTP son meras estimaciones, son lo suficientemente precisas y estables para que las aplicaciones de tiempo crítico puedan confiar en ellas.

Fuente: Medium

II. Mecanismo del tiempo en redes Blockchain

El concepto de tiempo también existe en la blockchain. Aunque algunos dicen que la blockchain en sí misma es un derivado del concepto de tiempo, el procesamiento del tiempo de una red de bloques es extremadamente impreciso en comparación con la precisión de 64 bits del sistema NTP. Después de todo, esto también se debe a que los objetivos de servicio del tiempo de la blockchain no son aplicaciones de Smart-contracts sensibles al tiempo como las aplicaciones DeFi. Además, tiene como objetivo permitir la ejecución segura y eficiente del mecanismo de consenso. Un objetivo tan diferente también hace que las redes blockchain sean más tolerantes con las imprecisiones temporales. En los siguientes párrafos, discutiremos algunos mecanismos de consenso populares y cómo determinan el tiempo. Dicho esto, cabe señalar que la confirmación de la hora en las cadenas de bloques suele ser tan imprecisa que no pueden llevar a cabo las operaciones financieras y los controles de seguridad de los activos en la cadena que valen decenas de miles de millones de dólares.

1. Bitcoin:
Bitcoin presenta el concepto de tiempo porque es necesario para su mecanismo de consenso Proof-of-Work. Sin una marca de tiempo válida, la red no puede verificar si una transacción en particular que se extrae está tratando de manipular una anterior. Aunque cada bloque de Bitcoin contiene una marca de tiempo UNIX, la hora de un bloque no es una representación precisa de una marca de tiempo UNIX. Esto se debe a que el consenso de Bitcoin solo considera las marcas de tiempo como parte del sistema de seguridad PoW, no como una herramienta real para medir el tiempo en la blockchain.

Citando a la Bitcoin Wiki, cada bloque contiene una marca de tiempo de UNIX proporcionada por los mineros y se aceptará como válido si es 1) mayor que la marca de tiempo mediana de los 11 bloques anteriores y 2) menor que el tiempo ajustado por la red más 2 horas. Por lo tanto, la diferencia entre los tiempos de bloque y los tiempos de palabra real oscila entre una hora y dos horas.

Fuente: Bitcoin Wiki

2. Ethereum:
En la red Ethereum, los mineros también envían directamente las marcas de tiempo con gran flexibilidad. En pocas palabras, una marca de tiempo de Ethereum puede ser verdadera o falsa, y no hay forma de que el mecanismo de consenso confirme su precisión. Según una publicación en el foro de Ethereum, se pueden implementar varios mecanismos. Se utiliza para evitar la desviación excesiva de las marcas de tiempo de Ethereum: 1) Si la marca de tiempo de un bloque se desvía significativamente del tiempo del mundo real, nadie estará dispuesto a generar más bloques con este bloque como principal; 2) La marca de tiempo del último bloque no puede ser anterior al principal; 3) La dificultad del bloque será la más baja cuando el mismo no se marque antes de lo requerido. Estos mecanismos podrían permitir a los mineros enviar voluntariamente marcas de tiempo que creen que son correctas. Sin embargo, cuando existen otros incentivos externos, la red Ethereum no tiene ningún mecanismo riguroso para garantizar que los mineros aún presenten la marca de tiempo correcta. Por lo tanto, la red no puede garantizar el funcionamiento adecuado de los protocolos sensibles al tiempo (por ejemplo, farming de rendimiento, préstamos). Como tal, las grandes instituciones no confiarán en Ethereum su dinero.

3. Polkadot:
Según el documento de Substrate, Polkadot también marca bloques con marcas de tiempo que los mineros proporcionan directamente. Mientras tanto, no existen mecanismos rigurosos que confirmen o sincronicen dichas marcas de tiempo. El documento también establece que, aunque no se puede probar el tiempo de un bloque, los validadores pueden acordar que está dentro de algún delta del reloj de su sistema.

Fuente: Polkadot Wiki

4. Cosmos:
La Tendermint de Cosmos es el único algoritmo de consenso que escribe tiempo en el mecanismo de consenso, que lo equipa con el concepto de tiempo más robusto. Para ser más específicos, los nodos de un bloque votarán sobre el tiempo que se ha presentado para llegar a un consenso, y solo la marca de tiempo en la que los nodos acuerden se incluirán en el bloque.

Fuente: Cosmos

Las blockchains no solo son imprecisas en términos de la generación de marcas de tiempo, sino que también carecen de un sistema o mecanismo de campaña de tiempo dentro de los bloques. Las transacciones del mundo real se envían y luego se confirman una por una, cada una de las cuales viene con un tiempo y secuencia claros. De esta manera, muchas transacciones falsas no pueden ocurrir o confirmarse. En una red blockchain, por otro lado, las transacciones dentro de cada bloque se empaquetan juntas y no tienen marcas de tiempo precisas una por una.

Aunque todas las transacciones se pueden verificar después de la generación de bloques, es imposible determinar el tiempo de envío y la secuencia específicos de cada transacción. Esto explica en parte por qué se pueden registrar muchos ataques (por ejemplo, préstamos flash o intercambios de flash). Si se proporcionan marcas de tiempo precisas dentro de los bloques como prueba de verificación, los protocolos de aplicación podrían desarrollar algoritmos más seguros y estables. Mientras tanto, debido a sus características intrínsecas, el tiempo es una red de consenso altamente segura que es irreversible e inmutable.

III. Soluciones potenciales

La falta de tiempo en la blockchain se puede resolver internamente o externamente.

Solución interna: se debe introducir un mecanismo de confirmación de nivel de consenso que verifique el tiempo de bloque contra el tiempo del mundo real, o se debe establecer un sistema de tiempo independiente con mayor precisión.

Solución externa: las blockchains necesitan una red descentralizada que utilice un Oracle de tiempo similar a NTP para agregar marcas de tiempo precisas a los bloques y transacciones.

En vista de las múltiples colaboraciones, la solución externa podría ser más adecuada. Suponiendo, por ejemplo, Ethereum y Terra tienen sus propios relojes, si las marcas de tiempo proporcionadas por estos relojes son diferentes, será difícil para nosotros determinar cuál es correcto durante las interacciones entre los dos. Por ejemplo, en una red informática tradicional, en última instancia, sólo un reloj maestro les dice a todos qué hora es. La blockchain también necesita un reloj absoluto.

En el futuro multiverso habilitado por múltiples cadenas, enfrentaremos otro desafío: el número de relojes en todas las computadoras diferentes es mucho mayor de lo que se espera. Por ejemplo, hay relojes de juego, relojes de acumulación de interés de DeFi, relojes blockchain, entre otras. Dado que estos relojes interrumpirán el tiempo en los meta nodos, se necesitará una sola fuente de tiempo confiable para unificar y sincronizar todas las transacciones. Cuando tal tiempo del Oracle Network eventualmente se adopte ampliamente, proporcionará una capa de seguridad adicional, que ofrece confirmaciones de tiempo adicionales a cada transacción, al igual que lo que sucede en el mundo real. El tiempo también se convertirá en una capa de seguridad adicional para las redes blockchain.

Acerca de CoinEx

Haciendo más fácil el trading de criptomonedas.

Como proveedor de servicios de intercambio de criptomonedas global y profesional, CoinEx se fundó en Diciembre de 2017. Es una marca subsidiaria del Grupo ViaBTC, que posee uno de los grupos de minería de BTC más grandes, y que también es el grupo más grande de minería de BCH del mundo.

CoinEx admite el trading de contratos perpetuos, operaciones al contado, de margen y otras operaciones de derivados; y su servicio llega a usuarios globales en casi 100 países/regiones con varios idiomas disponibles, como el español, inglés, chino, coreano, persa, y más…

Llega a CoinEx a través de:
Sitio web | Registro | Discord | Facebook | Instagram | Odysee
Publish0x | Telegram | Telegram Noticias | Twitter |TikTok | YouTube
API | Descarga la APP

El Grupo ViaBTC es

CoinEx Exchange: Intercambio de criptomonedas y sus derivados.
CoinEx Smart Chain: Sistema descentralizado de cadena pública.
OneSwap: Intercambio descentralizado.
ViaBTC Capital: Plataforma de inversión que integra capital.
ViaBTC Pool: Pool de minería de múltiples criptomonedas.
ViaWallet: Billetera móvil de múltiples criptomonedas.

ViaBTC: haciendo del mundo un lugar mejor.

--

--

CoinEx en Español
CoinEx en Español

Written by CoinEx en Español

CoinEx.com es un proveedor global y profesional de servicios de intercambio de monedas digitales. CoinEx, hace más fácil el trading de criptomonedas.

No responses yet