Una característica de Constantinople para Ethereum propuesta por Buterin supuestamente incluye un vector de ataque

El cofundador de Ethereum (ETH), Vitalik Buterin, propuso una nueva función de creación de contrato inteligente denominada "Create2". Esta función, según se informa, introduce un nuevo vector de ataque a la plataforma, según un post en el foro de desarrolladores de Ethereum, Ethereum Magicians, publicado el 8 de febrero.

Según un post de Medium hecho por el desarrollador de software Tim Cotten, la función de creación original crea un nuevo contrato en una dirección que se calcula (a través de una función de hash) con la dirección del creador y un número aleatorio (nonce) asociado a ésta. Por otro lado, Create2, al parecer, hace lo mismo, pero con la diferencia de que el contrato se crea en una dirección que puede ser determinada de antemano por diferentes partes.

En la página de GitHub dedicada a esta Propuesta de Mejora de Ethereum (EIP), EIP-1014, la motivación para la nueva función se describe como la capacidad de permitir una interacción con un contrato que aún no existe en la blockchain.

Puede interesarte: El mercado está demasiado centrado en la bifurcación Constantinopla de Ethereum según un informe

Más específicamente, este EIP permitiría interacciones "con direcciones que aún no existen en la cadena pero en las que se puede confiar solo para que eventualmente contengan código". Este EIP ha sido aprobado y está programado para su implementación en la próxima bifurcación dura de Constantinople, según una publicación del blog de ConsenSys.

Sin embargo, el científico jefe de la 'start-up' de blockchain Indorse, Rajeev Gopalakrishna, ha sugerido que la implementación de Create2 en Ethereum podría tener implicaciones de seguridad negativas para la plataforma. Según él, Create2 implica que los contratos inteligentes podrán cambiar su dirección después de ser implementados.

Gopalakrishna dijo que en algunas circunstancias, al usar esta función, es posible reemplazar un contrato inteligente previamente benigno por uno potencialmente malicioso. Jason Carver, ingeniero senior de la Fundación Ethereum, explicó que cree que será posible utilizar Create2 para reemplazar un contrato autodestruido con uno nuevo.

No dejes de leer: Líder de equipo de Ethereum: La bifurcación Constantinopla se activará a finales de febrero

Gopalakrishna también señaló:

"¿No cambia esto una invariante importante asumida por los usuarios hoy en día e introduce un serio vector de ataque potencialmente con CREATE2? ¿No significa esto que cualquier contrato posterior a Constantinople con una [función en su código] de autodestrucción es ahora más sospechoso que antes?"

Sin embargo, el desarrollador de software Noel Maersk especificó que la función de autodestrucción en sí misma no es sospechosa. Según él, lo que debería considerarse sospechoso en los contratos de una cadena de bloques habilitada para Create2 es un código de inicio no determinista, ya que hace prever qué código contendría el nuevo contrato generado.

De esta manera, un contrato malintencionado podría apoderarse de las interacciones preaprobadas con la dirección que podrían permitir que el atacante, por ejemplo, robara algunos tokens. Además, Carver también señala que "parece que muchos desarrolladores de contratos no son conscientes de que (los nuevos) contratos podrán cambiar durante su curso después de" la implementación de esta actualización.

Sigue leyendo: Las recompensas diarias de la minería de Ethereum se encuentran en el nivel más bajo jamás reportado

Cointelegraph informó recientemente que los desarrolladores principales de Ethereum (ETH) retrasaron la decisión de implementar el algoritmo de prueba de trabajo (PoW) resistente a circuitos integrados (ASIC) específico de la aplicación hasta que un tercero haya auditado el algoritmo.

Además de implementar Create2, la próxima bifurcación dura de Constantinople también está destinada a retrasar la llamada "bomba de dificultad" y presentar la llamada "thirdening": una reducción de la recompensa por cada bloque minado de 3 a 2 ETH.