Cuando la red Dusk se inicia, no basta con la máquina virtual Piecrust; también debe desplegar un conjunto de contratos génesis para gestionar las operaciones más básicas. La sección 6.2 del libro blanco los llama "genesis contracts": son contratos inteligentes especiales que se despliegan durante la inicialización de la red y se encargan de funciones fundamentales como la validación de transacciones, el mecanismo de staking y la distribución inicial de tokens. El libro blanco destaca dos de ellos.

El primero es el transfer contract (contrato de transferencia). Gestiona todas las transferencias de DUSK y $DUSK también maneja la deducción de las comisiones de gas. Si una transacción incluye el despliegue o la llamada de un contrato inteligente, el transfer contract también se encarga de procesarla: verifica si la transacción cumple con las reglas de Moonlight o Phoenix y luego deduce la comisión de gas correspondiente del saldo del remitente. El libro blanco dice que es el "punto de entrada a la cadena de bloques Dusk"; todas las transacciones, en última instancia, deben pasar por él.

El segundo es el stake contract (contrato de staking). Gestiona todo el ciclo de vida del staking: verifica si la cantidad depositada por el usuario alcanza el umbral mínimo de staking, bloquea los tokens y registra al usuario como provisioner. Cuanto más DUSK se pone en staking, mayor es la probabilidad de ser seleccionado por el algoritmo DS para participar en el consenso. El contrato también procesa las solicitudes de desstaking: después de que termine el período de bloqueo, el usuario puede recuperar los tokens, al mismo tiempo que garantiza que la distribución de recompensas y la deducción de penalizaciones se ejecuten correctamente. El umbral de 1000 DUSK mencionado en el ángulo 1 y las recompensas y penalizaciones mencionadas en el ángulo 9 se implementan concretamente gracias a este contrato. @Dusk

La sección 6.3 añade además dos "otros contratos". Uno es el license contract (contrato de licencia), que gestiona la emisión y verificación de licencias en la red basándose en el protocolo Citadel, rastreando la propiedad, validez y fecha de expiración de cada licencia, y procesando revocaciones o renovaciones. El otro es Zedger contracts, que instancia contratos inteligentes independientes para cada tipo de activo de valor, proporcionando funciones como acuñación, destrucción, reparto de dividendos y transferencia forzosa, y constituye la implementación concreta del protocolo Zedger mencionado en el ángulo 7.

La división de funciones de los cuatro contratos es muy clara: el transfer contract gestiona la circulación, el stake contract la participación en el consenso, el license contract los permisos y los Zedger contracts los activos. Pero esto también significa que las funciones centrales de Dusk dependen en gran medida de la corrección de estos cuatro contratos: si cualquiera de ellos tiene un bug, el impacto no se limitará a una sola aplicación, sino que afectará a las operaciones básicas de toda la red. #dusk