Clara Shikhelman, Misha Komarov et Aleksei Moskvin, chercheurs chez [[alloc] init] on publié aujourd’hui un protocole baptisé « Shielded Bitcoin » permettant d’effectuer des transactions confidentielles sans modifier le consensus de Bitcoin. Le système s’inspire notamment du fonctionnement des transactions protégées de Zcash.
Le principe consiste à remplacer la représentation publique des UTXO par des « notes » (un bloc de données préfixé inclus dans une transaction Bitcoin via OP_RETURN ou le champ Witness) dont le montant et le destinataire restent chiffrés. Des preuves à divulgation nulle de connaissance permettent néanmoins de vérifier qu’une transaction respecte les règles du protocole. Un « nullifier », valeur cryptographique unique associée à chaque note dépensée, permet de détecter une tentative de double dépense sans révéler quelle note a été utilisée. L’objectif est ainsi de masquer les montants et les liens entre les transactions tout en conservant une possibilité de vérification.
Cette vérification ne pourrait évidemment pas être effectuée dans Bitcoin lui-même. Les transactions Shielded Bitcoin seraient enregistrées sur la TimeChain comme des données, mais les nœuds Bitcoin n’auraient pas à en comprendre les règles ni à vérifier les preuves cryptographiques correspondantes. Des indexeurs exécutant le protocole Shielded Bitcoin auraient à reconstruire son état et à déterminer quelles transactions sont valides. Bitcoin fournirait ainsi une couche de publication et d’ordonnancement, tandis qu’une partie de la vérification serait réalisée au-dessus du consensus.
L’intérêt c’est que le protocole ne nécessiterait pas de faire appel à un prestataire, un coordinateur ou un autre intermédiaire de confiance. L’utilisateur devrait disposer d’un nœud Bitcoin, d’un indexeur Shielded Bitcoin et de ses propres clés. Il pourrait ainsi conserver lui-même le contrôle de ses fonds et de l’état du protocole.
Cette architecture présente toutefois une limite importante : Shielded Bitcoin ne constitue pas encore un système complet. Les mécanismes permettant d’introduire des bitcoins dans le système et de les en retirer, les « peg-in » et « peg-out », ne sont pas traités dans ce travail. Les auteurs indiquent notamment s’appuyer sur des travaux antérieurs pour cette partie.
Le projet doit donc être considéré à ce stade comme une simple proposition de recherche. Obtenir réellement des transactions Bitcoin privées sans soft fork ni dépositaire (ni fédération dépositaire comme Liquid) nécessitera encore un lourd travail sans que l’aboutissement soit assuré.
Pour en savoir plus :
https://www.allocinit.xyz/uploads/shielded-bitcoin.pdf
https://bitcoinmagazine.com/technical/alloc-init-releases-shielded-bitcoin-proposal-for-private-bitcoin-transactions



