¿Qué es la solidez?

Solidity es un lenguaje de programación orientado a objetos de alto nivel que se utiliza principalmente para la cadena de bloques Ethereum. Solidity es una gran herramienta para escribir contratos inteligentes, que son códigos autoejecutables que permiten funciones automatizadas complejas. El lenguaje de programación interactúa con la máquina virtual Ethereum (EVM), que es la capa de abstracción entre el código de ejecución y la máquina de ejecución. Está influenciado por los lenguajes C ++, Python y JavaScript.
Tiene que compilarse en instrucciones de máquina de bajo nivel, llamadas Opcodes, ya que EVM no las compila directamente. Solidity es fácil de cambiar y conveniente para escribir código, especialmente para aquellos que ya tienen conocimientos de programación. A pesar de haber sido propuesto inicialmente por el fundador de Solidity y Polkadot, Gavin Woods, en 2014, fue desarrollado por la fundación Ethereum y el equipo del proyecto Solidity.
Pero como cualquier lenguaje de programación, tiene un par de problemas. Primero, la naturaleza inmutable de blockchain asegura que un contrato inteligente, una vez implementado, no pueda ser eliminado o modificado de ninguna manera. Significa que cada línea de código tiene que ser perfecta o, de lo contrario, corre el riesgo de ser pirateada o explotada, ya que existe tanto tiempo como la red Ethereum. La solidez también es vulnerable a los ataques de reentrada y otros problemas de seguridad. Fue diseñado durante un tiempo en el que la red Ethereum no se implementó. Por lo tanto, su diseño debe actualizarse para adaptarse a los requisitos actuales.