Un pont (bridge) vous permet de déplacer de la valeur d'une blockchain à une autre, par exemple d'Ethereum vers Base. Cet article explique comment fonctionnent les ponts, pourquoi certains retraits prennent une semaine, où se situent les risques, et ce qu'il faut vérifier avant de faire un pont.
Les chaînes sont des registres distincts qui ne peuvent pas se lire directement entre eux. Un pont est la couche logicielle supplémentaire qui les relie. Cette couche supplémentaire est aussi la raison pour laquelle les ponts méritent de l'attention.
Ce que fait réellement un pont
Un pont ne déplace pas des pièces comme un colis. Chaque chaîne a son propre registre : le pont crée donc un solde équivalent sur la chaîne de destination et prend le contrôle de l'original sur la chaîne source. Il existe trois conceptions courantes.
Verrouiller et créer (lock and mint)
Vous envoyez des jetons à un contrat de pont sur la chaîne A, qui les verrouille. Le pont crée (mint) alors sur la chaîne B un jeton enveloppé (wrapped) qui représente le jeton verrouillé. Quand vous voulez revenir, le jeton enveloppé est détruit et l'original est déverrouillé.
Le jeton enveloppé ne vaut que ce que valent les fonds verrouillés qui le garantissent. Si les fonds verrouillés sont volés, les jetons enveloppés peuvent perdre presque toute valeur, voire toute valeur. C'est pourquoi la sécurité du contrat du pont compte autant.
Détruire et créer (burn and mint)
Certains jetons, comme l'USDC natif, sont émis sur de nombreuses chaînes par le même émetteur. Un pont burn and mint détruit les jetons sur la chaîne A et l'émetteur crée la même quantité sur la chaîne B. Il n'existe pas de réserve de fonds verrouillés, donc le risque que « la réserve soit volée » est plus faible. Vous vous en remettez plutôt à l'émetteur et au système de messagerie entre les chaînes. Voir stablecoins pour l'USDC natif et l'USDC ponté.
Réseaux de liquidité
Un réseau de liquidité maintient des réserves de jetons sur chaque chaîne. Quand vous envoyez 100 USDC depuis la chaîne A, un teneur de marché ou une réserve sur la chaîne B vous paie 100 USDC (moins des frais) immédiatement, puis est remboursé plus tard avec les fonds que vous avez déposés. C'est ainsi que de nombreux ponts rapides paraissent instantanés. Vous vous en remettez aux réserves, à la tarification et à la logique de remboursement du réseau.
Ponts canoniques et ponts tiers
Le pont canonique (canonical bridge) d'un rollup est le pont officiel intégré à la conception du rollup et exécuté par des contrats intelligents sur Ethereum. Arbitrum, Base et OP Mainnet en ont chacun un. Sa sécurité est liée au rollup lui-même, et il n'ajoute pas de nouveau groupe de tiers de confiance.
Les ponts tiers sont construits par d'autres équipes. Ils offrent souvent plus de chaînes, des frais plus bas et plus de rapidité, mais vous ajoutez les contrats, les validateurs ou les relayeurs de cette équipe à la liste des éléments qui doivent fonctionner correctement.
| Caractéristique | Pont canonique | Pont tiers |
|---|---|---|
| Exploité par | Les contrats du rollup lui-même | Équipe indépendante |
| Confiance ajoutée | Aucune au-delà du rollup | Le code et les opérateurs du pont |
| Vitesse vers la L2 | Généralement quelques minutes | Souvent de quelques secondes à quelques minutes |
| Vitesse depuis une L2 optimiste | Environ 7 jours | Souvent de quelques minutes à quelques heures |
| Chaînes couvertes | Ce rollup et Ethereum | Souvent nombreuses |
Pourquoi les retraits prennent environ 7 jours
Déposer sur un rollup optimiste, d'Ethereum vers la L2, est rapide. Retirer vers Ethereum via le pont canonique ne l'est pas. Les rollups optimistes acceptent le nouvel état comme correct tant que personne ne prouve le contraire : le pont comporte donc une fenêtre de contestation (challenge window) d'environ 7 jours. Ce n'est qu'à son terme que le retrait peut être finalisé sur Ethereum. Les raisons sont expliquées dans rollups optimistes et rollups ZK.
La longue attente protège les fonds : elle laisse aux observateurs le temps de détecter une déclaration erronée avant que l'argent ne parte.
Comment les ponts rapides raccourcissent l'attente
Les ponts rapides utilisent un réseau de liquidité. Un fournisseur sur Ethereum vous paie immédiatement, par exemple 99,9 USDC sur 100, et reprend en échange votre créance de 7 jours sur les fonds de la L2. Le fournisseur attend la fin de la fenêtre, encaisse le montant complet et gagne les frais en rémunération de l'attente et du risque porté.
Vous obtenez vos fonds en quelques minutes, au prix des frais et de la confiance accordée aux contrats du pont et au fournisseur.
Les risques
Les ponts détiennent ou contrôlent d'importantes réserves de valeur et relient des systèmes différents, ce qui en fait des cibles attrayantes. Les piratages de ponts figurent parmi les plus gros vols de l'histoire des cryptos. Les principaux risques sont :
- Bugs de contrats intelligents. Une faille dans le contrat du pont peut permettre à un attaquant de créer des jetons qui n'ont jamais été garantis, ou de vider les fonds verrouillés.
- Clés compromises. Certains ponts sont contrôlés par un groupe de signataires. Si assez de leurs clés sont volées, les attaquants peuvent approuver de faux transferts.
- Vérification défaillante. Le pont peut mal vérifier les messages de l'autre chaîne.
- Risque des jetons enveloppés. Si un pont échoue, les jetons enveloppés comme l'USDC.e peuvent perdre leur valeur même si le jeton d'origine va bien.
- Risque lié aux opérateurs et aux mises à jour. Les équipes peuvent suspendre ou mettre à jour les contrats. Cela peut protéger les utilisateurs, mais constitue aussi un point de contrôle.
- Erreurs des utilisateurs. Choisir la mauvaise chaîne, la mauvaise version du jeton ou un faux site de pont.
Les audits aident mais n'éliminent pas le risque. Un pont qui fonctionne depuis longtemps avec beaucoup de valeur et un historique de sécurité clair en dit plus qu'un pont récent affichant un rendement élevé.
Liste de contrôle avant de faire un pont
- Avez-vous vraiment besoin d'un pont ? Parfois, vous pouvez retirer depuis une plateforme d'échange directement vers la chaîne voulue, et éviter le pont.
- Utilisez le lien officiel. Ouvrez le pont depuis la documentation du projet, pas depuis une publicité ou un message.
- Comparez les options. Vérifiez les frais, la vitesse, et si le pont est canonique ou tiers.
- Vérifiez le jeton. Confirmez si vous recevrez des jetons natifs ou pontés, et si votre application de destination les accepte.
- Envoyez d'abord un petit test. Surtout pour les nouveaux itinéraires ou les grosses sommes.
- Gardez du gas sur la destination. Il vous faut un peu du jeton de gas de la chaîne de destination pour faire quoi que ce soit à l'arrivée.
- Vérifiez les autorisations. Révoquez les autorisations de jetons accordées à un pont une fois l'opération terminée.
- N'engagez pas plus que ce que vous pouvez vous permettre de perdre dans un pont que vous ne comprenez pas.
Vous pouvez comparer le coût d'un transfert sur chaque chaîne sur le suivi du gas, et apprendre à protéger vos clés dans portefeuilles et clés.
Questions fréquentes
Est-il sûr d'utiliser un pont crypto ?
Certains sont plus sûrs que d'autres, mais tous ajoutent un risque par rapport au fait de rester sur une seule chaîne. Les ponts canoniques ne reposent que sur la sécurité du rollup lui-même. Les ponts tiers ajoutent leur propre code et leurs propres opérateurs. Utilisez des ponts bien établis et évitez d'envoyer plus que ce que vous pouvez vous permettre de perdre.
Combien de temps prend un pont ?
Un dépôt vers une L2 prend généralement quelques minutes. Un retrait d'Arbitrum, de Base ou d'OP Mainnet via le pont officiel prend environ 7 jours. Les ponts tiers rapides peuvent le ramener à quelques minutes ou heures moyennant des frais.
Qu'est-ce qu'un pont canonique ?
C'est le pont officiel d'un rollup, intégré à sa conception et exploité par des contrats sur Ethereum. C'est généralement la référence en matière de sécurité.
Pourquoi tant de ponts ont-ils été piratés ?
Les ponts détiennent de grandes quantités de valeur verrouillée, relient deux systèmes aux règles différentes, et dépendent de code et de clés qui doivent être corrects aux deux endroits. Un seul point faible peut suffire à un attaquant.
Quelle est la différence entre jetons pontés et jetons natifs ?
Un jeton ponté est une copie enveloppée garantie par des fonds verrouillés ailleurs. Un jeton natif est émis directement sur la chaîne par son émetteur. Voir l'article sur les stablecoins pour l'exemple de l'USDC et de l'USDC.e.