<aside> 💡 ¿Necesitas documentación para seguir desarrollando tus ideas descentralizadas? ¡Este es el mejor lugar para buscar!****

</aside>

Conceptos básicos futuros

En principio los números aleatorios no se pueden generar ya que las blockchain son deterministas, para validar una transacción los diferentes nodos deben ejecutar la misma función y obtendrían diferentes valores.

Ante esto existe la posibilidad de crear números ‘pseudoaleatorios’ a partir del ‘block time stamp’ o marca del tiempo del bloque, pudiéndose obtener un número aleatorio pero que podría ser manipulado por algún pool de minería o alguien con un gran poder de cómputo, por lo cual no se recomienda utilizar este método cuando del valor a obtener dependerá una gran suma de dinero, por ejemplo en el caso de aplicaciones de loterías.

Como se mencionó previamente las blockchains son deterministas y esto representa ciertas limitaciones, para solventar esto existen oráculos de precios, números aleatorios y diferentes datos a traer desde la web hacia la blockchain, estos oráculos son diferentes servidores que de forma descentralizada validan y comparten la información hacia el contrato inteligente que la solicite. Para aprender más recomendamos la siguiente documentación

https://chain.link/education/blockchain-oracles

Dado que la información está repartida en cientos o miles de nodos, almacenar dicha información en una blockchain es económicamente costoso, para esto existen diversos protocolos que permiten almacenar datos de forma descentralizada para luego en la blockchain solo registrar el link generado, esto es muy útil por ejemplo para almacenar la imagen de un NFT. Ver más IPFS Docs

Los hackeos son algo aún frecuente en blockchain y es un tema muy complejo de solventar, existen diversas empresas dedicadas a las auditorías de contratos y mucha investigación al respecto. Estos son algunos link donde aprender sobre esto:

https://ethereum.org/es/developers/docs/smart-contracts/security/

https://docs.openzeppelin.com/#security_audits

Los siguientes son dos juegos donde practicar y aprender:

Ethernaut

Damn Vulnerable DeFi