MIP21: Activos del Mundo Real - Prestador Respaldado por Activos Off-Chain

MIP21: Activos del Mundo Real - Prestador Respaldado por Activos Off-Chain

MIP#: 21
Título: Activos del Mundo Real - Prestador Respaldado por Activos Off-Chain
Autor(es):  Matthew V Rabinowitz (@mrabino1 or [email protected])
Conlaboradores: Lev Livnev (@equivrel) y Christopher Mooney (@cmooney)
Type: Técnica
Estado: Aceptada
Fecha de Propuesta: 2020-09-01
Fecha de Ratificación: 2020-10-27
Dependencias: MIP13c3-SP4 (Declaración de Intenciones - Prestador Respaldado por Activos Off-Chain para Incoporar Activos del Mundo Real como Colateral para Préstamos de DAI)
Reemplaza: n/a
Licencia: n/a

Referencias

Sumario Abreviado

Esta propuesta define una implementación de módulo de MakerDAO para la toma de préstamos de DAI con Prestadores Respaldados por Activos del Mundo Real.

Sumario Extendido

Con la propuesta de incorporar Activos del Mundo Real como colateral en el Protocolo Maker, requeriremos una MIP técnica ya que necesitaremos abrir nuevos caminos y crear formas originales para interactuar con el “mundo real” sin perder la conexión umbilical con la blockchain. Esto requerirá algunas modificaciones técnicas a la manera en que el sistema gestiona colaterales, liquidaciones, etcétera; y también será necesario añadir algunos contratos inteligentes (como se describe más abajo) para gestionar los procesos de acuñación y de reembolso. Esta MIP técnica está siendo presentada en paralelo (con la declaración de Intenciones) para consideración de la gobernanza MKR.

Sumario de Componentes

MIP21c1: Parámetros Colaterales, donde se definen los parámetros de activos per-colaterales.

MIP20c2: Componentes de Contratos Inteligentes, donde se describen y enumeran los contratos nuevos y originales de esta propuesta.

MIP20c3: Oráculo de Liquidación, donde se describen los detalles del contrato del oráculo de liquidación.

MIP21c4: Cancelaciones, donde se escribe el proceso para cancelar pérdidas.

MIP20c5: Código Propuesto, donde se linkea al código propuesto.

MIP20c6: Casos de Prueba, donde se enumera los casos de prueba.

MIP20c7: Consideraciones de Seguridad, ver abajo

MIP20c8: Información de Auditores y Reporte, ver abajo

Motivación

Ver arriba el sumario extendido.

Especificación

MIP21c1: Parámetros de Colaterales

  • Período de remediación de liquidación (tau):
  • Hash de documento de activo (doc):

MIP21c2: Componentes de Contratos Inteligentes

Insertar activos del mundo real mediante un prestador respaldado por activos off-chain, donde las liquidaciones son gestionadas por una tercera parte, requiere ciertos cambios a cómo un módulo interactuaría con el protocolo Maker. Específicamente,

  • Acuñación
  • Reembolsos
  • Liquidaciones
  • Cancelaciones

Habiendo dicho lo anterior, muchos items del mecanismo actual permanecen no obstante sin cambios:

  • Cómputo de Deuda
  • Tasas de Interés
  • Límite de Techo de Deuda

Los contratos inteligentes que implementan la nueva funcionalidad son como sigue:

  • RwaLiquidationOracle: que actúa como un faro de liquidación para un ejecutor off-chain.
  • RwaFlipper: que actúa como un módulo de liquidación postizo en el evento de una cancelación.
  • RwaUrn: que facilita tomar DAI en préstamo, haciendo la entrega a una cuenta designada.

Items administrativos a completar antes de la implementación:

  • RwaDeploySpell: que despliega y autoriza los componentes para tipos de colateral RWA (Real World Assets, Activos del Mundo Real).
  • RwaInitSpell: que activa un nuevo tipo de colateral RWA.
  • Contratos de billeteras auxiliares para gestionar desembolsos y reembolsos de Dai.
  • RwaLiquidateSpell: que le permite a la gobernanza de MakerDAO iniciar procedimientos de liquidación.
  • RwaRemedySpell: que le permite a la gobernanza de MakerDAO desestimar procedimientos de liquidación.
  • RwaWriteoffSpell: que le permite a la gobernanza de MakerDAO cancelar un préstamo que estaba en liquidación.

MIP21c3: Oráculo de Liquidación

En lugar de efectuar liquidaciones mediante subastas públicas on-chain activadas por un feed de precios continuamente actualizado, en este caso las liquidaciones se activan manualmente por la gobernanza de MakerDAO y son ejecutadas off-chain por una tercera parte. Los oráculos estándar y la infraestructura de subastas son suplantados por un contrato de “oráculo de liquidación”. La gobernanza de MakerDAO puede iniciar procedimientos de liquidación cuando lo consideran necesario mediante una llamada a tell() en RwaLiquidationOracle. Esto da comienzo a la cuenta regresiva; una vez el período de remediación ha pasado, el oráculo comenzará a reportar que la posición está bajo liquidación. Si la causa de la activación de la liquidación ha sido remediada o si la activación de la liquidación original fue ilegítima, durante el período de remediación o después de él, la gobernanza de MakerDAO puede desestimar los procedimientos de liquidación mediante una llamada a cure().

Un ejecutor off-chain (como un fideocomisario, etcétera) puede verificar el estado de la liquidación de la posición periódicamente mediante una llamada a good(). good() reportará que la posición está en liquidación si y solo si la gobernanza de MakerDAO ha activado la liquidación mediante una llamada a tell() y el período de remediación ha pasado sin que haya habido llamadas a cure().

MIP21c4: Cancelaciones

Si al final de un proceso de liquidación todavía existe deuda pendiente en la posición y si MakerDAO cree que la deuda no será saldada, puede activar una cancelación mediante una llamada a cull(). La cancelación funciona estableciendo el valor del colateral del sistema en cero, lo que produce que la posición se precipite a una liquidación on-chain mediante bite(), etcétera. A diferencia de los módulos de liquidación para tipos de colaterales existentes, el módulo de liquidación especializado RwaFlipper no ensaya la venta del colateral subyacente sino marca la pérdida en la hoja de balance del sistema al permitir que se cree deuda del sistema.

MIP21c5: Código Propuesto (Trabajo en Progreso)

Real World Assets Example 19

MIP21c6: Casos de Uso

  • Añadir el Módulo de Activos del Mundo Real
  • Acuñar DAI
  • Reembolsar DAI
  • Modificar la Tasa de Interés Anual
  • Cierre de Emergencia
  • Liquidar Vault
  • Cancelar toda pérdida asociada

MIP21c7: Consideraciones de Seguridad

El marco de trabajo en torno al acuñamiento y al reembolso de DAI se ha curtido en la adversidad. Lo mismo puede decirse de los cómputos de cálculos de tasas de interés y los techos de deuda.

Contraintuitivamente, la mayor parte de la funcionalidad relacionada a liquidaciones será efectuada por personas en el mundo real usando documentos legales para legislar sus acciones. De modo que muchas de las características que de otro modo podrían causar vulnerabilidades pueden desactivarse y ser delegadas efectivamente a compañías de confianza o al sistema legal en general.

Con anterioridad a cualquier voto ejecutivo, el equipo de dominio de contratos inteligentes determinará si una verificación formal es necesaria

MIP21c8: Información de Auditores y Reporte

Este código no ha sido auditado.

Con anterioridad a cualquier voto ejecutivo, el equipo de dominio de contratos inteligentes determinará si una auditoría o un programa de recompensas por identificación de bugs son necesarios.

Información Adicional

Proceso de Acuñación

Todos los contratos inteligentes debajo son controlados por la Gobernanza MKR y son su propiedad, no de LendCo.

  1. Con un contrato inteligente activado por LendCo y otro poseedor de MKR, el DAI creado es enviado a la dirección ETH de una “Entidad Fiscal Favorable” (“TFE”, Tax Favorable Entity).
    1. La acuñación fue “habilitada” por LendCo, pero no fue causada por LendCo.
    2. El DAI ahora es creado en la TFE.
    3. La dirección ETH de la TFE está controlada por la Gobernanza MKR y puede ser subsecuentemente modificada por ella.
  2. Cualquier persona con MKR puede activar el contrato inteligente para mover el DAI desde la TFE al Trust (con una excepción: LendCo está específicamente excluido como parte habilitada para efectuar esto).
    1. El DAI ahora está siendo tomado en préstamo (desde la TFE al Trust). El DAI está ahora en el Trust.
    2. La dirección ETH del Trust está controlada por la Gobernanza MKR y puede ser subsecuentemente modificada por ella.
  3. LendCo puede entonces tomar prestado DAI/USD (1*) del Trust.
    1. La dirección ETH destinataria de LendCo puede ser cambiada por la Gobernanza MKR.
    2. La dirección ETH de LendCo será la dirección confirmada/validada y constante de la mesa de operaciones libres de un agente bursátil registrado en beneficio de LendCo. (Nota: en base a (1*), puede ser el trust o el fideicomisario quienes tengan la cuenta en la mesa de operaciones libres del agente bursátil)

El proceso descrito arriba remueve el riesgo de custodia para DAI e inserta un proceso de contabilidad para rastrear primero la acuñación de DAI en una TFE, luego su movimiento desde la TFE a una cuenta “trust” de una jurisdicción específica (o su equivalente). Desde allí, el DAI es tomado en préstamo desde el trust cuando es solicitado por LendCo.

En reversa,

  1. LendCo envía una transferencia de dinero fiduciario a la mesa de operaciones libres del agente bursatil. (1*)
  2. La mesa de operaciones libres convierte el dinero fiduciario en DAI.
  3. La mesa de operaciones libres ordena la transferencia de DAI una dirección ETH previamente validada (que es un contrato inteligente) requerida por LendCo.
  4. Esa dirección del contrato inteligente es y representa el “trust”.
  5. A partir de ese momento cualquier persona con MKR puede causar la transferencia de ese DAI a la dirección ETH de la TFE.
  6. Finalmente, cualquiera puede causar que la dirección ETH de la TFW pague el saldo de la vault.
    • Habiendo dicho lo anterior, siempre existirá la funcionalidad subyacente que le permitirá a cualquiera saldar esta vault.

(Nota: en base a (1*), pueden ser el trust o el fideicomisario quienes tengan la cuenta en la mesa de operaciones libres del agente bursatil, pero no LendCo).

Nota: Ninguna de las direcciones arriba son propiedad de LendCo ni controladas por LendCo. Las direcciones siempre están bajo la órbita de la gobernanza MKR. Complemento importante: es importante que el DAI tenga un punto de origen; una parada en TFE; otra parada en el trust; y entonces su destino final. En todos los casos, LendCo/el trust/TFE necesitan un seguimiento de las operaciones en papel para actuar en conformidad con las disposiciones regulatorias y de contabilidad. Las razones para la “habilitación” de la acuñación de DAI y de los movimientos es que los préstamos de DAI pueden no ser causados por la acuñación a LendCo sin la asistencia explícita de alguien en la comunidad MKR).

Seguridad Operacional

Dados el tamaño y la centralización de un prestador respaldado por activos off-chain, OpSec (Operational Security) es un componente crítico que debe reforzarse antes de la asignación de ningún techo de deuda material. Con ese fin, se contempla actualmente que se le modificará a LendCo su adaptador de vault para que su comportamiento no sea el predeterminado (donde DAI es reenviado a la dirección ETH que lo originó), ya que estamos planeando implementar el proceso de acuñación y reembolso arriba descripto.

Lo antedicho sirve a tres propósitos::

  1. Minimizar la superficie de ataque en la acuñación de DAI tanto como sea posible
  2. Permitirle a LendCO resolver una auditoría financiera, ya que el agente bursátil emitirá declaraciones de cuenta que registrarán la llegada de DAI y el precio de compra/venta.
  3. El agente bursátil ya ha completado los procedimientos de KYC (Know Your Client) y AML (Anti-Money Laundering) en todo el dinero intercambiado por el DAI (en ambos sentidos).

Notas al Pie

1* - Se desconoce actualmente si el fideicomisario necesitará o no involucrarse directamente para proveer los préstamos del trust a LendCo para facilitar cada cierre. También se desconoce si el fideicomisario permitirá que la conversión de DAI a USD se haga en LendCo o si requerirá que la conversión se haga con una cuenta a su nombre en beneficio del trust. Esta MIP da margen para realizar ajustes en torno al flujo de DAI/USD para cumplir con los requisitos de la compañía del trust y que esta así esté dispuesta a oficiar como fideicomisaria del trust.


Esto es una traducción libre del artículo original en inglés. Gracias a @blimpa y @Lozadaluis12 por la traducción.

1 Like