# Duración de depósito y retiro

### ¿Por qué los depósitos son tan rápidos y los retiros tan lentos?

sBTC permite a los usuarios usar sus BTC en la capa L2 de Stacks mediante un token envuelto llamado sBTC. Mover sBTC a la capa L2 de Stacks puede tomar tan solo 1 bloque de Bitcoin, pero mover sBTC fuera de la capa L2 de Stacks hacia la cadena de bloques nativa de Bitcoin toma 6 bloques de Bitcoin. ¿Por qué es eso?

> Para entender por qué moverse a la capa de Stacks puede ser tan rápido y, sin embargo, moverse fuera debe ser tan lento, primero necesitamos entender el mecanismo de consenso de la cadena de bloques de Stacks.

La cadena de bloques de Stacks usa un mecanismo de consenso llamado Proof of Transfer, o PoX, para acuñar nuevos bloques. En cada bloque de Bitcoin, los mineros de la cadena de bloques de Stacks sacrifican cada uno cierta cantidad de Bitcoin en una apuesta por ganar el derecho a producir los siguientes bloques de Stacks, conservando el derecho a seguir produciendo bloques de Stacks hasta que ocurra el siguiente bloque de Bitcoin y la ronda de pujas más reciente elija un nuevo minero de Stacks.

#### Determinar qué bloques de Stacks deben vincularse con qué bloque de Bitcoin

Los firmantes (equivalentes a validadores para la cadena de bloques de Stacks) observan los bloques de Bitcoin y aprueban nuevos bloques de Stacks según qué minero tiene actualmente el derecho de producir bloques de Stacks, y solo aprueban nuevos bloques del minero que ganó la puja más reciente sobre el bloque de Bitcoin dentro de la bifurcación que colectivamente consideran la “mejor”. La cadena de bloques de Stacks solo puede agregar nuevos bloques si los firmantes están de acuerdo en que el minero que lo propuso es el ganador de la puja en la cadena de bloques de Bitcoin, y todos los firmantes están votando sobre qué bloque debe agregarse, decidiendo colectivamente cuál bifurcación de Bitcoin es la mejor.

**Aquí hay una parte importante**: si los firmantes creen que hay una nueva y mejor bifurcación de Bitcoin que difiere de aquella sobre la que se minaron los últimos varios bloques de Stacks, entonces solo aprobarán nuevos bloques de Stacks que se construyan sobre bloques de Stacks existentes que estén vinculados a esa nueva bifurcación de Bitcoin. Es decir, cada bloque de Stacks que se construyó sobre bloques de Bitcoin de la otra bifurcación de Bitcoin que no están en esta nueva bifurcación canónica se considera inválido; por lo tanto, la cadena de bloques de Stacks también se bifurca.

> “La cadena de bloques de Stacks se bifurca con la cadena de bloques de Bitcoin.”

Ahora que entendemos este mecanismo de bifurcación, echemos un vistazo a por qué moverse fuera de la capa de Stacks debe ser tan lento.

#### **Por qué pasar de sBTC a BTC toma más tiempo**

sBTC existe en la capa de Stacks como un token con el que los contratos inteligentes pueden interactuar. Para mover sBTC desde la capa de Stacks a la capa de Bitcoin, el propietario de sBTC llama a un contrato inteligente para iniciar lo que llamamos la secuencia de “retiro”. Esto permite que los “firmantes de sBTC” (estos son distintos de los firmantes mencionados anteriormente) sepan que necesitan crear una transacción en la cadena de bloques de Bitcoin para distribuir el BTC de vuelta al usuario.

Si los firmantes de sBTC crean una transacción de Bitcoin para ejecutar el retiro, no pueden deshacerla, y será válida en todas las bifurcaciones de la cadena de bloques de Bitcoin. Entonces, ¿qué pasa si, por ejemplo, la cadena de bloques de Bitcoin se bifurca y el retiro en la capa de Stacks quedó reorganizado fuera? Entonces hay una transacción de retiro irrecuperable en la cadena de bloques de Bitcoin que entrega BTC valiosos a un usuario que nunca retiró su sBTC en la capa de Stacks.

<details>

<summary>¿Pueden los firmantes que mantienen la cadena original obligar a los mineros a volver a ejecutar todas las transacciones previamente confirmadas?</summary>

La cadena de bloques de Stacks es una verdadera Capa 2 sobre Bitcoin, y puedes escribir un contrato inteligente para que tenga un comportamiento diferente según observaciones de la cadena de bloques de Bitcoin subyacente. Por ejemplo, puedes escribir un contrato de Stacks que diga “Paga a Jeff si el hash del último bloque de Bitcoin termina en un dígito hexadecimal par, y paga a Abigail si es un dígito hexadecimal impar”. Ahora, cuando haya una reorganización de la cadena de bloques de Bitcoin, puedes volver a ejecutar esta transacción que originalmente pagó a Jeff, pero ahora paga a Abigail, ¿y qué pasa si este contrato estaba distribuyendo sBTC, y además qué pasa si Jeff luego ejecutó inmediatamente un retiro?

</details>

Así que, al final, para procesar un retiro de forma segura, necesitas estar lo suficientemente seguro de que no se reorganizará fuera. Eso significa que solo puede procesarse 6 bloques de Bitcoin (el criterio de finalidad con el que los firmantes de sBTC se sienten cómodos) después de que se haya realizado la transacción de retiro de sBTC en la cadena de bloques de Stacks.

#### Pero entonces, ¿por qué los depósitos pueden hacerse en un bloque de Bitcoin como máximo en el mejor de los casos?

Recuerda cómo Stacks se bifurca con Bitcoin. Supongamos que alguien hace un depósito en la cadena de bloques de Bitcoin en un intento de acuñar sBTC, y luego supongamos que los firmantes de sBTC acuñan sBTC de inmediato. ¿Qué pasa si la cadena de Bitcoin se bifurca, causando que la cadena de bloques de Stacks se bifurque? ¡La acuñación se reorganiza fuera! Claro, el depósito ya no está en la cadena de bloques de Bitcoin, pero tampoco está en la cadena de bloques de Stacks. Si ese depósito nunca llega a la cadena de bloques de Bitcoin, los firmantes de sBTC nunca acuñarán sBTC, así que no hay nada que deshacer.

#### La cadena de Bitcoin tiene la última palabra

Así que, en resumen, para los movimientos de sBTC desde la capa de Stacks hacia la capa de Bitcoin, el protocolo necesita esperar a que Bitcoin sea lo suficientemente final, pero los movimientos desde la capa de Bitcoin hacia la capa de Stacks no necesitan esperar a la finalidad para acuñar porque la capa de Stacks simplemente se reorganizará si la capa de Bitcoin también se reorganiza.

Pero entonces, conceptualmente, recuerda que la llamada de acuñación en la cadena de bloques de Stacks es tan final como el bloque de Bitcoin que contiene el depósito de BTC en la capa de Stacks. Si estás acuñando sBTC en la capa de Stacks y quieres esperar a que sea final, tendrás que esperar una cantidad adecuada de bloques de Bitcoin para considerarlo finalmente acuñado, pero eso depende de ti y no de los firmantes de sBTC.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.stacks.co/learn/es/sbtc/sbtc-operations/deposit-vs-withdrawal-times.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
