02 · Conceptos fundamentales
Este capítulo explica los objetos fundamentales a partir de un activo y un inversor.
2.1 Token: participaciones del activo
Cada activo tiene un Token ERC-3643 independiente, compatible con:
name / symbol / decimals
totalSupply / balanceOf
transfer / approve / transferFrom
Transfer / Approval
Añade elegibilidad, cumplimiento, pausa, congelación, mint/burn y transferencia forzada por Agent, y recuperación de cartera. Puede leerse como ERC-20, pero el saldo no garantiza una transferencia.
importe en cadena = cantidad mostrada × 10^decimals
PRWA usa 6 decimales: 1 PRWA = 1,000,000. Consulte decimals() para cada activo.
2.2 Cartera: firma y tenencia
La cartera EOA firma, paga gas, mantiene Tokens y controla ONCHAINID. No contiene la conclusión KYC; la elegibilidad depende del ONCHAINID asociado y del IdentityRegistry del activo.
2.3 ONCHAINID: identidad en cadena
ONCHAINID es un contrato, no otra cartera.
| Elemento | Cartera | ONCHAINID |
|---|---|---|
| Tipo | EOA | Contrato |
| Función | Firma, gas, Tokens | Claves de identidad y Claims |
| KYC en texto claro | No | No debe guardarlo |
| Creación | Herramienta de cartera | ONCHAINID Gateway |
Use deployIdentityForWallet(wallet) para crear y IdFactory.getIdentity(wallet) para consultar.
2.4 Claim: conclusión firmada
| Campo | Significado |
|---|---|
topic | Tipo de cualificación |
scheme | Esquema de firma |
issuer | Contrato ClaimIssuer |
signature | Firma institucional |
data | Datos firmados |
uri | Referencia externa opcional |
La institución revisa y firma fuera de cadena; el inversor escribe los campos en su ONCHAINID mediante addClaim y paga gas. No incluya nombres, documentos, direcciones o imágenes; la cadena solo necesita la conclusión verificable.
2.5 ClaimIssuer
Representa una institución reconocida. Realiza KYC/AML, firma, revoca y protege la clave. El activo debe registrarla en TrustedIssuersRegistry y autorizarla para el Topic.
2.6 IdentityRegistry: entrada de elegibilidad
Después del Claim, el inversor se registra en el IdentityRegistry del activo.
contains(wallet): existe registro;isVerified(wallet): cumple todos los requisitos actuales.
Use isVerified como decisión final.
2.7 Elegibilidad vinculada al activo
Un ONCHAINID puede servir a varios activos; la reutilización del Claim depende de Topic e Issuer. Cada activo ejecuta su propio registerIdentity y se consulta mediante Token.identityRegistry(). La aprobación del activo A no implica la del B.
2.8 ModularCompliance: reglas de operación
IdentityRegistry decide quién puede mantener; ModularCompliance decide si una operación puede ocurrir. Puede imponer países, límites por dirección o suministro, bloqueos, categorías y límites de transferencia.
Use la configuración del activo concreto.
2.9 Comprobaciones de transferencia
saldo disponible = balanceOf(wallet) - getFrozenTokens(wallet)
2.10 Suite
| Contrato | Función |
|---|---|
Token | Participaciones y operaciones |
IdentityRegistry | Elegibilidad |
IdentityRegistryStorage | Mapeos de cartera, identidad y país |
ClaimTopicsRegistry | Topics requeridos |
TrustedIssuersRegistry | ClaimIssuers reconocidos |
ModularCompliance | Reglas de transacción |
Las aplicaciones usan principalmente Token e IdentityRegistry.
2.11 Proxies
Guarde proxies publicados, no direcciones de implementación.
2.12 Convenciones ERC-3643
| Elemento | Descripción |
|---|---|
| T-REX | Implementación de referencia; los contratos de un activo forman una Suite |
| Topic | No existe una regla fija 1 = KYC; publique nombre, valor y versión |
| Código de país | uint16, normalmente ISO 3166-1 numérico: China 156, Singapur 702 |
| IR / IRS | IdentityRegistry / IdentityRegistryStorage |
| CTR / TIR | ClaimTopicsRegistry / TrustedIssuersRegistry |
| MC | ModularCompliance |
| IA | Implementation Authority |
La cadena guarda conclusiones, mapeos, saldos y reglas, no KYC en texto claro.