Algorand
Algorand | ||
---|---|---|
Tipo | criptomoneda y organización | |
Fundación | 2017 | |
Fundador | Silvio Micali | |
Sitio web | www.algorand.com | |
Algorand es una criptomoneda basada en tecnologías de cadenas de bloques (blockchain ) que aspira a ser escalable.[1] La plataforma soporta Smart contracts,[2] y su algoritmo de consenso se basa en una prueba de apuesta y un protocolo de acuerdo Bizantino.[1][3][4] Su moneda nativo es ALGO.
Historia
[editar]Algorand fue fundada en 2017 por Silvio Micali, un profesor del MIT.[5][6] Algorand está compuesto de una empresa y una fundación. La Fundación Algorand maneja el crecimiento del ecosistema, la financiación de premios, investigaciones criptográficas, gobernanza on-chain y la descentralización de la red Algorand, incluyendo nodos. El desarrollo del protocolo de Algorand está supervisado por Algorand Inc, una corporación privada establecida en Boston.
La red de prueba de Algorand fue lanzada al público en abril de 2019,[7] y la red principal en junio de 2019.[8]
Investigación
[editar]La Fundación Algorand es la organización paraguas para el núcleo del equipo de blockchain para criptografía y ciencias de la computación dirigida por el criptógrafo Tal Rabin.
Otros miembros notables del equipo de investigación son Craig Gentry y Shai Halevi.
Diseño
[editar]Algoritmo de consenso
[editar]Algorand usa una protocolo de acuerdo Bizantino que se basa en el proof of stake. Siempre que la mayoría del stake esté en manos no maliciosas, el protocolo puede tolerar usuarios maliciosos, consiguiendo consenso sin una autoridad central.
El consenso en Algorand requiere 3 pasos: proponer,[9] confirmar y escribir el bloque en la blockchain. Los pasos son proponer, voto débil y voto de certificación.
La primera fase usa principios de la prueba de stake. Durante esta fase, un comité de usuarios en el sistema se selecciona de manera aleatoria, aunque de una manera ponderada, para proponer un nuevo bloque. La selección del comité se realiza mediante un proceso llamado "cryptographic sortition", donde cada usuario determina si están en el comité ejecutando un función random verificable (FRV). Si la FRV indica que el usuario es elegido, la VRF devuelve una prueba criptográfica que se puede usar para verificar que un usuario que el usuario está en el comité. La probabilidad de que un usuario esté en comité estará influenciada por el número de tokens que tiene dicho usuario en stake.[10][3][4]
Después de determinar que un usuario está en el comité de selección del bloque, ese usuario puede proponer un bloque y lo disemina en la red para que sea analizado durante la 2ª fase. El usuario incluye una prueba criptográfica desde a FRV en su bloque propuesto para demostrar su participación en el comité.[3][4]
En la 2ª fase un protocolo de acuerdo Bizantino se usa para votar en los bloques propuestos. En esta 2ª fase se forma un nuevo comité por medio de una sortición criptográfica. Cuando los usuarios han determinado que están en este comité de 2ª fase, analizan los bloques propuestos que reciben (incluyendo la verificación de la 1ª fase del comité) y votan si alguno de los bloques pueden ser adoptados. Si el comité de votación llega a un consenso en un nuevo bloque, entonces el nuevo bloque se disemina en la red.[11][3][12]
Mediante el algoritmo de consenso de Algorand, la pertenencia en ambos comités cambia en cada fase. Esto protege a los usuarios contra ataques dirigidos, dado que un atacante no sabrá de antemano qué usuarios van a estar en el comité.[13] 2 bloques diferentes de Algorand no pueden alcanzar consenso en la misma ronda.[14] De acuerdo a un auditoria de seguridad externa, el modelo también tiene en cuenta aspectos temporales y acciones de los adversario, etc. Cuando el adversario tiene control sobre la entrega de mensajes.[15]
Smart contracts
[editar]Los contratos inteligentes en Algorand se conocen como ASC1 (Algorand Smart Contracts). Algorand diferencia los contratos en dos grandes categorías, Smart contracts y firmas inteligentes. El tipo de contrato que se escribe determinará cuándo y cómo la lógica del programa es evaluada. Los contratos de Algorand se escriben en TEAL, que es un lenguaje en ensamblador interpretado por una máquina virtual de Algorand (MVA) que corre en un nodo de Algorand.
Referencias
[editar]- ↑ a b Lepore, Cristian; Ceria, Michela; Visconti, Andrea; Rao, Udai Pratap; Shah, Kaushal Arvindbhai; Zanolini, Luca (14 de octubre de 2020). «A Survey on Blockchain Consensus with a Performance Comparison of PoW, PoS and Pure PoS». Mathematics (en inglés) 8 (10): 1782. doi:10.3390/math8101782.
- ↑ Bartoletti, Massimo (2020). «A formal model of Algorand smart contracts». Financial Cryptography and Data Security 2021. arXiv:2009.12140.
- ↑ a b c d Xiao, Y.; Zhang, N.; Lou, W.; Hou, Y. T. (28 de enero de 2020). «A Survey of Distributed Consensus Protocols for Blockchain Networks». IEEE Communications Surveys and Tutorials 22 (2): 1432-1465. ISSN 1553-877X. S2CID 102352657. arXiv:1904.04098. doi:10.1109/COMST.2020.2969706.
- ↑ a b c Wan, Shaohua; Li, Meijun; Liu, Gaoyang; Wang, Chen (1 de noviembre de 2020). «Recent advances in consensus protocols for blockchain: a survey». Wireless Networks (en inglés) 26 (8): 5579-5593. ISSN 1572-8196. S2CID 213063001. doi:10.1007/s11276-019-02195-0.
- ↑ Zhao, Helen (23 de febrero de 2018). «Bitcoin and blockchain consume an exorbitant amount of energy. These engineers are trying to change that». CNBC (en inglés). Consultado el 3 de abril de 2021.
- ↑ «MIT professor debuts high-speed blockchain payments platform Algorand». VentureBeat (en inglés estadounidense). 15 de febrero de 2018. Consultado el 3 de abril de 2021.
- ↑ «Algo VC Fund Raises $200M to Fast-Track Its Own Cryptocurrency». www.bizjournals.com. Consultado el 3 de abril de 2021.
- ↑ «Bahrain's Shariah Review Bureau Certifies Blockchain Firm Algorand As Shariah Compliant». Crowdfund Insider (en inglés estadounidense). 23 de octubre de 2019. Consultado el 3 de abril de 2021.
- ↑ https://developer.algorand.org/docs/get-details/algorand_consensus/
- ↑ Lepore, Cristian; Ceria, Michela; Visconti, Andrea; Rao, Udai Pratap; Shah, Kaushal Arvindbhai; Zanolini, Luca (14 de octubre de 2020). «A Survey on Blockchain Consensus with a Performance Comparison of PoW, PoS and Pure PoS». Mathematics (en inglés) 8 (10): 1782. doi:10.3390/math8101782.
- ↑ Lepore, Cristian; Ceria, Michela; Visconti, Andrea; Rao, Udai Pratap; Shah, Kaushal Arvindbhai; Zanolini, Luca (14 de octubre de 2020). «A Survey on Blockchain Consensus with a Performance Comparison of PoW, PoS and Pure PoS». Mathematics (en inglés) 8 (10): 1782. doi:10.3390/math8101782.
- ↑ Wan, Shaohua; Li, Meijun; Liu, Gaoyang; Wang, Chen (1 de noviembre de 2020). «Recent advances in consensus protocols for blockchain: a survey». Wireless Networks (en inglés) 26 (8): 5579-5593. ISSN 1572-8196. doi:10.1007/s11276-019-02195-0.
- ↑ Lepore, Cristian; Ceria, Michela; Visconti, Andrea; Rao, Udai Pratap; Shah, Kaushal Arvindbhai; Zanolini, Luca (14 de octubre de 2020). «A Survey on Blockchain Consensus with a Performance Comparison of PoW, PoS and Pure PoS». Mathematics (en inglés) 8 (10): 1782. doi:10.3390/math8101782.
- ↑ Chen, Jing; Micali, Silvio (19 de julio de 2019). «Algorand: A secure and efficient distributed ledger». Theoretical Computer Science (en inglés) 777: 155-183. ISSN 0304-3975. doi:10.1016/j.tcs.2019.02.001.
- ↑ Alturki, Musab A.; Chen, Jing; Luchangco, Victor; Moore, Brandon; Palmskog, Karl; Peña, Lucas; Roşu, Grigore (2020). «Towards a Verified Model of the Algorand Consensus Protocol in Coq». Formal Methods. FM 2019 International Workshops. Lecture Notes in Computer Science 12232. pp. 362-367. ISBN 978-3-030-54993-0. doi:10.1007/978-3-030-54994-7_27.