Mind map: GREEN
-
Smart Contracts
-
Plataformas
-
Solana
-
Hyperledger Fabric
-
HydraChain
-
RootStock (Bitcoin)
-
Ehereum
-
Corda
-
Hyperledger Sawtooth
-
Stellar
-
Definición
-
Programa almacenado en una Blockchain que se ejecuta cuando se cumplen unas condiciones predeterminadas. Es una colección de código (sus funciones) y datos (su estado) que reside en una dirección específica en la Blockchain.
-
Elementos
-
Acciones
- Actividades que lleva a cabo el SC
-
Condiciones
- Circunstancias ante las que se ejecuta el SC.
-
Tipos
-
On-chain
- Implementan la lógica empresarial como transacciones en la blockchain.
-
Instalados
- Lógica empresarial establecida en los validadores antes de que se inicie la red.
-
-
Caso de Uso
-
Estaciones de recarga de Vehículos Eléctricos
-
Simuladores de mobilidad urbana
-
SUMO
-
Simulación de tráfico multimodal, microscópica y de código abierto muy exendida que permite simular cómo se desplaza una demanda de tráfico compuesta por vehículos individuales a través de una red de carreteras.
-
MATSim
-
Framework de código abierto para realizar simulaciones de demanda y replanificación de transporte a gran escala basado en agentes autónomos.
-
OpenTrafficSim
-
Simulador de tráfico urbano de código abierto de caracter general basado en Unidades de Viaje Generalizada, o GTU
-
TRANSIMS
-
Conjunto integrado de herramientas desarrolladas para realizar análisis de sistemas de transporte regionales basado en autómatas celulares.
-
OpenTNSim
-
Paquete de python para investigación del comportamiento del tráfico naval, con el fin de comparar las consecuencias de diferentes escenarios de tráfico y configuraciones de red.
-
Repast Suite
-
Plataformas para desarrollar simulaciones de múltiples agentes autónomos interactivos, no especializadas en la simulación de tráfico urbano,
-
-
-
Blockchain
-
Generaciones
-
Gen 1
-
Sólo criptomonedas
-
Ej: Bitcoin
-
-
Gen 2
-
SC y DApps
-
Ej: Ethereum
-
-
Gen 3
-
Escalabilidad e interoperabilidad
-
Ej: Cardano
-
-
Características
-
Descentralización
-
Métodos
-
Desintermediación
- Consiste en suprimir el papel de agentes intermediarios que realicen o validen una transacción entre dos partes. Descentralización pura.
-
Competición
- En vez de suprimir directamente al intermediario, diferentes agentes compiten por ser aquel que ofrece el servicio de mediación entre ambas partes.
-
Entidades descentralizadas
-
Organizaciones Autónomas Descentralizadas (DAOs)
- Software que corre en la blockchain basado en la estructura de una organización real, con IAs que interactuan entre sí de forma independiente sin intervención humana.
-
Sociedades Autónomas Descentralizadas (DASes)
- Toda una sociedad puede funcionar en una Blockchain con la ayuda de múltiples y complejos contratos inteligentes y una combinación de DAO y DApps que se ejecutan de forma autónoma.
-
Aplicaciones Descentralizadas (DApp)
-
Aplicación creada en una red descentralizada que combina un contrato inteligente y una interfaz de usuario
-
Tipo 1
- Red Blockchain propia
-
Tipo 2
- Red Blockchain ya establecida. Protocolos propios.
-
Tipo 3
- Red Blockchain y protocolos ya establecidos.
-
-
Empresas Autónomas Descentralizadas (DACs)
- Implementan un negocio real con el objetivo de obtener beneficios económicos, a diferencia del resto de DAOs que generalmente se consideran sin ánimo de lucro.
-
Agentes Autónomos
-
Dispositivo o sistema de software que toma información de su entorno y es capaz de tomar decisiones en nombre de algún creador o propietario pero sin intervención directa de este.
-
-
Consenso
-
Proof-of-Work
-
Los mineros tienen que emplear cierta cantidad de energía en resolver un puzle criptográfico para poder validar un bloque.
-
Proof-of-Stake
-
Los mineros compran su derecho a validar bloques apostando una cierta cantidad de tokens que solo recuperan si sus bloques son aceptados.
-
Delegated-Proof-of-Stake
-
Similar a PoS, pero los usuarios votan a delegados (validadores), para que verifiquen y produzcan bloques. Después estos validadores pueden distribuir las recompensas de sus bloques entre quienes votaron por ellos.
-
Practical Byzantine Fault Tolerance
-
Algoritmo de no bifurcación basado en líderes. Todos los nodos están conectados a todos los demás nodos, todos los nodos son conocidos y no se permite que nodos aleatorios se unan al grupo.
-
Proof of Elapsed time
-
Se seleccionan pares aleatorios para ejecutar solicitudes a un ritmo predeterminado en un Trusted Executed Enviromnment (TEE).
-
Proof-of-Burn
-
Los mineros ganan la potestad de minar un bloque al “quemar” (perder) una parte de los tokens que tienen en su poder.
-
Proof-of-Authority
-
Los mineros se eligen de entre una serie de validadores que ponen su identidad real y reputación como garantía de transparencia.
-
Proof-of-Activity
-
Consiste en una combinación de Proof-of-Work y Proof-of-Stake.
-
Proof-of-Capacity
-
Los mineros demuestran su interés legítimo en un servicio mediante la asignación de una cantidad no trivial de memoria para resolver un desafío presentado por el proveedor del servicio.
-
-
Criptografía
-
Funciones de Hash
-
Algoritmo matemático que transforma los datos de entrada en un código único. Esta encriptación de los archivos es unilateral, es decir, no puede revertirse.
- Ej: SHA-256, SHA-3
-
Protocolos de comunicación
-
Algoritmos de clave privada
- Dos partes se comunican a través de una clave secreta que han acordado previamente.
-
Algoritmos de clave pública
-
Mediante una clave visible para todo el mundo y una clave privada distinta para cada uno, dos partes pueden compartir información secreta sin necesidad de haber convenido previamente en una clave común.
-
Firmas digitales
-
-
Zero Knowledge Proofs
-
Pruebas criptográficas cuya finalidad es la de demostrar que se posee una cierta información sin tener que revelar dicha información para ello.
-
Pruebas Interactivas
-
Requieren comunicación directa entre el demostrador y el verificador.
-
Pruebas No Interactivas
-
El demostrador genera una prueba que puede ser comprobada por diferentes verificadores en cualquier momento.
-
zk-SNARK
-
zk-STARK
-
ZK Range Proof
-
-
-
-
Inmutabilidad
- La estructura que resulta de la blockchain y su información es muy difícilmente alterable.
-
Trazabilidad
- Se puede localizar con facilidad de donde proviene cada parte de la información.
-
Anonimidad
- Se preserva la identidad personal de los usuarios mediante medios de encriptación.
-
Aplicaciones
-
Internet of Things
-
Atonomi
-
Registro de identidad inmutable y seguimiento de la reputación de dispositivos IoT para generar un entorno de dispositivos de confianza.
-
Helium
-
Red inalámbrica descentralizada que permite a los dispositivos de cualquier parte del mundo conectarse a Internet y geolocalizarse sin necesidad de un hardware de localización por satélite
-
IBM Watson IoT Platform
-
Permite a dispositivos IoT enviar datos e invocar transacciones de contratos inteligentes en IBM Blockchain Platform o en la Blockchain de código abierto Hyperledger.
-
MediLedger
-
Permite a proveedores y compradores de productos farmacéuticos tener versiones de los contratos de venta actualizadas de forma automática, evitando discrepancias o fallos de comunicación.
-
-
Criptomonedas
-
Bitcoin
-
Ethereum
-
XRP
-
Cardano
-
Thether
-
-
Energía
-
Powerledger
-
Permite a pequeños usuarios locales vender y distribuir energía solar a consumidores cercanos sin necesidad de intermediarios y de este modo comenzar a descentralizar la industria energética global.
-
ImpactPPA
-
Permite a los consumidores de energía "prepagar" la electricidad desde un dispositivo móvil.
-
Greeneum
-
Ofrecen a las empresas la gestión y el comercio en tiempo real de las emisiones de carbono y las energías renovables.
-
Energy Web
-
Acelerar un sistema de electricidad bajo en carbono y centrado en el cliente mediante el uso de Blockchain y tecnologías descentralizadas
-
Electron
-
Permite a los operadores de redes, sistemas, mercados locales de energía y activos energéticos distribuidos desbloquear el valor de la descarbonización de los sistemas energéticos.
-
-
DeFi
-
Finanzas descentralizadas
-
Ecosistema de productos y servicios basados en Blockchain que sustituye a los intermediarios financieros tradicionales por un software abierto, de libre acceso, autónomo y transparente para unas finanzas globales y democratizadas.
-
-
Web3
-
Web descentralizada
-
Mientras que Web1 consistía en una web sólo de lectura y Web2 permitía la lectura y escritura, Web3 añade la propiedad de la web por parte de los usuarios, conviritendose en la versión de lectura, escritura y ejecución de la web.
-
-
Arquitectura
-
Bloques
-
Hash del bloque
-
Código identificatorio único del bloque obtenido a partir de el resto de elementos de este y una función de Hash.
-
Hash of bloque anterior
-
Registro del código del bloque anterior para mantener el orden y la inmutabilidad de la cadena.
-
Contenido (ej: transacciones)
-
Cada red almacena en sus bloques un tipo diferente de información y esta puede ser de cualquier formato. En el caso de plataformas de criptomonedas, lo que se almacena en los bloques es el registro de transacciones entre usuarios.
-
Nounce
-
Número arbitrario que los mineros deben ajustar para obtener un hash del bloque con unas propiedades determinadas a fin de poder validar dicho bloque (en algoritmos como PoW).
-
Información adicional
-
Fecha creación
-
Número de bloque
- Orden del bloque dentro de la cadena.
-
Nivel de dificultad
- Dependiendo de la cantidad de mineros activos algunas redes modifican la dificultad de sus pruebas.
-
-
Nodos
- Cada uno de los participantes de la red, que almacena su propio registro de las transacciones de la red (ledger) y que está en contacto con el resto de usuarios.
-
Cadenas
- Sucesión de bloques unidos por el hash
-
Canales
- Vías de comunicación entre todos o parte de los usuarios de una red.
-
Reglas
-
Smart Contracts
-
Regulan las transacciones, las recompensas y restricciones de los usuarios en la blockchain.
-
-
Plataformas Open-Source
-
Hyperledger
-
Hyperledger Foundation es una comunidad de código abierto centrada en el desarrollo de un conjunto de marcos, herramientas y bibliotecas estables para la implantación de Blockchain a nivel empresarial, alojada en The Linux Foundation.
-
Fabric
- Plataforma de uso muy extendido, diseñada para su uso en contextos empresariales no enfocados en criptomonedas.
-
Indy
-
Iroha
-
Sawtooth
-
-
XRP
- Permite a las instituciones financieras que forman parte de la red RippleNet enviar dinero a nivel mundial, de forma instantánea, fiable y por fracciones de céntimo.
-
Tron
- Proyecto pensado para el despliegue de smart contracts para crear aplicaciones descentralizadas. Utiliza el algoritmo de consenso Delegated Proof-of-Stake, (DPoS).
-
EOSIO
-
Plataforma de Blockchain de alto rendimiento similar a Ethereum, construida para apoyar y operar infraestructuras digitales seguras, conformes y predecibles
-
EOS Public Blockchain
-
-
Cardano
- Plataforma blockchain que utiliza Proof of Stake (PoS), basada en open-source. Combina varias tecnologías para ofrecer seguridad y sostenibilidad en aplicaciones y sistemas descentralizados.
-
Corda
- Plataforma de ledger distribuido autorizada, peer-to-peer (P2P) que permite construir aplicaciones en las que se requiera confianza entre entidades.
-
Quorum
-
EthSigner
-
Tessera
-
GoQuorum
-
Hyperledger Besu
-
-
-
Federated Learning
-
Tipos según ritmo de actualizaciones
-
Síncrono
- Updates del modelo global cuando todos los dispositivos mandan su modelo local.
-
Asíncrono
- No necesita esperar a que todos los dispositivos manden su modelo local.
-
Blockchain + FL
-
Arquitecturas
-
Completamente Acoplado (FuC-BCFL)
-
Clientes FL son parte de la BC
-
Solo algunos son mineros
-
Todos los nodos son mineros
-
-
Acoplado de Forma Flexible (FIC-BCFL)
-
BC recopila el modelo global, separada de nodos FL
-
Ligeramente Acoplado (LoC-BCFL)
-
Modelo global centralizado, BC solo como red de reputación de los clientes.
-
Jerárquico (HFL)
-
Un servidor raíz conectado a múltiples servidores de grupo, que están organizados en una estructura de árbol.
-
-
Tipos según estructura de los datos
-
Horizontal
-
Todos los datasets tienen las mismas variables.
-
Ej: aplicación movil que recopila los mismos datos por parte de diferentes usuarios
-
-
Vertical
-
Diferentes variables en cada dataset.
-
Ej: el banco y el supermercado pueden contener datos diferentes de un mismo cliente. Entrenamiento del modelo más complejo.
-
-
Definición
-
Paradigma de Machine Learning en el que muchos clientes entrenan de forma colaborativa un modelo bajo la orquestación de un servidor central manteniendo en todo momento los datos de entrenamiento descentralizados.
-
Plataformas
-
FLUTE
- Plataforma de código abierto de alto rendimiento para la investigación del aprendizaje federado y las simulaciones offline.
-
FedML-AI
- Ecosistema de machine learning end-to-end diseñado para que las personas u organizaciones transformen sus datos en inteligencia con el mínimo esfuerzo.
-
FATE FL
-
TensorFlow Federated
-
Sherpa.AI
-
PySyft
-
Open FL
-
PADDLE FL
-
Tipos según aplicación
-
Cross-silo
-
Pocos dispositivos y muy fiables.
-
Ej: entrenamiento de modelos a partir de datos médicos personales de los pacientes de un conjunto determinado de hospitales asociados.
-
-
Cross-device
-
Muchos dispositivos y poco fiables.
-
Ej: entrenamiento del teclado predictivo de Google a través de cientos de miles de dispositivos móviles de los usuarios.
-
-