Documentation
Pont
Un pont entre TUSD sur Tint et l’USDT sur Ethereum et BNB Chain, en cours de construction et d’essai d’abord sur les réseaux de test Sepolia et BSC Testnet.
Réseau de test§: les pièces n’ont aucune valeur
Comment ça marche
Un contrat de pont existe sur chaque réseau de la famille Ethereum. Il détient des jetons§; il ne connaît pas le réseau Tint.
Dépôt§: d’Ethereum ou de BNB Chain vers Tint
- Vous appelez
deposit(token, amount, tintAddress)sur le pont, en indiquant l’adresse Tint qui doit être payée. Le jeton entre dans le contrat. - Le contrat émet un événement de dépôt avec le jeton, le montant, votre adresse et l’adresse Tint.
- Le pont paie le même montant de
TUSDsur le réseau Tint à cette adresse.
Retrait§: de Tint vers Ethereum ou BNB Chain
- Vous payez des
TUSDsur Tint au pont et indiquez l’adresse sur l’autre réseau. - Les signataires du pont voient ce paiement arriver et signent une libération correspondante.
- N’importe qui peut alors soumettre
release(token, to, amount, order, signatures)avec au moins le seuil de signatures, de 65 octets chacune. Le contrat les vérifie et verse les jetons§; seuls les signataires peuvent produire les signatures.
Chaque libération porte un numéro order, un hachage du paiement Tint. Le contrat se souvient de chaque ordre qu’il a payé, de sorte qu’un paiement Tint n’est versé qu’une seule fois.
Ce qui est custodial aujourd’hui
- Le contrat fait confiance à ses signataires pour ne libérer que ce qui est réellement arrivé sur Tint. Une libération exige qu’un seuil d’entre eux (par exemple 2 sur 3) signe un condensat de style EIP-712.
- Le contrat fait confiance à son propriétaire pour désigner des signataires honnêtes. Le propriétaire peut modifier les règles, les signataires et mettre le pont en pause. La propriété se transmet en deux temps§: elle est proposée, puis acceptée.
- Aujourd’hui, le propriétaire et les signataires sont choisis par l’équipe Tint. S’ils sont malhonnêtes ou perdent leurs clés, les jetons déposés peuvent être pris ou bloqués. C’est ce que signifie custodial.
Limites appliquées par le contrat
Elles servent à plafonner les dégâts qu’une erreur ou une clé volée pourrait causer. Chaque jeton a sa propre règle§:
| Règle | Signification |
|---|---|
| Activé | Indique si les dépôts et les libérations de ce jeton sont ouverts. |
| Granularité | Chaque montant doit en être un multiple, afin qu’aucune poussière ne se perde entre les décimales d’un jeton (6 pour l’USDT sur Ethereum, 18 sur BNB Chain) et les 8 de Tint. |
| Minimum | Le moins qu’un dépôt ou une libération puisse déplacer. |
| Maximum | Le plus qu’un dépôt ou une libération puisse déplacer. |
| Limite quotidienne | Le plus que toutes les libérations d’un jour UTC puissent déplacer ensemble. |
| Pause | Tant que le pont est en pause, rien n’est déposé ni libéré. |
Ce que le pont fait à la confidentialité
Le côté Ethereum est public. Un événement de dépôt montre le jeton, le montant, l’expéditeur et l’adresse Tint de destination. Une libération montre le destinataire et le montant. Faire passer des fonds par le pont relie votre adresse publique à une adresse Tint et à un montant, donc considérez une traversée comme visible. Une fois vos TUSD sur Tint, les paiements entre notes redeviennent privés.
Le jeton de test
Pour essayer le pont là où il n’existe pas de vrais stablecoins, le dépôt de code inclut un contrat TestDollar. Chacun peut en frapper pour soi, jusqu’à un plafond par appel, et il ne vaut rien. Il a 6 décimales pour se comporter comme l’USDT sur Ethereum, ou 18 comme l’USDT sur BNB Chain. Ne le déployez jamais sur un réseau avec de l’argent réel.
État d’avancement
- Le contrat du pont et le jeton de test sont écrits, avec des tests. Ils ne sont pas audités.
- La partie côté Tint, c’est-à-dire la façon dont les dépôts sont versés et les retraits repérés, n’est pas encore publiée, et le flux ci-dessus peut changer.
- Le portefeuille affiche le pont comme « bientôt§». Il n’y a encore rien à faire passer par le pont.