Skip to main contentA-REX Foundation

Whitepaper · 12

Interoperabilidad

Cómo encaja un token A-REX en lo que ya existe: estándares de tokens de Ethereum, motores de cumplimiento, estándares de datos de trazabilidad y de pasaportes de producto, huellas de carbono, registros de documentos legales, sistemas de identidad, infraestructura entre cadenas y sistemas agrícolas actuales.

Con el ecosistema de Ethereum

Un token A-REX Core es un token ERC-1155. Las billeteras, exploradores, marketplaces e indexadores compatibles con ERC-1155 funcionan sin cambios: saldos, transferencias múltiples, uri(id), aprobaciones y verificación del receptor en las transferencias seguras. A-REX agrega eventos y vistas; no quita nada.

Un token A-REX Core es un multitoken ERC-7943. Los motores de cumplimiento y las plataformas de custodia diseñados para ERC-7943 reconocen canTransfer, forcedTransfer, setFrozenTokens, canSend y canReceive sin adaptaciones. El Automated Compliance Engine de Chainlink ya demostró su compatibilidad, y las plataformas de emisión de la coalición ERC-7943 lo están adoptando.

EstándarRelación
ERC-1155base; A-REX Core es una extensión
ERC-165detección de interfaces; se publican cinco ids
ERC-7943obligatorio; sus controles de cumplimiento se adoptan tal cual
ERC-3643adaptador de referencia (ADR-020, Propuesto): cada lote puede leerse como un token ERC-3643 (saldos, elegibilidad, cantidades congeladas, pausa, movimientos) mediante una vista que lee directamente del token y un hook de solo notificación que no puede permitir ni rechazar nada; el token de A-REX no cambia. Probado con T-REX 4.1.6. Envolver un módulo de cumplimiento de ERC-3643 como IARexHook, y envolver un lote como un valor ERC-3643, siguen siendo diseños sin implementar. Leer un lote a través de ERC-3643 no lo convierte en un valor.
Claims de ERC-735 / ONCHAINIDlos temas de claim equivalen directamente a temas de IARexAttest (bytes32(uint256 topic)); un emisor de claims de referencia (ADR-021, Propuesto) presenta la situación de una empresa en A-REX como claims de ONCHAINID que solo son válidos mientras A-REX confía en su firmante, se comprueban en el momento en que se leen y solo el firmante los revoca. Probado con ONCHAINID 2.2.1.
Ethereum Attestation Servicelos UID de esquema son temas válidos de IARexAttest; un espejo de referencia (ADR-022, Propuesto) publica en EAS los certificados y los registros de lotes vigentes bajo dos esquemas sin contrato resolver, y revoca sus copias cuando A-REX los revoca, deja de confiar en ellos o los modifica. Probado con EAS 1.4.0. Un registro IARexAttest basado en EAS sigue siendo un diseño sin implementar.
ERC-7201estructura de almacenamiento de la implementación de referencia
ERC-7573, patrones de retención y depósito en garantíala entrega contra pago y el depósito en garantía se resuelven con hooks o contratos complementarios; el estándar no define cómo se liquida
ERC-7802 / Chainlink CCIPlos adaptadores de acuñación y quema entre cadenas pueden envolver el token; el linaje queda en la cadena de origen y lo que viaja son las referencias

Con estándares de datos de trazabilidad

GS1 EPCIS 2.0 / CBV

El estándar publica un mapeo informativo, evento por evento:

En la cadenaEPCIS 2.0
BatchCreatedObjectEvent ADD, bizStep = creating_class_instance (a nivel de lote) o commissioning cuando se asignan ids de instancia, quantityList (unidad según la Rec. 20), datos maestros del lote en ilmd
TransferSingle / TransferBatchObjectEvent OBSERVE con las partes titulares como origen y destino; sin bizStep para un simple cambio de titularidad, y shipping/receiving solo cuando los metadatos o un hook de trazabilidad indican que los bienes se movieron
BatchTransformedTransformationEvent (inputQuantityList, outputQuantityList, transformationID tomado de processRef); bizStep = repackaging para una reagrupación, creating_class_instance para un procesamiento
BatchCreated con referencias upstreamTransformationEvent cuando los bienes se procesaron a partir del lote de otro token; si no, un ObjectEvent con el proveedor como origen; el epcClass compartido lo une al evento del propio proveedor
ForcedTransferObjectEvent OBSERVE, holding cuando los bienes quedan bajo retención legal
BatchStatusChangedObjectEvent con la disposition tomada de la tabla de estados del emisor
Attested / AttestationRevokedObjectEvent (inspecting, o sampling para un laboratorio) con la referencia del certificado
metadatos gs1.*GTIN, LGTIN, SSCC, GLN, Digital Link
metadatos extensionsilmd del evento de creación; una huella declarada como arex:declaredFootprint

El esquema de metadatos usa a propósito los nombres de EPCIS/CBV. Así, un exportador solo tiene que mapear campos, no conceptos.

UN Transparency Protocol (UNTP 0.7.0)

Un mapeo informativo convierte un lote, sus eventos y sus atestaciones en credenciales de UNTP 0.7.0, con los mismos identificadores que el mapeo de EPCIS para que ambos se puedan unir:

A-REXCredencial de UNTPLa emite
el lote, su origen, su instalación y sus certificadosDigital Product Passport (credentialSubject es un Product, uno por lote)el emisor del lote
acuñación y procesamiento; transferencias y recepciones; quemas, cambios de estado y correcciones de metadatosDigital Traceability Events: MakeEvent; MoveEvent; ModifyEvent, cada uno vinculado a su transacciónel emisor del lote
una atestación de un certificador o de un laboratoriouna referencia a la Digital Conformity Credential del evaluadorel evaluador, nunca el emisor del lote

Las credenciales siguen el W3C Verifiable Credentials Data Model 2.0 y se firman con VC-JOSE-COSE bajo el did:web del emisor; la revocación usa una Bitstring Status List. Una credencial firmada también se puede anclar a su lote como una atestación cuya referencia es el hash de la credencial: el ancla prueba el compromiso y la firma prueba el contenido. Una credencial lleva solo lo que contienen el token o sus metadatos, y los valores que requieren un método (una huella, una puntuación de riesgo) solo aparecen cuando una parte identificada los declaró. El mapeo indica lo que no cubre, empezando por el Digital Product Passport de la UE: el ESPR no se aplica a los alimentos, los piensos ni las plantas y animales vivos, y A-REX no hace ninguna afirmación de pasaporte para ellos.

Huellas de carbono declaradas (PACT 3.0.3)

ADR-018 (Propuesto) permite que un lote lleve una huella de carbono de producto calculada por un tercero, en extensions.pact_pcf del documento de metadatos. El fragmento sigue campo por campo las WBCSD PACT Technical Specifications 3.0.3: quién la declaró, la unidad declarada y el período de referencia, la huella con y sin absorción biogénica, y un estado de verificación obligatorio que nombra al verificador cuando la huella está verificada. Se copia; nunca se calcula, se suma ni se traslada a los lotes hechos a partir del lote, y no es un crédito de carbono (ADR-014). El mapeo es un derivado independiente de PACT y no copia ningún archivo de PACT.

Códigos de producto y de unidad

Un código de producto es keccak256("<SCHEME>:<CODE>") para cualquier esquema: el Sistema Armonizado (HS), las nomenclaturas arancelarias nacionales (NCM en el Mercosur, CN y TARIC en la UE, HTS en Estados Unidos, entre otras), FAO, CPC, GTIN o uno propio del emisor. Desde el esquema de metadatos 1.1.0, el esquema en el documento también es abierto, así que los metadatos pueden reflejar el código en la cadena. Las unidades son códigos de la Recomendación 20 de UN/CEFACT (KGM, TNE, LTR), la lista que ya usan EDI, EPCIS y las aduanas.

FSMA 204

Los elementos de datos clave son campos de metadatos (traceabilityLotCode, GLN, fechas, cantidades) y eventos. El CTE de transformación es BatchTransformed, y la solicitud de registros en 24 horas se responde con una consulta al indexador. El mapeo completo está en el capítulo regulatorio.

Codex, ISO 22000, GLOBALG.A.P. y certificaciones orgánicas

Todos son temas de atestación. El estándar no los enumera: keccak256("GLOBALGAP:IFA"), keccak256("AREX:CERT:ORGANIC_EU") y keccak256("CODEX:MRL") son convenciones que el emisor publica junto con su esquema de metadatos.

Con registros de documentos legales

Los tokens A-REX hacen referencia a los instrumentos legales. No los reemplazan mientras una jurisdicción no reconozca al token en sí:

InstrumentoDónde estáCómo lo referencia el token
Recibo de almacén electrónico de EE. UU. (7 CFR 869)proveedor de EWR autorizado por el USDAdocuments[].registry, originRef
CPR-e, CDA/WA de Brasilregistradoras autorizadas por el Banco Centraldocuments[].registryId; lote previo a la cosecha con producedAt == 0
Certificado de depósito / warrant de Argentina (Ley 9.643)almacénhash en originRef
Conocimiento de embarque electrónico (jurisdicciones con MLETR)plataforma de eBLhash del documento; en las jurisdicciones con MLETR, el token mismo puede cumplir el requisito de control exclusivo
Declaración de debida diligencia del EUDRSistema de Información de la UEorigin.eudr.ddsReference, atestación EUDR:DDS

Con sistemas de identidad

El token solo pregunta canSend(account) / canReceive(account). Detrás de esa pregunta puede haber:

  • una lista de cuentas habilitadas o bloqueadas que administra el emisor (EligibilityHook);
  • un registro de identidad ONCHAINID con temas de claim (el modelo de ERC-3643);
  • atestaciones de Ethereum Attestation Service sobre la cuenta;
  • credenciales verificables que se validan fuera de la cadena y que un relayer refleja en la cadena;
  • un esquema nacional de identidad digital (billetera eIDAS 2.0 en la UE) a través de un verificador de credenciales.

Ninguna de estas opciones forma parte del estándar. Por eso, un emisor en Brasil y otro en Alemania pueden usar proveedores distintos y seguir siendo interoperables.

Con motores de reglas y plataformas

Una regla o un complemento puede publicar un descriptor arex.module/1: un documento JSON con sus parámetros, ajustes, campos del lote requeridos, tipos de certificado, eventos, códigos de rechazo y cómo pasa su estado a una versión nueva. Una plataforma, una billetera, un indexador o un auditor que lee descriptores integra una regla nueva sin código a medida. El formato es informativo y Propuesto; pasa a ser un formato recomendado cuando lo consume un segundo implementador independiente. La revisión 1.1 agrega una lista opcional e informativa ops con las operaciones que gobierna una regla; si falta, se desconocen, y nunca se usa para aplicar controles.

Despliegue en varias cadenas

El estándar no depende de ninguna cadena en particular. Estos son los patrones prácticos:

  • Una sola cadena principal por emisor (recomendado): el linaje y los controles de cumplimiento se mantienen coherentes. Las demás cadenas tienen versiones envueltas del token mediante adaptadores al estilo de ERC-7802 o CCIP.
  • Cadena EVM con permisos, para emisores cuya autoridad de protección de datos o institución ancla lo exija; el EDPB prefiere expresamente los diseños con permisos. El bytecode es el mismo.
  • Réplicas para dar liquidez: un id de lote en la cadena principal y un wrapper ERC-20 en otra. El wrapper debe respetar canTransfer del token original o limitarse a titulares habilitados.

El linaje nunca sale de su cadena; las referencias, sí. Entre tokens de la misma cadena o de cadenas distintas, un lote hecho a partir del lote de otro token lo nombra en la lista upstream de sus metadatos (esquema 1.2.0) por id de cadena, contrato e id de token. Esas referencias son afirmaciones del emisor, que hay que contrastar con el token de origen.

Con sistemas de gestión agrícola y ERP

Los puntos de integración son los mismos que para cualquier token ERC-1155, más las vistas de lote:

  • Escritura: un servicio de originación tiene ISSUER_ROLE y llama a createBatch a partir de eventos del ERP (boleta de báscula, emisión de certificados), a setBatchStatus/setBatchMetadata a partir de eventos del almacén y a transform a partir de órdenes de procesamiento.
  • Lectura: un indexador vuelca los lotes, el linaje, las atestaciones y los eventos de cumplimiento en las tablas de trazabilidad del ERP, y genera exportaciones EPCIS para socios comerciales y reguladores.
  • Verificación previa: con transferCheck, el ERP puede explicarle un rechazo al operador antes de enviar la transacción.
  • Identificadores: las claves GS1 de los metadatos conectan con los repositorios EDI y EPCIS existentes; las unidades UN/CEFACT ya están en los ERP.

Matriz de compatibilidad

CapacidadEstado
Billeteras / marketplaces ERC-1155nativo
Herramientas de cumplimiento ERC-7943nativo
Herramientas ERC-3643 que leen lotesadaptador de referencia (ADR-020, Propuesto)
Módulos de cumplimiento ERC-3643 como hooksdiseño, sin implementar
Claims de ONCHAINID a partir de la situación en A-REXemisor de claims de referencia (ADR-021, Propuesto)
Atestaciones ERC-735 / EASequivalencia de temas; espejo en EAS (ADR-022, Propuesto)
Exportación EPCIS 2.0mapeo informativo de eventos; nombres de campos en el esquema; lo resuelve el indexador
Credenciales UNTP 0.7.0mapeo informativo; las firma el emisor (did:web, VC-JOSE-COSE)
Huellas PACT 3.0.3extensions.pact_pcf (ADR-018, Propuesto)
Descriptores de reglasarex.module/1 (informativo, Propuesto)
Linaje entre tokensmetadatos upstream (esquema 1.2.0)
EVM con permisosmismo bytecode
Entre cadenaswrappers; el linaje queda en la cadena principal