Repository logo
Research Outputs
Projects
People
Statistics
  1. Home
  2. HSG CRIS
  3. HSG Publications
  4. Prisma: A Tierless Language for Enforcing Contract-Client Protocols in Decentralized Apps
Details

Prisma: A Tierless Language for Enforcing Contract-Client Protocols in Decentralized Apps

Journal
ACM Transactions on Programming Languages and Systems
ISSN
0164-0925
Type
journal article
Date Issued
2023-09
Author(s)
Richter, David
;
Kretzler, David
;
Weisenburger, Pascal  
;
Salvaneschi, Guido  
;
Faust, Sebastian
;
Mezini, Mira
DOI
10.1145/3604629
Abstract
Decentralized applications (dApps) consist of smart contracts that run on blockchains and clients that model collaborating parties. dApps are used to model nancial and legal business functionality. Today, contracts and clients are written as separate programs-in di erent programming languages-communicating via send and receive operations. This makes distributed program ow awkward to express and reason about, increasing the potential for mismatches in the client-contract interface, which can be exploited by malicious clients, potentially leading to huge nancial losses. In this paper, we present Prisma, a language for tierless decentralized applications, where the contract and its clients are de ned in one unit and pairs of send and receive actions that "belong together" are encapsulated into a single direct-style operation, which is executed di erently by sending and receiving parties. This enables expressing distributed program ow via standard control ow and renders mismatching communication impossible. We prove formally that our compiler preserves program behavior in presence of an attacker controlling the client code. We systematically compare Prisma with mainstream and advanced programming models for dApps and provide empirical evidence for its expressiveness and performance.
Language
English
Keywords
Domain Speci c Languages
Smart Contracts
Scala
Publisher
ACM
Publisher place
New York, NY, USA
Volume
45
Number
3
Start page
17:1
End page
17:41
Pages
41
URL
https://www.alexandria.unisg.ch/handle/20.500.14171/121315
File(s)
Thumbnail Image
Name

2023_Prisma-A-Tierless-Language-for-Enforcing-Contract-Client-Protocols-in-Decentralized-Applications.pdf

Size

474.88 KB

Format

Adobe PDF

Checksum (MD5)

6fac8b5553e55d17192497ee1804a5bd

Support
HSG researchers can find instructions here for adding or importing publications (DOI, ORCID). Please send questions to alexandria@unisg.ch

Built with DSpace-CRIS software - Extension maintained and optimized by 4Science

  • Accessibility settings
  • Privacy policy
  • End User Agreement
  • Send Feedback
Repository logo COAR Notify