Contratos inteligentes con estado, cambio de claves y actualización rápida

Describiremos tres características completamente interesantes para el protocolo Algorand. Este artículo explicará cuáles son estas funciones y le indicará nueva documentación sobre cómo utilizarlas.
Esperamos recibir comentarios de la comunidad de desarrolladores sobre estas nuevas funciones y su documentación.
¡Publique sus comentarios y preguntas en los foros de Algorand!

Las nuevas características

Contratos inteligentes con estado

Los contratos inteligentes con estado son la próxima evolución de la tecnología de éstos en Capa-1. Cree aplicaciones que almacenen el estado en cadena y combínelas con todas las demás tecnologías Capa-1 de Algorand (como Atomic Transfers y Algorand Standard Assets) para crear aplicaciones muy poderosas, como ejecutar su propia subasta o crear un token de seguridad altamente personalizado.

Así es cómo recomendamos comenzar:

  1. Consulte la sección de Smart Contract reorganizada: Ahora hay una subsección para contratos inteligentes con y sin estado, respectivamente. Las condiciones de ejecución de éstos son diferentes, pero ambos utilizan el mismo lenguaje subyacente llamado TEAL.
  2. Lea la documentación técnica completa sobre contratos inteligentes con estado y ésta guía para aprender cómo crear su primera aplicación con estado.
  3. También hay una nueva Guía para la creación de aplicaciones en Algorand, que le muestra cómo componer las funciones de Layer-1 de Algorand para crear programas altamente sofisticados utilizando funciones que garantizan velocidad, seguridad y escalabilidad.

Información:

Una nota sobre terminología: Los contratos inteligentes con estado también pueden denominarse «aplicaciones con estado». Esto está relacionado a su tipo de transacción correspondiente, que se denota como una transacción de aplicación. Sin embargo, las «aplicaciones» también pueden referirse al concepto más tradicional de una aplicación completa de cara al usuario, que puede incluir éstos con estado (es decir, «aplicaciones con estado»), pero también puede incluir cualquier combinación de contratos inteligentes sin estado, activos, transferencias atómicas y cualquier otra característica.

Rekeying

Alice genera una cuenta en Algorand que usará como su billetera personal. Esta cuenta está identificada por una dirección pública y tiene la clave de gasto privada correspondiente. Ella da su dirección pública a varios terceros para que pueda recibir ALGOS y otros activos de ellos ahora y en el futuro. También usa su dirección para aprobar KYC / AML e invertir en un proyecto inmobiliario.

Ahora digamos que Alice cree que su clave de gasto privada pudo haber sido comprometida o simplemente quiere mantener buenas prácticas de seguridad y rotar sus claves periódicamente. El problema es que, si cambia su clave de gastos, su dirección pública también cambiará y deberá actualizar a todos los terceros con los que ha interactuado para que proporcionen su nueva dirección. ¡Qué lío!

Presentamos el cambio de claves

En cambio, Alice puede simplemente emitir una transacción especial que registra una nueva clave de gasto privada como método de autorización para su dirección pública existente. Así, puede mantener una alta seguridad en su cuenta y mantener convenientemente su identificador de dirección en todas las plataformas con las que ha interactuado. Si quisiera, también podría cambiar la clave de su cuenta a una de firma múltiple o incluso a una de contrato inteligente.

El cambio de claves tiene muchos usos más allá de simplemente simplificar las buenas prácticas de seguridad. Otro ejemplo es la posibilidad de que otra parte creé una cuenta, tal vez la cargue con algunos activos y luego transfiera completamente la propiedad a otra persona.

Lea todo sobre el cambio de claves aquí.

Actualización rápida

Por último, pero no menos importante, hablemos de cómo conectarse a BetaNet para que pueda probar estas nuevas funciones.

Puede ejecutar su propio nodo, usar sandbox o conectarse a través de un servicio API como Purestake. El problema con la primera opción es que si está ejecutando un nodo desde cero, debe esperar a que el mismo se sincronice con el resto de la red antes de poder enviar transacciones. La sincronización requiere que el nodo verifique cada bloque en el historial de la cadena de la misma, lo que puede llevar horas o días, dependiendo de la duración del historial de ésta. Si es un desarrollador de aplicaciones que solo quiere comenzar a utilizar las nuevas funciones del protocolo, esto no es lo ideal.

Presentamos Fast Catchup

En lugar de esperar días para que su nodo se sincronice, use la actualización rápida y la sincronización se realizará en minutos . Esta función está disponible ahora y no tiene que esperar a que se complete la actualización. Lea los documentos de Sincronización con Fast Catchup para comenzar.

O sólo ejecute lo siguiente después de instalar un nodo:

% CATCHPOINT=$(curl https://algorand-catchpoints.s3.us-east-2.amazonaws.com/channel/betanet/latest.catchpoint)
% goal node catchup $CATCHPOINT -d <betanet-data>

Verifique el estado para ver cómo se pone al día:

% goal node status -d <betanet-data>

Salida de muestra:

Last committed block: 5084087
Sync Time: 11.0s
Catchpoint: 5080000#Z2Z7OESROGAE5OMEGY4SQ2R4C4V35B45L7XLPT6TL5SFUXGU2MKQ
Catchpoint total accounts: 1246
Catchpoint accounts processed: 1246
Catchpoint total blocks: 1000
Catchpoint downloaded blocks: 58
Genesis ID: betanet-v1.0
Genesis hash: mFgazF+2uRS1tMiL9dsj01hJGySEmPN28B/TjjvpVW0=

Y ejecútelo nuevamente después de varios minutos para ver que su nodo está al día:

Last committed block: 5084163
Time since last block: 0.3s
Sync Time: 0.0s
Last consensus protocol: https://github.com/algorandfoundation/specs/tree/e5f565421d720c6f75cdd186f7098495caf9101f
Next consensus protocol: https://github.com/algorandfoundation/specs/tree/3a83c4c743f8b17adfd73944b4319c25722a6782
Round for next consensus protocol: 5107702
Next consensus protocol supported: true
Last Catchpoint: 5080000#2BNEE2WRZU3B55FKTH4STF2OIWEN47LKYMNOTPZY2GHQTQBAA76Q
Genesis ID: betanet-v1.0
Genesis hash: mFgazF+2uRS1tMiL9dsj01hJGySEmPN28B/TjjvpVW0=

Suscríbase al boletín informativo para desarrolladores de Algorand para conocer las últimas funciones de Algorand.


Este artículo ha sido escrito originalmente por Liz Baram  en «Artículos» del portal para desarrolladores de Algorand  y traducido por AlgoLatam.

Original Article: https://developer.algorand.org/articles/stateful-smart-contracts-rekeying-fast-catchup/

Aviso de responsabilidad:

Este artículo no contiene consejos financieros, ni recomendaciones de inversión de ningún tipo. La información brindada se ofrece sólo con fines educativos y didácticos en cuanto a tecnología Web3 y análisis sobre sus casos de uso.

Las inversiones con criptomonedas, NFTs, tokens u otros activos digitales conllevan riesgos y no se encuentran regulados, por lo que los lectores deben realizar su propia investigación antes de tomar cualquier tipo de decisión bajo su entera responsabilidad, así como adaptarse y observar las diferentes regulaciones legales según su país de residencia.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *