Les + populaires

BTC ETH SOL XRP BNB USDC USDT

Suivez-nous

Seuil de signatures numériques

IAavec
Titres Titres

Par Cassandra Heart, Arash Afshar

Les signatures numériques sont un concept fondamental de la blockchain et des crypto-monnaies. Les blockchains modernes utilisent des signatures numériques pour sécuriser des milliards de dollars de valeur. Les signatures numériques utilisent ce que l’on appelle une paire de clés, une paire de valeurs d’apparence aléatoire, où une clé est une « clé privée » et l’autre une « clé publique ». Grâce aux signatures numériques, toute personne disposant de la « clé privée » peut « signer » une transaction et dépenser les devises numériques. Par conséquent, il est crucial de sauvegarder la « clé privée ». Certains utilisateurs avertis des blockchains choisissent de protéger eux-mêmes cette clé et acceptent le risque de vol ou de perte de la clé (et donc la perte de leurs fonds). En revanche, d’autres utilisateurs de blockchain font confiance aux portefeuilles ou aux échanges en ligne avec la protection de leurs clés. Bien entendu, cette décision s’accompagne de son propre ensemble de risques en fonction de la compétence du tiers.

Dans ces deux options, l’utilisateur met toute sa confiance dans une seule entité, ce qui n’est peut-être pas souhaitable. Entrer le Seuil de signature numérique: une solution qui nécessite un « seuil » d’au moins deux participants coopérants pour produire une signature, et qui supprime le problème de faire confiance à une seule entité. Dans cet article nous :

  • Fournir une description intuitive des signatures de seuil et de leurs applications,
  • Creusez un peu plus et examinez les différents schémas de signature de seuil, et
  • Comparez les signatures de seuil avec d’autres techniques, telles que les portefeuilles Mulitsig.

L’intuition des signatures à seuil

En tant que développeur dans l’espace de la cryptographie à seuil, il est vraiment excitant de voir ces innovations devenir un sujet dans le grand public, mais les lecteurs peu familiers avec la cryptographie ou les mathématiques qui la sous-tendent se heurtent rapidement à des barrages routiers lorsqu’ils rencontrent des phrases telles que « cryptosystème Paillier », « cryptage homomorphe » ou « Champ de Galois ». Cela devient encore plus compliqué lorsque vous discutez de tous les éléments mobiles derrière pour coordonner la communication, et par conséquent, très peu d’organisations ont été disposées à étudier son potentiel. Mais cela ne doit pas être effrayant ; à la fin, le calcul se résume à pas grand-chose de plus que la multiplication et l’addition. Soit ELI5 : Qu’est-ce que c’est qu’une signature de seuil ?

En termes métaphoriques, les signatures s’apparentent à faire voler un cerf-volant sur une corde invisible. Le cerf-volant lui-même est la clé publique – tout le monde peut le voir dans le ciel. Le cerf-volant déplace le cerf-volant en manipulant la chaîne invisible – la clé privée. Le chemin qu’il emprunte dans le ciel en vol en est la signature. Tout le monde a vu le cerf-volant voler dans le ciel sur cette trajectoire, et ce n’est que grâce à l’utilisation de cette corde invisible que cette trajectoire de vol était possible. Cela semble vraiment simplifié par rapport aux mathématiques sous-jacentes, mais en fin de compte, cette métaphore est utile pour démontrer la coordination et le travail requis pour faire seuil signature possible.

Entrez la cryptographie de seuil. La prémisse du seuil est littéralement dans son nom : une valeur numérique doit être satisfaite pour qu’une opération réussisse. Souvent, ces processus sont définis à l’aide de l’expression « t de n », où n est le nombre total de participants possibles et t est le nombre seuil qui doit être atteint. Un schéma cryptographique à seuil commun utilisé depuis un certain temps est le schéma de partage de secrets de Shamir. Pour ceux qui ne sont pas familiers, le processus impliqué utilise une technique mathématique appelée interpolation de Lagrange pour recombiner les valeurs fractionnées en une valeur secrète. Dans le monde métaphorique, il s’agit de prendre cette ficelle invisible et de la séparer en fils individuels auxquels de nombreuses personnes peuvent s’accrocher, et pour faire voler le cerf-volant, le nombre seuil de personnes doit se réunir et combiner à nouveau leurs fils dans la ficelle.

Ce processus fonctionne bien et les services du monde entier l’utilisent pour sécuriser les données secrètes. L’inconvénient est que toutes les personnes impliquées doivent effectuer ce processus dans un endroit sécurisé lors de la séparation et de la recombinaison du secret. Dans les crypto-monnaies, cela signifie également qu’une fois que la clé privée est recombinée et utilisée pour la signature, elle doit être considérée comme exposée et tous les fonds détenus par la clé doivent être déplacés, donc si un participant qui a aidé à recombiner la clé repart avec elle, il ne peut rien faire de significatif. Cela coûte cher, et pour ne pas dire, nécessite beaucoup de coordination des personnes. Et si nous pouvions prendre les puissants mathématiques derrière la cryptographie et les améliorer afin que personne n’ait jamais à se rencontrer dans un endroit sécurisé ?

La bonne nouvelle, c’est que nous pouvons ! Il y a des montagnes de littérature qui ont augmenté du jour au lendemain avec de nouvelles approches des cryptosystèmes existants, des améliorations par rapport aux précédents et des protocoles cryptographiques complètement révolutionnaires. Naviguer dans ce domaine nécessite beaucoup de temps et d’expertise, mais ici à Coinbase, nous avons trouvé et mis en œuvre des stratégies qui nous permettent de tirer parti de ces approches et de soutenir les nouvelles approches à mesure qu’elles sont découvertes et évaluées par des pairs. Il y a beaucoup de choses impliquées dans ce processus, alors revenons à la métaphore.

Le processus d’installation pour préparer nos passionnés de cerfs-volants est finalement la touche unique qui permet à tout ce processus de fonctionner : chaque participant suit la même règle : ils apportent leur propre fil invisible et leur propre morceau de cerf-volant. Chaque pilote convient avec les autres à l’avance de la façon dont ils vont voler, et ils se mettent tous à courir avec leur cerf-volant à la vitesse, à l’angle et à l’heure convenus. Si quelqu’un s’écarte du plan de vol convenu, tout le désordre des cerfs-volants enchevêtrés s’écrase au sol, mais si tout le monde procède comme convenu, le cerf-volant décolle en un seul morceau dans le ciel, capable d’effectuer le vol comme prévu. Lorsque le vol se termine, les pièces se démontent dans les airs et tout le monde rentre chez lui avec son cerf-volant et son fil. À aucun moment, une seule personne ne tient le cerf-volant ou la ficelle entière, et chaque partie voit le plan de vol à l’avance pour savoir que personne ne va essayer des singeries sauvages qui les laisseront s’enfuir avec le cerf-volant.

Approfondir les signatures de seuil

Maintenant que nous avons une compréhension intuitive des signatures de seuil, approfondissons les concepts et les terminologies. Les schémas de signature à seuil font partie du calcul multipartite sécurisé (MPC) domaine de la cryptographie. L’objectif principal de MPC est de permettre le calcul sur des données privées sans les révéler à personne d’autre que le propriétaire des données privées. Par exemple, dans la métaphore du cerf-volant, les parties invisibles du fil sont les parts secrètes de la clé privée et la signature de seuil utilise ces parts secrètes pour reconstruire la clé privée et signer la transaction sans révéler la clé privée composite, ni les parts secrètes.

Un ingrédient très important de la signature de seuil est une construction mathématique appelée cryptographie à courbe elliptique. La version TL;DR est celle étant donné `y = x · G`, où `y` et `G` sont des valeurs publiquement connues, il est très difficile voire impossible de trouver `x` dans un délai raisonnable. Il existe de nombreuses « courbes » qui offrent cette propriété :

  • Secp256k1, qui est utilisé dans Bitcoin, Ethereum et bien d’autres
  • Edwards25519, qui est utilisé dans Cardano, Monero et bien d’autres
  • BLS12-381, qui est utilisé dans Ethereum 2.0 et certaines autres chaînes

Étant donné une courbe elliptique appropriée, l’étape suivante vers une signature de seuil consiste à choisir d’abord un schéma de signature numérique standard (c’est-à-dire à signataire unique). Les schémas de signature numérique populaires sont les suivants :

  • ECDSA, basé sur la courbe Secp256k1 utilisée par Bitcoin
  • Schnorr, basé sur la courbe Secp256k1 utilisée par Bitcoin Cash et Mina
  • Ed25519, basé sur la courbe Edwards25519 utilisée par Cardano

Enfin, étant donné une signature numérique, nous pouvons maintenant discuter des schémas de signature à seuil. Les schémas de signature de seuil partent d’un schéma à un seul signataire et divisent la clé privée entre « n » participants. Ensuite, dans la phase de signature, t participants sur n peuvent exécuter l’algorithme de signature pour obtenir la signature. Enfin, n’importe quelle partie (externe) unique peut vérifier la signature en utilisant le même algorithme pour vérifier les signatures à signataire unique. En d’autres termes, les signatures générées par les schémas de signature à seuil et de signature à un seul signataire sont interchangeables. En d’autres termes, un algorithme de signature de seuil comporte trois phases.

  1. Générez la paire de clés publique/privée. Ensuite, divisez la clé privée en plusieurs partages secrets et répartissez ces partages entre les « n » parties. Cette phase peut être réalisée selon deux modes.
  2. Mode Concessionnaire de confiance : une seule partie de confiance générera la clé privée, puis divisera et distribuera les clés. Le principal problème avec cette approche est que le revendeur verra la clé privée en clair.
  3. Génération de clé distribuée (DKG) : un protocole MPC est exécuté entre les « n » participants de telle sorte qu’à la fin, les participants obtiendront les partages secrets et que personne ne verra jamais la clé privée en clair à aucun moment du processus.
  4. Rassemblez un seuil de « t » participants et exécutez un protocole MPC pour signer la transaction.
  5. Vérifiez la signature à l’aide de l’algorithme de vérification de la signature standard.

Les schémas de signature de seuil évoluent rapidement. Au moment de la rédaction de cet article, les schémas sécurisés et populaires incluent les suivants.

  • FROST est une signature à seuil et un protocole DKG qui offre des cycles de communication minimaux et est sécurisé pour être exécuté en parallèle. Le protocole FROST est une version à seuil du schéma de signature de Schnorr.
  • DKLs18 : est une signature à seuil 2 sur 2 et un protocole DKG qui offre un calcul de signature rapide pour le schéma de signature ECDSA.

Signatures de seuil et Multisig

Multisig, ou multisignature Les schémas offrent des capacités similaires aux signatures à seuil avec une différence : chaque participant a sa propre clé publique (au lieu de partages secrets d’une seule clé publique commune). Cette petite différence a un impact énorme sur le coût, la vitesse et la disponibilité du multisig sur diverses blockchains.

  • Efficacité : dans les schémas de signature à seuil, chaque clé publique et ses partages de clés privés correspondants appartiennent en permanence à un seul groupe fixe de signataires ; dans les multisignatures, chaque participant individuel a sa propre clé publique distincte et dédiée. L’avantage de ce dernier régime est que chacun de ces participants peut réutilisation sa paire de clés privée-publique pour participer arbitrairement à de nombreux groupes de signature distincts. Cependant, le coût de l’utilisation des multisignatures est que la taille de la « clé publique » (en fait, une liste de clés publiques) représentant un tel groupe particulier doit croître de manière linéaire dans le nombre de membres de ce groupe. De même, le temps de vérification d’une multisignature doit évidemment croître linéairement dans la taille du groupe, le vérificateur devant notamment lire toute la liste des clés publiques représentant le groupe. Dans les schémas de seuil, en revanche, une seule clé publique représente l’ensemble du groupe, et la taille de la clé et le temps de vérification sont constants.
  • Disponibilité : pour garantir que le seuil minimum de « t » est atteint, la blockchain doit avoir un support natif pour les multisignatures. Dans la plupart des cas, ce support prend la forme d’un contrat intelligent. En conséquence, toutes les blockchains ne prennent pas en charge les portefeuilles multisig. En revanche, les signatures de seuil basées sur MPC sont indépendantes de la blockchain tant que le schéma de signature utilisé par la blockchain a une version de seuil sécurisée.

Notes finales

Les signatures numériques à seuil nous permettent de faire des choses incroyables auparavant impossibles dans les crypto-monnaies – les contrats multisig nécessitent des coûts supplémentaires pour fonctionner, mais cela peut se produire sans contrat intelligent. Cela signifie que nous pouvons prendre en charge un tout nouveau niveau de portefeuilles : alors qu’avant il y avait le portefeuille de garde traditionnel comme Coinbase propose de nombreuses manières différentes, ou des options de portefeuille d’auto-garde comme notre application Coinbase Wallet, cette approche de seuil ECDSA permet aux clients d’être un participant actif à ce processus de signature. Dans cette approche, l’utilisateur détient une part de la clé privée et Coinbase en détient une autre, et ce n’est que lorsque les deux acceptent le plan de vol que les transactions peuvent être signées. Cela offre la sécurité et la confiance pour lesquelles nous sommes connus chez Coinbase, l’utilisateur restant celui qui contrôle.

Si vous êtes intéressé par la cryptographie de pointe, consultez nos postes ouverts ici.


Threshold Digital Signatures a été initialement publié dans The Coinbase Blog on Medium, où les gens poursuivent la conversation en soulignant et en répondant à cette histoire.

Source blog.coinbase.com

Gérez vos cryptos
Bitstack
5€ offerts en Bitcoin

Donnez votre avis

Soyez le 1er à noter cet article


Partagez cet article maintenant !

Envoyez simplement nos contenus crypto et finance à vos proches.