Ressource pédagogique : Adding Concurrency to Smart Contracts

Modern cryptocurrency systems, such as Ethereum, permit complex financial transactions through scripts called *smart contracts*. These smart contracts are executed many, many times, always without concurrency. First, smart contracts are serially executed before being recorded on the blockchain, and ...
cours / présentation - Date de création : 05-05-2017
Auteur(s) : Maurice HERLIHY
Partagez !

Présentation de: Adding Concurrency to Smart Contracts

Informations pratiques sur cette ressource

Anglais
Type pédagogique : cours / présentation
Niveau : master, doctorat
Durée d'exécution : 44 minutes 8 secondes
Contenu : image en mouvement
Document : video/mp4
Taille : 356.010 Mo
Droits : libre de droits, gratuit
Droits réservés à l'éditeur et aux auteurs. Document libre, dans le cadre de la licence Creative Commons (http://creativecommons.org/licenses/by-nd/2.0/fr/), citation de l'auteur obligatoire et interdiction de désassembler (paternité, pas de modification).

Description de la ressource pédagogique

Description (résumé)

Modern cryptocurrency systems, such as Ethereum, permit complex financial transactions through scripts called *smart contracts*. These smart contracts are executed many, many times, always without concurrency. First, smart contracts are serially executed before being recorded on the blockchain, and once recorded, they are serially re-executed whenever it is necessary to check that the blockchain is correct. Such serial execution limits system throughput and fails to exploit today's concurrent multicore and cluster architectures. This talk presents a novel way to permit miners and validators to execute smart contracts in parallel. A party attempting to add a smart contract to the blockchain executes multiple smart contracts speculatively, in parallel, thus ``discovering'' a serializable concurrent schedule for those transactions. This schedule is captured and encoded as a parallel but deterministic fork-join program used by later validators to re-execute those transactions concurrently and securely. Experiments show non-trivial speedup with even a small number of cores. Joint work with Thomas Dickerson, Eric Koskinen, and Paul Gazzillo.

"Domaine(s)" et indice(s) Dewey

  • Distributed processing (004.36)
  • informatique distribuée (005.276)

Thème(s)

Intervenants, édition et diffusion

Editeur(s)

Diffusion

Partagez !

AUTEUR(S)

  • Maurice HERLIHY

ÉDITION

INRIA (Institut national de recherche en informatique et automatique)

EN SAVOIR PLUS

  • Identifiant de la fiche
    40511
  • Identifiant
    oai:canal-u.fr:40511
  • Schéma de la métadonnée
  • Entrepôt d'origine
    Canal-u.fr
  • Date de publication
    05-05-2017