Condiciones posteriores

Las condiciones posteriores son uno de los aspectos más interesantes y únicos de Stacks.
Desde el principio, la seguridad y protección han estado en el corazón del espíritu de Stacks y formaron la base de las decisiones de arquitectura al construirlo.
Al igual que Clarity, el lenguaje de programación de contratos inteligentes de Stacks, las condiciones posteriores fueron específicamente creadas y diseñadas para resolver el problema de la seguridad del usuario al interactuar con aplicaciones blockchain.
Entonces, ¿qué son y cómo funcionan?
Cómo funcionan las condiciones posteriores
Las condiciones posteriores son condiciones que se establecen del lado del cliente para asegurar que un contrato inteligente no realice ningún comportamiento inesperado.
Veamos un ejemplo para que esto sea más concreto.
Supongamos que un usuario está en un mercado de NFT y espera comprar un NFT por 100 STX. Usando condiciones posteriores, el desarrollador que está construyendo el frontend de la aplicación puede añadir condiciones posteriores para asegurarse de que esto es efectivamente lo que ocurre cuando el usuario inicia la transacción.
Si no es así, la transacción se abortará y el usuario no perderá nada excepto la comisión de la transacción.
Es importante notar que las condiciones posteriores no viven en los contratos inteligentes. Están diseñadas para ser una capa extra de seguridad encima de los contratos inteligentes.
El problema que ayudan a abordar es el de un usuario que interactúa con un contrato inteligente malicioso que intenta hacer algo que el usuario no espera.
Pero en lugar de ser simplemente una característica de la interfaz de una billetera, estas condiciones posteriores están integradas en la propia blockchain de Stacks y se hacen cumplir a nivel de protocolo.
Cuando usas una billetera de Stacks como la billetera web Hiro e inicias una transacción, la billetera mostrará las condiciones posteriores establecidas por el desarrollador y dirá al usuario exactamente lo que va a suceder. Si la acción tomada por el contrato inteligente coincide, la transacción se procesará correctamente; de lo contrario, se abortará.
Así es como se ve:

En este ejemplo, si el contrato inteligente no transfiere un NFT fabulous-frog y no toma 50 STX del usuario, la transacción se abortará.
Puedes aprender más sobre cómo funcionan las condiciones posteriores en SIP-005 y cómo utilizarlas en tus aplicaciones en el excelente tutorial de condiciones posteriores.
Última actualización
¿Te fue útil?