Signatures en anneau dans Bitcoin  : Exécutez Monero sur Bitcoin


Nous avons implémenté la toute première signature Ring dans Bitcoin.

Signatures de bague

N’importe qui dans le ring peut signer et personne ne peut dire qui a signé

UN signature de l’anneau est un type de signature numérique qui permet à un message d’être signé par un seul membre d’un groupe ou d’un anneau. Cela prouve que quelqu’un dans le ring signe effectivement, mais il n’y a aucun moyen d’identifier le véritable signataire parmi les membres du ring.

Signatures en anneau dans Bitcoin  : Exécutez Monero sur Bitcoin

Sa confidentialité accrue permet de nombreuses applications, telles que  :

  • dénonciation : un dénonciateur du gouvernement veut divulguer que son agence collecte secrètement les données privées des citoyens, mais souhaite rester anonyme en raison du risque d’être licencié. En utilisant une signature circulaire, il peut démontrer qu’il travaille pour l’agence et ainsi crédibiliser la réclamation, tout en dissimulant son identité
  • Elle prouve qu’elle s’est inscrite et qu’elle a le droit de voter, sans divulguer son vote¹

  • authentification d’adhésion privée : un utilisateur prouve à une application qu’il est enregistré sans divulguer qui il est

Il a été utilisé par de nombreuses blockchains pour préserver la confidentialité, notamment dans Monero.

Signatures en anneau dans Bitcoin

Il existe plusieurs façons d’implémenter des signatures en anneau. Nous choisissons un schéma appelé signatures de groupe anonymes spontanées², car il est basé sur une courbe elliptique et peut être implémenté dans Bitcoin.

Signature

Étant donné un message, un groupe/anneau de clés publiques et une clé privée, une signature est produite comme suit  :

Signature

Vérification

Étant donné une signature, un message et un anneau de clés publiques, l’algorithme suivant détermine si la signature est créée par une clé privée correspondant à une clé publique de l’anneau, en deux étapes  :

Vérification

Mise en œuvre

Nous avons implémenté la vérification de signature Ring, en utilisant la bibliothèque de courbes elliptiques. Toute personne connaissant une clé privée du groupe de clés publiques peut signer et dépenser les pièces bloquées dans le contrat. Personne ne peut dire lequel a signé, même les membres du groupe.

Contrat RingSig

Mise à jour itérative des lignes 21 à 31 ccomme à l’étape 1. La ligne 34 vérifie l’étape 2.

***

REMARQUES :

Une signature en anneau pouvant être liée, qui permet d’identifier si deux signatures appartiennent au même signataire, est nécessaire pour détecter un double vote.

Section 3.3 de Zéro à Monero.

Regardez : Présentation de CoinGeek New York, Smart Contracts & Computation on Bitcoin

le guide de ressources ultime pour en savoir plus sur Bitcoin – tel qu’envisagé à l’origine par Satoshi Nakamoto – et la blockchain.