Auteur : 798.eth
Ces deux derniers jours, la plateforme Bound, très en vogue dans l'écosystème Bitcoin, est l'ancien radfi, une plateforme que j'ai commencé à utiliser fin 2025 à cause du jeton de stratégie NodeStrategy Monkey, et qui s'est désormais améliorée et renommée Bound Exchange. Cette plateforme propose un actif très particulier, en réalité la stratégie Monkey, un effet de levier pour les NodeMonkeys, soutenu par un actif sous-jacent. La clé est de voir si l'actif sous-jacent peut le soutenir.
Aujourd'hui, je vais principalement parler de la logique de dépôt/retrait et d'échange de ses actifs. Mais avant de plonger dans les mécanismes, laissez-moi d'abord expliquer la différence entre Bound, après sa mise à niveau, et l'ancien Radfi.
I. Passé et Présent : De Radfi à Bound
Bound n'est pas apparu de nulle part, c'est une réécriture complète de radFi. Le site officiel de radFi affiche maintenant lui-même une ligne indiquant que radFi a évolué en bound.exchange. Même équipe, la stack technique est passée de Create-React-App à Next.js, tout a été réécrit.
Ce que Bound ajoute vraiment, c'est un portefeuille multichaîne intégré avec passkey, un prêt à terme avec Bitcoin comme garantie pour emprunter du bUSD, ainsi que le cross-chain SODAX. Le moteur de trading reste le même AMM à liquidité concentrée de radFi, le swap de Runes n'a pas été modifié.
Cette ligne de produits comporte deux ensembles de 2-sur-2 avec verrouillage temporel. Celui de la couche compte vous protège, après trois mois vous pouvez vous passer de Bound ; celui du prêt protège le prêteur, une fois la période de grâce écoulée, le prêteur récupère directement votre garantie. (Voir le tableau de comparaison détaillé radFi → Bound)
II. Mécanisme Central : Gestion des Actifs et Custodie Multisignature 2-sur-2
Après avoir compris son positionnement, examinons la logique de gestion de ses actifs. Il y a deux points principaux : la custodie multisignature 2-sur-2, et la protection du compte à rebours de verrouillage temporel (timelock) en cas de fuite ou de panne de la plateforme.
Commençons par définir le scénario. Vous avez du BTC et vous voulez trader sur une plateforme. L'approche traditionnelle est d'envoyer vos coins sur le portefeuille de la plateforme, qui les garde pour vous. Le problème est que les coins ne sont plus en votre possession ; si la plateforme fuit ou se fait pirater, les coins disparaissent avec elle, comme ce fut le cas pour FTX et Celsius. Bound cherche à résoudre cette contradiction : avoir la vitesse d'exécution d'une plateforme de niveau CEX, sans pour autant céder le contrôle de vos coins.
Première étape, qu'est-ce qu'un dépôt.
Après inscription, Bound vous donne une adresse Bitcoin, du type commençant par bc1p. Pour trader, vous transférez d'abord du BTC depuis votre portefeuille vers cette adresse. Un simple transfert Bitcoin, 3 confirmations pour être crédité, environ une demi-heure. Jusqu'ici, pas de différence avec l'utilisation d'un portefeuille ordinaire. Le vrai design est caché dans la question suivante.
Deuxième étape, à qui appartient la clé privée de cette adresse.
C'est le cœur de tout le système. Il n'y a que deux approches simples : soit la clé privée est uniquement chez la plateforme, c'est de la custodie, on revient au problème de FTX ; soit la clé privée est uniquement chez vous, alors la plateforme ne peut pas vous aider à exécuter rapidement, chaque transaction nécessite votre signature manuelle, c'est lent.
La solution de Bound est que cette adresse n'a pas une seule clé, mais deux. Pour déplacer les coins qu'elle contient, les deux clés doivent signer. C'est la multisignature 2-sur-2.
Troisième étape, à qui appartiennent ces deux clés.
Une est la vôtre, stockée sur votre propre appareil, appelée via passkey, la clé privée ne quitte jamais l'appareil. L'autre est dans le backend de Bound. Lors des transactions quotidiennes, vous signez avec votre passkey, le backend de Bound ajoute automatiquement l'autre signature, les deux sont réunies, exécution en quelques secondes.
Arrêtons-nous ici pour bien comprendre. Bound n'a qu'une seule clé, elle ne peut pas déplacer vos coins unilatéralement, donc ce n'est pas de la custodie, elle ne peut pas utiliser vos coins pour les détourner ou les prêter. Mais ensemble, vous pouvez exécuter instantanément, la vitesse est là. C'est l'effet recherché par le 2-sur-2 : sécurité et vitesse simultanément.
Quatrième étape, à quel problème le timelock vient remédier.
Le 2-sur-2 apporte un nouveau problème. Puisqu'il faut deux clés, si Bound fuit, plante, ou est fermée, cette clé backend est perdue à jamais, il ne vous reste qu'une clé, les coins sont-ils alors bloqués à jamais dans l'adresse ?
Le timellock est là pour colmater cette brèche. La règle est simple : la signature conjointe de Bound a une validité de 3 mois. Pendant ces 3 mois, déplacer les coins nécessite les deux clés. Après 3 mois, vous pouvez retirer tous les coins avec votre seule clé, sans plus besoin de Bound.
Le point crucial est que ce n'est pas une promesse verbale de Bound, c'est écrit dans le script Bitcoin, exécuté de force par le réseau Bitcoin. L'accord de Bound ne sert à rien, une fois le temps écoulé, vous pouvez partir avec une seule signature. C'est là qu'il puise sa confiance pour revendiquer le "self-custody".
Cinquième étape, le retrait devient maintenant logique.
Retrait normal, vous signez avec passkey et Bound ajoute sa signature conjointe en backend, les deux sont là, exécution instantanée. Retrait d'évacuation, si Bound disparaît, vous attendez que le timelock de 3 mois expire, et avec votre seule clé, vous balayez les coins vers n'importe quelle adresse.
En reliant ces cinq étapes, les quatre premiers mots forment une chaîne : vous déposez des coins sur une adresse 2-sur-2, c'est le dépôt ; quotidiennement, vous et Bound dépensez ensemble avec les deux clés, c'est le chemin rapide du retrait ; la clé de Bound expire après 3 mois, c'est le timelock ; après expiration, vous pouvez partir avec une seule clé, c'est la sortie de secours du retrait.
III. Logique Sous-jacente : L'Ordonnancement des Transactions sur Bound ex
Après avoir compris comment les actifs sont déposés, parlons de l'ordonnancement des transactions sur Bound ex.
Il n'y a pas de contrats intelligents sur Bitcoin. Alors, où l'AMM d'un DEX natif Bitcoin effectue-t-il la compensation, qui décide que votre ordre se classe en quelle position pour être exécuté ? Essentiellement, c'est un backend de compensation de CEX, connecté à la blockchain Bitcoin comme couche de règlement. Détaillons étape par étape :
-
Premièrement, cette courbe AMM n'est pas sur la chaîne. BTC L1 n'a pas de contrats, les états comme les réserves, les ticks, les intervalles de liquidité n'ont nulle part où être stockés, ils ne peuvent être que dans la base de données du backend de Bound. Les UTXO sur la chaîne ne sont que le résultat de la custodie et du règlement des fonds des LP.
-
Deuxièmement, les transactions sur la chaîne ne sont que des reçus de règlement. J'ai consulté l'historique des transactions de ce pool, chaque entrée/sortie est un montant fixe prédéfini, ne contenant en lui-même aucun calcul de courbe. La multiplication le long de la courbe a été effectuée en backend avant d'être mise sur la chaîne. Les vingt transactions dans un bloc, chacune dépensant son propre UTXO, sans lien entre elles, c'est précisément parce que le prix a été fixé hors chaîne à l'avance, la mise sur chaîne ne fait qu'enregistrer un ensemble de nombres prédéfinis.
-
Troisièmement, comment un ordre unique est-il évalué ? Vous voulez acheter/vendre via l'interface, l'interface demande un prix au backend. Le backend utilise la courbe de liquidité concentrée qu'il maintient pour calculer, votre ordre absorbe de la liquidité le long du tick, déduit les frais, et vous donne un nombre. Vous signez un PSBT avec ce nombre figé, le backend vérifie et, si correct, signe conjointement et diffuse, tout en décalant d'un cran la courbe dans ses registres. La courbe ne vit que dans le backend.
-
Quatrièmement, l'ordonnancement est imposé mathématiquement par cette courbe, impossible à contourner. La courbe a un état, à tout moment il n'y a qu'une seule position actuelle. Chaque ordre arrivant absorbe un segment de liquidité, la courbe est décalée vers une nouvelle position, l'ordre suivant ne peut être exécuté qu'à cette nouvelle position. Cela signifie que tous les ordres sont intrinsèquement incapables d'être réglés simultanément, ils doivent être arrangés en une séquence strictement séquentielle. Le premier ordre s'exécute à la position initiale, décale d'un cran, le deuxième à la nouvelle position décale encore d'un cran, et ainsi de suite.
-
Cinquièmement, mais qui décide de l'ordre, et selon quels critères, est une autre affaire. Il faut distinguer deux types d'ordre. L'un est l'heure réelle où vous cliquez sur confirmer, l'autre est l'ordre de traitement que le backend utilise réellement pour décaler la courbe. Ni la chaîne ni le protocole ne garantissent la cohérence entre les deux. Votre ordre entre dans la file d'attente du backend de Bound, qu'il déclare ou non, s'il traite selon l'heure d'arrivée, s'il avance ou retarde qui que ce soit, tout cela se passe en interne, vous ne le voyez pas.
-
Sixièmement, c'est l'entrée pour le MEV de l'opérateur, plus pointu que le MEV sur chaîne ordinaire. L'ordre d'exécution d'un DEX classique est au moins visible dans le bloc, on peut analyser a posteriori qui a front-run, qui a sandwich. Ici, l'ordonnancement de Bound se produit hors chaîne, et une fois les résultats enregistrés dans un bloc, même les traces de séquence disparaissent, les vingt transactions n'étant pas connectées entre elles, on ne peut pas savoir sur la chaîne qui était premier ou dernier. Mais au moment où vous cliquez sur confirmer, le prix est déjà calculé selon un point sur la courbe. Simplement, vous ne savez pas à quelle position dans le bloc votre ordre est classé.
Donc Bound n'est pas sans ordre, l'ordre est mathématiquement forcé d'exister, il a simplement entièrement internalisé le pouvoir de définir cet ordre dans une boîte noire. Au niveau du capital principal, c'est bien de l'auto-custodie, 2-sur-2 avec timelock, la plateforme ne peut pas toucher à vos coins, mais à quel prix et en quelle position votre transaction est exécutée, c'est elle qui tient les comptes hors chaîne. En fin de compte, c'est un backend de compensation de CEX, connecté à la plus grande blockchain mondiale pour le règlement, confirmant par blocs toutes les dix minutes environ, irréversible une fois confirmé.
IV. Éviter les Pièges en Pratique et Retour d'Expérience
Enfin, deux détails pratiques pour éviter les pièges. Cette adresse 2-sur-2 n'accepte que le BTC et les Runes, envoyer des BRC-20, Alkanes ou des coins d'autres chaînes entraînera une perte permanente. De plus, vous pouvez aussi ne pas utiliser le système de Bound et connecter directement votre Unisat ou Xverse, dans ce cas il n'y a pas de 2-sur-2 ni de timelock, les coins restent dans votre portefeuille à signature unique, au prix de devoir signer manuellement chaque transaction.
Actuellement, l'expérience présente encore quelques petits problèmes. J'ai testé : une transaction précédente avait déjà deux confirmations de blocs, mais l'interface Bound affichait toujours "pending", empêchant de passer l'ordre suivant. J'espère que l'équipe officielle de @Bound_Exchange pourra examiner ce problème.







