2020
DOI: 10.1145/3417516
|View full text |Cite
|
Sign up to set email alerts
|

Obsidian

Abstract: Blockchain platforms are coming into use for processing critical transactions among participants who have not established mutual trust. Many blockchains are programmable, supporting smart contracts, which maintain persistent state and support transactions that transform the state. Unfortunately, bugs in many smart contracts have been exploited by hackers. Obsidian is a novel programming language with a type system that enables static detection of bugs that are common in smart contracts today. Obsidian is based… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
6
0

Year Published

2021
2021
2024
2024

Publication Types

Select...
4
2
2

Relationship

1
7

Authors

Journals

citations
Cited by 16 publications
(8 citation statements)
references
References 66 publications
0
6
0
Order By: Relevance
“…Later it was extended by Jagannathan et al [55] to support nested and multi-threaded transactions. Featherweight Java is used in formal languages such Obsidian [25] and SJF [92].…”
Section: Complexitymentioning
confidence: 99%
“…Later it was extended by Jagannathan et al [55] to support nested and multi-threaded transactions. Featherweight Java is used in formal languages such Obsidian [25] and SJF [92].…”
Section: Complexitymentioning
confidence: 99%
“…We avoided inheritance, since we wanted to avoid the fragility that results [59]. For a full description of the language, please refer to Coblenz et al [26]. However, Figure 1 shows some of the key features of the final version of Obsidian using the example of a tiny vending machine (TVM).…”
Section: Obsidianmentioning
confidence: 99%
“…In addition to doing two case studies to evaluate expressiveness [26], we conducted a lab study to answer two research questions relating to our comparison question in Section 1 ("How can we compare multiple language designs to see which are more effective for users? "):…”
Section: Summative Studiesmentioning
confidence: 99%
See 1 more Smart Citation
“…In fact, Solidity encourages to model smart contracts as state machines [4]. Some recently proposed smart contract languages, including Bamboo [2] and Obsidian [80], adopt a state-oriented programming paradigm, which provides better security guarantees by making state transitions explicit. In the context of verification, depending on the properties of interest, a wide range of choices exist for formalizing smart contracts as state-transition systems.…”
Section: State-transition Systemsmentioning
confidence: 99%