|
| 1 | +--- |
| 2 | +title: 'Bulletin Hebdomadaire Bitcoin Optech #249' |
| 3 | +permalink: /fr/newsletters/2023/05/03/ |
| 4 | +name: 2023-05-03-newsletter-fr |
| 5 | +slug: 2023-05-03-newsletter-fr |
| 6 | +type: newsletter |
| 7 | +layout: newsletter |
| 8 | +lang: fr |
| 9 | +--- |
| 10 | +Le bulletin de cette semaine résume une analyse de l'utilisation d'une |
| 11 | +conception de dépense flexible (covenant) pour réimplémenter la proposition `OP_VAULT`, |
| 12 | +résume un post sur la sécurité des adaptateurs de signature, et relaie une |
| 13 | +annonce d'emploi qui pourrait être particulièrement intéressante pour |
| 14 | +certains lecteurs. Vous y trouverez également nos sections régulières |
| 15 | +décrivant les nouvelles versions, les versions candidates et les changements |
| 16 | +notables apportés aux logiciels d'infrastructure Bitcoin les plus répandus. |
| 17 | + |
| 18 | +## Nouvelles |
| 19 | + |
| 20 | +- **Coffres-forts basés sur MATT :** Salvatore Ingala [a posté][ingala vaults] |
| 21 | + sur la liste de diffusion Bitcoin-Dev une implémentation approximative d'un |
| 22 | + [coffre-fort][topic vaults] avec un comportement similaire aux récentes |
| 23 | + propositions OP_VAULT (voir [Newsletter #234][news234 op_vault]) mais qui |
| 24 | + est plutôt basé sur la proposition Merklize All The Things (MATT) d'Ingala |
| 25 | + (voir [Newsletter #226][news226 matt]). MATT permettrait la création de |
| 26 | + contrats très flexibles sur Bitcoin grâce à l'embranchement convergent de |
| 27 | + quelques opcodes [covenant][topic covenants] très simples. |
| 28 | + |
| 29 | + Dans le billet de cette semaine, Ingala a cherché à démontrer que MATT |
| 30 | + ne serait pas seulement très flexible, mais qu'il serait également efficace |
| 31 | + et facile à utiliser dans les modèles de transaction qui pourraient un |
| 32 | + jour être utilisés fréquemment. Comme dans les versions récentes de la |
| 33 | + proposition `OP_VAULT`, Ingala s'appuie sur la proposition [BIP119][] |
| 34 | + pour [OP_CHECKTEMPLATEVERIFY][topic op_checktemplateverify] (CTV). En |
| 35 | + utilisant deux opcodes supplémentaires proposés (et en reconnaissant |
| 36 | + qu'ils ne couvrent pas entièrement tout ce qui est nécessaire), il |
| 37 | + fournit un ensemble de fonctionnalités qui est presque équivalent à |
| 38 | + `OP_VAULT`. La seule omission notable est "une option pour ajouter une |
| 39 | + sortie supplémentaire qui est renvoyée vers le même coffre-fort". |
| 40 | + |
| 41 | + À l'heure où nous écrivons ces lignes, le message d'Ingala n'a pas |
| 42 | + reçu de réponse directe, mais il y a eu une [discussion continue][halseth matt] |
| 43 | + sur sa proposition originale pour MATT et sa capacité à permettre |
| 44 | + la vérification de l'exécution d'un programme (essentiellement) |
| 45 | + arbitrairement complexe. |
| 46 | + |
| 47 | +- **Analyse de la sécurité de l'adaptateur de signature :** Adam Gibson |
| 48 | + a [posté][gibson adaptors] sur la liste de diffusion Bitcoin-Dev une |
| 49 | + analyse de la sécurité des [adaptateurs de signature][topic adaptor signatures], |
| 50 | + en particulier sur la façon dont ils interagissent avec les protocoles |
| 51 | + [multisignature][topic multisignature] tels que [MuSig][topic musig] |
| 52 | + où plusieurs parties doivent travailler ensemble en toute confiance |
| 53 | + pour créer des adaptateurs. Il est prévu d'utiliser les adaptateurs |
| 54 | + de signature pour mettre à jour le LN à court terme afin d'utiliser |
| 55 | + les [PTLC][topic ptlc] pour améliorer l'efficacité et la confidentialité. |
| 56 | + Il est également prévu de les utiliser dans un certain nombre d'autres |
| 57 | + protocoles, principalement pour améliorer l'efficacité, la confidentialité |
| 58 | + ou les deux. Ils représentent l'un des éléments de base les plus puissants |
| 59 | + pour les protocoles nouveaux et améliorés de Bitcoin, de sorte qu'une |
| 60 | + analyse minutieuse de leurs propriétés de sécurité est essentielle pour |
| 61 | + s'assurer qu'ils sont utilisés correctement. Gibson s'appuie sur l'analyse |
| 62 | + précédente de Lloyd Fournier et d'autres (voir [Bulletin #129][news129 adaptors]), |
| 63 | + mais il note également les domaines qui nécessitent une analyse plus |
| 64 | + approfondie et demande une révision de ses propres contributions. |
| 65 | + |
| 66 | +- **Opportunité d'emploi pour les champions de projets :** Steve Lee, |
| 67 | + de l'organisation Spiral qui accorde des subventions, a [posté][lee hiring] |
| 68 | + sur la liste de diffusion Bitcoin-Dev pour demander à des contributeurs |
| 69 | + Bitcoin très expérimentés de postuler à un poste rémunéré à temps plein |
| 70 | + pour défendre des projets inter-équipes qui apporteront des améliorations |
| 71 | + significatives à l'évolutivité, à la sécurité, à la confidentialité et |
| 72 | + à la flexibilité à long terme de Bitcoin. Voir son message pour plus |
| 73 | + de détails. |
| 74 | + |
| 75 | +## Mises à jour et versions candidates |
| 76 | + |
| 77 | +*Nouvelles versions et versions candidates pour les principaux projets d’infrastructure |
| 78 | +Bitcoin. Veuillez envisager de passer aux nouvelles versions ou d’aider à tester |
| 79 | +les versions candidates.* |
| 80 | + |
| 81 | +- [LND v0.16.2-beta][] est une version mineure de cette implémentation de LN |
| 82 | + qui inclut plusieurs corrections de bogues pour les "régressions de performance |
| 83 | + introduites dans la version mineure précédente". |
| 84 | + |
| 85 | +- [Core Lightning 23.05rc2][] est une version candidate de la prochaine |
| 86 | + version de l'implémentation du LN. |
| 87 | + |
| 88 | +## Changements notables dans le code et la documentation |
| 89 | + |
| 90 | +*Changements notables cette semaine dans [Bitcoin Core][bitcoin core repo], [Core |
| 91 | +Lightning][core lightning repo], [Eclair][eclair repo], [LDK][ldk repo], |
| 92 | +[LND][lnd repo], [libsecp256k1][libsecp256k1 repo], [Hardware Wallet |
| 93 | +Interface (HWI)][hwi repo], [Rust Bitcoin][rust bitcoin repo], [BTCPay |
| 94 | +Server][btcpay server repo], [BDK][bdk repo], [Bitcoin Improvement |
| 95 | +Proposals (BIPs)][bips repo], [Lightning BOLTs][bolts repo], et |
| 96 | +[Bitcoin Inquisition][bitcoin inquisition repo].* |
| 97 | + |
| 98 | +- [Bitcoin Core #25158][] ajoute un champ `abandoned` aux réponses |
| 99 | + détaillées des transactions des RPCs `gettransaction`, `listtransactions`, |
| 100 | + et `listsinceblock` indiquant quelles transactions ont été marquées comme |
| 101 | + [abandonnées][abandontransaction rpc]. |
| 102 | + |
| 103 | +- [Bitcoin Core #26933][] réintroduit l'exigence que chaque transaction |
| 104 | + respecte le taux de frais minimum de relais du nœud (`-minrelaytxfee`) |
| 105 | + afin d'être acceptée dans le mempool, même lorsqu'elle est évaluée en |
| 106 | + tant que paquet. La validation des paquets permet toujours de faire |
| 107 | + passer une transaction en dessous du feerate minimum dynamique du mempool. |
| 108 | + Cette politique a été réintroduite pour éviter le risque que des |
| 109 | + transactions à tarif zéro perdent leur descendant à tarif élevé dans |
| 110 | + le cas d'un remplacement. Elle pourra être inversée dans le futur si |
| 111 | + une méthode résistante aux DoS pour empêcher de telles transactions |
| 112 | + est trouvée, par exemple à travers une restriction de la topologie |
| 113 | + des paquets comme v3 ou une modification du processus d'éviction |
| 114 | + du mempool. |
| 115 | + |
| 116 | +- [Bitcoin Core #25325][] introduit une ressource mémoire basée sur un |
| 117 | + pool pour le cache des UTXO. La nouvelle structure de données pré-attribue |
| 118 | + et gère un plus grand pool de mémoire pour suivre les UTXO au lieu d'allouer |
| 119 | + et de libérer de la mémoire pour chaque UTXO individuellement. Les |
| 120 | + consultations d'UTXO représentent une part importante des accès à la |
| 121 | + mémoire, en particulier pendant l'IBD. Les analyses comparatives indiquent |
| 122 | + que la réindexation est accélérée de plus de 20 % grâce à la gestion plus |
| 123 | + efficace de la mémoire. |
| 124 | + |
| 125 | +- [Bitcoin Core #25939][] permet aux nœuds avec l'index de transaction |
| 126 | + optionnel activé de rechercher cet index lors de l'utilisation de la |
| 127 | + RPC `utxoupdatepsbt` pour mettre à jour un [PSBT][topic psbt] avec des |
| 128 | + informations sur les sorties de transaction qu'il dépense. Lorsque la |
| 129 | + RPC a été mise en œuvre pour la première fois en 2019 (voir [Bulletin #34][news34 psbt]), |
| 130 | + deux types de sorties étaient courants sur le réseau : les sorties legacy |
| 131 | + et les sorties segwit v0. Chaque dépense d'une sortie ancienne dans une |
| 132 | + PSBT doit inclure une copie complète de la transaction qui contenait |
| 133 | + cette sortie afin qu'un signataire puisse vérifier le montant de cette |
| 134 | + sortie. Créer une dépense sans vérifier le montant de la sortie dépensée |
| 135 | + peut conduire le dépenseur à surpayer massivement les frais de transaction, |
| 136 | + d'où l'importance de la vérification. |
| 137 | + |
| 138 | + Chaque dépense d'une sortie segwit v0 s'engage sur son montant afin |
| 139 | + de permettre aux PSBT d'inclure uniquement la clé scriptPubKey et le |
| 140 | + montant de la sortie plutôt que l'ensemble de la transaction précédente. |
| 141 | + On pensait ainsi éliminer la nécessité d'inclure la totalité de la |
| 142 | + transaction. Puisque chaque sortie de transaction non dépensée pour |
| 143 | + chaque transaction confirmée est stockée dans l'ensemble UTXO de Bitcoin |
| 144 | + Core, la RPC `utxoupdatepsbt` peut ajouter la clé de script et le montant |
| 145 | + nécessaires à n'importe quelle PSBT dépensant une UTXO. La RPC `utxoupdatepsbt` |
| 146 | + recherchait également auparavant des UTXO dans le mempool du nœud local |
| 147 | + pour permettre aux utilisateurs de dépenser les résultats de transactions |
| 148 | + non confirmées. |
| 149 | + |
| 150 | + Cependant, après que `utxoupdatepsbt` a été ajouté à Bitcoin Core, plusieurs |
| 151 | + dispositifs de signature matérielle ont commencé à exiger que même les spends |
| 152 | + des sorties segwit v0 incluent des transactions complètes afin d'éviter une |
| 153 | + variante de surpaiement de frais qui pourrait résulter d'un utilisateur signant |
| 154 | + apparemment deux fois la même transaction (voir [Bulletin #101][news101 overpayment]). |
| 155 | + Cela a renforcé la nécessité de pouvoir inclure des transactions complètes |
| 156 | + dans un PSBT. |
| 157 | + |
| 158 | + Ce PR fusionné recherchera dans l'index des transactions (s'il est activé) |
| 159 | + et dans le mempool du nœud local les transactions complètes, et les inclura |
| 160 | + dans le PSBT si nécessaire. Si une transaction complète n'est pas trouvée, |
| 161 | + l'ensemble UTXO sera utilisé pour les dépenses des sorties segwit. Notez |
| 162 | + que Taproot (segwit v1) élimine le problème de surpaiement pour la plupart |
| 163 | + <!-- skip-duplicate-words-test --> des transactions qui dépensent au moins une sortie taproot, nous nous |
| 164 | + attendons donc à ce que les futures mises à jour des dispositifs de signature |
| 165 | + matérielle cessent d'exiger des transactions complètes dans ce cas. |
| 166 | + |
| 167 | +- [LDK #2222][] permet de mettre à jour les informations relatives à un canal |
| 168 | + à l'aide d'un message transmis par les nœuds impliqués dans ce canal sans |
| 169 | + vérifier que le canal correspond à un UTXO. Les messages Gossip LN ne devraient |
| 170 | + être acceptés que s'ils appartiennent à un canal avec un UTXO prouvé car c'est |
| 171 | + l'une des façons dont LN est conçu pour prévenir les attaques par déni de |
| 172 | + service (DoS), mais certains nœuds LN n'auront pas la capacité de rechercher |
| 173 | + des UTXO et peuvent avoir d'autres méthodes pour prévenir les attaques par |
| 174 | + déni de service. Ce PR fusionné leur permet d'utiliser plus facilement les |
| 175 | + informations sans source de données UTXO. |
| 176 | + |
| 177 | +- [LDK #2208][] ajoute la rediffusion des transactions et l'augmentation |
| 178 | + des frais pour les [HTLC][topic htlc] non résolus dans les canaux qui |
| 179 | + ont été fermés de force. Cela permet de remédier à certaines [attaques |
| 180 | + par épinglage][topic transaction pinning] et d'assurer la fiabilité. |
| 181 | + Voir également le [bulletin d'information n° 243][news243 rebroadcast] dans |
| 182 | + lequel LND a ajouté sa propre interface de rediffusion et le [bulletin |
| 183 | + d'information de la semaine dernière][news247 rebroadcast] dans lequel |
| 184 | + CLN a amélioré sa propre logique. |
| 185 | + |
| 186 | +{% include references.md %} |
| 187 | +{% include linkers/issues.md v=2 issues="25158,26933,25325,2222,2208,25939" %} |
| 188 | +[Core Lightning 23.05rc2]: https://github.com/ElementsProject/lightning/releases/tag/v23.05rc2 |
| 189 | +[lnd v0.16.2-beta]: https://github.com/lightningnetwork/lnd/releases/tag/v0.16.2-beta |
| 190 | +[news101 overpayment]: /en/newsletters/2020/06/10/#fee-overpayment-attack-on-multi-input-segwit-transactions |
| 191 | +[news129 adaptors]: /fr/newsletters/2020/12/23/#ptlcs |
| 192 | +[news243 rebroadcast]: /fr/newsletters/2023/03/22/#lnd-7448 |
| 193 | +[news247 rebroadcast]: /fr/newsletters/2023/04/19/#core-lightning-6120 |
| 194 | +[ingala vaults]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-April/021588.html |
| 195 | +[news226 matt]: /fr/newsletters/2022/11/16/#contrats-intelligents-generaux-en-bitcoin-via-des-clauses-restrictives |
| 196 | +[news234 op_vault]: /fr/newsletters/2023/01/18/#proposition-de-nouveaux-opcodes-specifiques-aux-coffre-forts |
| 197 | +[halseth matt]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-April/021593.html |
| 198 | +[gibson adaptors]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-April/021594.html |
| 199 | +[lee hiring]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-April/021589.html |
| 200 | +[news34 psbt]: /en/newsletters/2019/02/19/#bitcoin-core-13932 |
| 201 | +[abandontransaction rpc]: https://developer.bitcoin.org/reference/rpc/abandontransaction.html |
0 commit comments