English
Related papers

Related papers: A Proof-Producing Compiler for Blockchain Applicat…

200 papers

Cryptographic interactive proof systems provide an efficient and scalable means of verifying the results of computation on blockchain. A prover constructs a proof, off-chain, that the execution of a program on a given input terminates with…

Cryptography and Security · Computer Science 2021-12-16 Jeremy Avigad , Lior Goldberg , David Levit , Yoav Seginer , Alon Titelman

Most software domains rely on compilers to translate high-level code to multiple different machine languages, with performance not too much worse than what developers would have the patience to write directly in assembly language. However,…

This article describes the development and formal verification (proof of semantic preservation) of a compiler back-end from Cminor (a simple imperative intermediate language) to PowerPC assembly code, using the Coq proof assistant both for…

Logic in Computer Science · Computer Science 2009-11-14 Xavier Leroy

Compilers are a prime target for formal verification, since compiler bugs invalidate higher-level correctness guarantees, but compiler changes may become more labor-intensive to implement, if they must come with proof patches. One appealing…

Programming Languages · Computer Science 2025-03-12 Jason Gross , Andres Erbsen , Jade Philipoom , Rajashree Agrawal , Adam Chlipala

This demo abstract introduces a new light-weight programming language koa which is suitable for blockchain system design and implementation. In this abstract, the basic features of koa are introduced including working system (with…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-13 Junhui Kim , Joongheon Kim

For all the successes in verifying low-level, efficient, security-critical code, little has been said or studied about the structure, architecture and engineering of such large-scale proof developments. We present the design, implementation…

Programming Languages · Computer Science 2023-07-10 Son Ho , Aymeric Fromherz , Jonathan Protzenko

Simplicity is a typed, combinator-based, functional language without loops and recursion, designed to be used for crypto-currencies and blockchain applications. It aims to improve upon existing crypto-currency languages, such as Bitcoin…

Programming Languages · Computer Science 2017-12-15 Russell O'Connor

In recent years, many decentralized applications based on blockchain (DApp) have been developed. However, due to inadequate testing, DApps are easily exposed to serious vulnerabilities. We find three main challenges for DApp testing, i.e.,…

Software Engineering · Computer Science 2020-06-03 Zhenhao Wu , Jiashuo Zhang , Jianbo Gao , Yue Li , Qingshan Li , Zhi Guan , Zhong Chen

Blockchain technology promises a decentralized, trustless, and interoperable infrastructure. However, widespread adoption remains hindered by issues such as limited scalability, high transaction costs, and the complexity of maintaining…

Cryptography and Security · Computer Science 2025-05-01 Isaac Zhang , Kshitij Kulkarni , Tan Li , Daniel Wong , Thomas Kim , John Guibas , Uma Roy , Bryan Pellegrino , Ryan Zarick

A bug or error is a common problem that any software or computer program may encounter. It can occur from badly writing the program, a typing error or bad memory management. However, errors can become a significant issue if the unsafe…

Programming Languages · Computer Science 2019-08-29 Zeinab Nehai , François Bobot

Compiler correctness is an old problem, but with the emergence of smart contracts on blockchains that problem presents itself in a new light. Smart contracts are self-contained pieces of software that control assets, which are often of high…

Programming Languages · Computer Science 2022-02-23 Jacco O. G. Krijnen , Manuel M. T. Chakravarty , Gabriele Keller , Wouter Swierstra

CoqQ is a framework for reasoning about quantum programs in the Coq proof assistant. Its main components are: a deeply embedded quantum programming language, in which classic quantum algorithms are easily expressed, and an expressive…

Programming Languages · Computer Science 2022-07-26 Li Zhou , Gilles Barthe , Pierre-Yves Strub , Junyi Liu , Mingsheng Ying

Verification of microkernels, device drivers, and crypto routines requires analyses at the binary level. In order to automate these analyses, in the last years several binary analysis platforms have been introduced. These platforms share a…

Programming Languages · Computer Science 2019-01-23 Andreas Lindner , Roberto Guanciale , Roberto Metere

Caesar is a deductive verifier for probabilistic programs. At its core lies HeyVL, a quantitative intermediate verification language based on the real-valued logic HeyLo. HeyVL allows users to express a probabilistic program, its…

Developing secure distributed systems is difficult, and even harder when advanced cryptography must be used to achieve security goals. Following prior work, we advocate using secure program partitioning to synthesize cryptographic…

Cryptography and Security · Computer Science 2024-01-10 Coşku Acay , Joshua Gancher , Rolph Recto , Andrew C. Myers

OCaml is particularly well-fitted for formal verification. On one hand, it is a multi-paradigm language with a well-defined semantics, allowing one to write clean, concise, type-safe, and efficient code. On the other hand, it is a language…

Logic in Computer Science · Computer Science 2021-09-07 Mário Pereira , António Ravara

Verifying the execution of a program is complicated and often limited by the inability to validate the code's correctness. It is a crucial aspect of scientific research, where it is needed to ensure the reproducibility and validity of…

Software Engineering · Computer Science 2025-02-12 Alex Wolf , Marco Edoardo Palma , Pasquale Salza , Harald C. Gall

Foundational verification allows programmers to build software which has been empirically shown to have high levels of assurance in a variety of important domains. However, the cost of producing foundationally verified software remains…

Programming Languages · Computer Science 2020-06-01 Alex Sanchez-Stern , Yousef Alhessi , Lawrence Saul , Sorin Lerner

In this paper, we present the first intrinsically secure and semantically universal omnichain interoperability protocol: LayerZero. Utilizing an immutable endpoint, append-only verification modules, and fully-configurable verification…

Networking and Internet Architecture · Computer Science 2025-06-24 Ryan Zarick , Bryan Pellegrino , Isaac Zhang , Thomas Kim , Caleb Banister

The Blockchain and the programs running on it, called Smart Contracts, are more and more applied in all fields requiring trust and strong certifications. In this work we compare public and permissioned blockchains for industrial…

Cryptography and Security · Computer Science 2020-05-07 Lodovica Marchesi , Michele Marchesi , Roberto Tonelli
‹ Prev 1 2 3 10 Next ›