Logo Bitcoin Tools
Sécurité et données

Garanties et sécurité

Bitcoin Tools superpose plusieurs protections afin qu'une mauvaise manipulation ne puisse pas détruire un actif. Voici l'inventaire complet.

Mode démo : signature impossible par conception

L'adaptateur de Wallet de démonstration (demoAdapter.signPsbt) lève une exception inconditionnellement. Aucune PSBT de démonstration ne peut jamais atteindre le mempool, même si quelqu'un tentait de contourner l'interface utilisateur.

Exclusions automatiques par type d'actif

  • BRC-20 transférable « locked » : tout UTXO détenant une inscription BRC-20 « transfer » prête à être envoyée est verrouillé. Chaque builder l'exclut et affiche une bannière dédiée.
  • Runes : exclues de l'Inscriber, du Splitter et du Padding Recovery (risque de burn si non géré via un runestone).
  • Alkanes : tout UTXO positivement détecté comme porteur d'Alkanes est exclu partout sauf dans le Wallet Dashboard (lecture seule), car la pile actuelle ne sait pas construire de PSBT sûr pour les alkanes. La détection dépend d'un fournisseur externe : lorsqu'il est indisponible, la détection est signalée comme incomplète dans l'interface et n'est pas considérée comme une preuve qu'un UTXO est exempt d'Alkanes.

FIFO 1:1 pour les Ordinals

Le UTXO Mover et le Padding Recovery construisent des transactions où chaque UTXO source produit exactement un UTXO de destination, dans le même ordre. Cette règle FIFO garantit qu'un sat numéroté reste identifiable et ne sera jamais accidentellement échangé avec un autre.

Édits décodés / ré-encodés

Le Runes Mover valide les edicts via un aller-retour : le runestone construit est décodé et comparé à la spécification originale. Toute divergence ou cenotaph bloque la signature.

Seuils de sortie minimaux appliqués par Bitcoin Tools

Il s'agit de seuils prudents appliqués par l'application pour éviter de créer des sorties minuscules ou mal relayées. Ce ne sont pas nécessairement les seuils de poussière exacts du protocole ou de la politique de relais pour chaque type de script.

  • P2TR (Ordinals) : minimum 330 sats par sortie.
  • P2WPKH (paiement) : minimum 546 sats par sortie.
  • Récupération de padding : si le surplus récupéré est inférieur à 546 sats, un complément automatique depuis l'adresse de paiement (cible : 600 sats) empêche la perte.

Validation du réseau et de l'adresse

  • L'adresse de destination est vérifiée par rapport au réseau actif (mainnet).
  • Pour Speed Up (RBF), chaque entrée doit appartenir à votre portefeuille connecté — impossible de RBF la transaction de quelqu'un d'autre.
  • Les UTXO sont revérifiés en arrière-plan par rapport à mempool.space avant la construction du PSBT, pour éviter de dépenser des outpoints déjà dépensés.

Limites Bitcoin (ancestor cap)

Le Splitter et le Runes Minter sont liés par la limite de Bitcoin de 25 transactions ancêtres non confirmées. Les chaînes sont automatiquement divisées en lots qui respectent cette limite.

Inscriptions toujours à l'offset 0

L'Inscriber place toujours l'inscription à l'offset 0 de l'UTXO de destination, ce qui la rend compatible avec toutes les marketplaces et portefeuilles Ordinals.

Les trois états du scan Paiement

Avant qu'un UTXO de paiement ne serve à payer des frais, il passe par le scan de paiement partagé. Il se termine toujours dans l'un de ces trois états, et le vocabulaire des outils le suit exactement :

  • Sain — le scan est terminé et n'a rien trouvé de valeur : l'UTXO peut financer les frais et la sortie de monnaie.
  • Risque détecté — le scan a trouvé un rare sat, un satribut, une inscription ou une rune sur cet UTXO : il est bloqué et ne financera jamais de frais.
  • Incomplet / non vérifié — le scan n'a pas pu aboutir (source indisponible, quota, réseau). Rien n'est supposé : l'UTXO reste hors des nouveaux pools de frais tant que vous n'acceptez pas explicitement le repli à couverture réduite, et une relance est proposée.

Trois notions sont souvent confondues. Un UTXO bloqué porte une preuve positive de valeur et est refusé volontairement. Un UTXO neutre / inconnu ne porte aucune identité prouvée ou aucun scan terminé : il s'affiche sans couleur et n'est pas considéré comme sûr. Un UTXO simplement non sélectionnable est parfaitement ordinaire : il ne correspond pas à l'outil courant (mauvais portefeuille, non confirmé, déjà planifié, taille insuffisante).

Anti-brûlure pour les sats rares

Le Splitter vérifie que la chaîne ne laisse jamais un sat rare transiter par l'adresse de paiement (où il pourrait être dépensé en frais). Les singletons rares (palindromes isolés, alpha, omega…) sont redirigés vers le Rescuer.

Vérification des rare sats à sécurité intégrée avant dépense

Tout outil susceptible de dépenser un UTXO supposément ordinaire (Consolidator Rescue en particulier) utilise une vérification de sécurité partagée. Un UTXO n'est traité comme ordinaire que lorsque la vérification des rare sats est terminée avec succès et n'a rien trouvé.

  • Une preuve positive à n'importe quel niveau — un sat exact, une catégorie ou un compteur au niveau de la plage, ou un agrégat au niveau de l'outpoint — bloque l'UTXO.
  • Les résultats en attente, indisponibles, limités en débit, mal configurés ou invalides le bloquent également : l'incertitude n'est jamais traitée comme une sécurité.
  • Un drapeau manuel « verified common » ne peut pas annuler une preuve positive.
  • La vérification est répétée immédiatement avant la signature, et la transaction est annulée si un UTXO sélectionné ne remplit plus les conditions.
  • Lorsque l'intégration WecSats est globalement désactivée, le flux précédent s'applique : Ordiscan plus votre vérification manuelle explicite.

Chiffrement de la clé Ordiscan

Votre clé Ordiscan est validée en direct, puis chiffrée avec AES-256-GCM (IV aléatoire de 12 octets) à l'aide d'une clé de serveur. Elle n'est jamais renvoyée au client ni journalisée. Seuls les 4 derniers caractères sont affichés pour identification.

Modes de maintenance et de lecture seule

L'équipe peut, depuis le panneau d'administration, basculer la plateforme en mode maintenance (page plein écran pour tout le monde sauf les administrateurs) ou marquer un outil comme lecture seule (les diffusions sont bloquées côté client et côté serveur — défense en profondeur).

Score de sécurité du PSBT Inspector

Avant de signer une PSBT externe, le PSBT Inspector calcule un score basé sur : la présence d'inscriptions/runes/sats rares, les types de sorties, le solde, le taux de frais, les signatures déjà présentes. Voir PSBT Inspector.

La dernière ligne de défense, c'est vous
Aucune protection logicielle ne remplace une lecture attentive du résumé dans Xverse avant de signer. Vérifiez toujours les adresses, les montants et les frais.
BTC —