Blockchain Papers

Follow blockchain research across journals, conferences, and preprint repositories.

172 papersLast indexed Aug 31, 2026
Search papers

Paper index

172 results · page 7 of 8

Clear filters
Sep 18, 2011·ACM SIGPLAN Notices
156 cites
Secure distributed programming with value-dependent types

Nikhil Swamy, Juan Chen, Cédric Fournet, Pierre-Yves Strub · 6 authors

Abstract Distributed applications are difficult to program reliably and securely. Dependently typed functional languages promise to prevent broad classes of errors and vulnerabilities, and to enable program verification to proceed side-by-side with development. However, as recursion, effects, and rich libraries are added, using types to reason about programs, specifications, and proofs becomes challenging. We present F*, a full-fledged design and implementation of a new dependently typed language for secure distributed programming. Our language provides arbitrary recursion while maintaining a logically consistent core; it enables modular reasoning about state and other effects using affine types; and it supports proofs of refinement properties using a mixture of cryptographic evidence and logical proof terms. The key mechanism is a new kind system that tracks several sub-languages within F* and controls their interaction. F* subsumes two previous languages, F7 and Fine. We prove type soundness (with proofs mechanized in Coq) and logical consistency for F*. We have implemented a compiler that translates F* to .NET bytecode, based on a prototype for Fine. F* provides access to libraries for concurrency, networking, cryptography, and interoperability with C#, F#, and the other .NET languages. The compiler produces verifiable binaries with 60% code size overhead for proofs and types, as much as a 45x improvement over the Fine compiler, while still enabling efficient bytecode verification. We have programmed and verified nearly 50,000 lines of F* including new schemes for multi-party sessions; a zero-knowledge privacy-preserving payment protocol; a provenance-aware curated database; a suite of web-browser extensions verified for authorization properties; a cloud-hosted multi-tier web application with a verified reference monitor; the core F* typechecker itself; and programs translated to F* from other languages such as F7 and JavaScript.

Open access
2 source records
Security and Verification in Computing
Distributed systems and fault tolerance
Scientific Computing and Data Management
Original source
Jan 1, 2009·Lecture notes in computer science
3 cites
Precise Time and Space Simulatable Zero-Knowledge

Ning Ding, Dawu Gu

Traditionally, the definition of zero-knowledge states that an interactive proof of x ∈ L provides zero (additional) knowledge if the view of any polynomial-time verifier can be reconstructed by a polynomial-time simulator. Since this definition only requires that the worst-case running-time of the verifier and simulator are polynomials, zero-knowledge becomes a worst-case notion. In STOC’06, Micali and Pass proposed a new notion of precise zero-knowledge, which captures the idea that the view of any verifier in every interaction can be reconstructed in (almost) the same time (i.e., the view can be “indistinguishably reconstructed”). This is the strongest notion among the known works towards precislization of the definition of zero-knowledge. However, as we know, there are two kinds of computational resources (i.e. time and space) that every algorithm consumes in computation. Although the view of a verifier in the interaction of a precise zero-knowledge protocol can be reconstructed in almost the same time, the simulator may run in very large space while at the same time the verifier only runs in very small space. In this case it is still doubtful to take indifference for the verifier to take part in the interaction or

2 source records
Cryptography and Data Security
Computability, Logic, AI Algorithms
Advanced Data Storage Technologies
Original source
Jan 1, 2009·Journal of Tsinghua University(Science and Technology)
0 cites
Zero-knowledge proof of the roots of polynomial functions

Daoshun Wang

Polynomial functions are frequently used in mathematics and computer science. The zero-knowledge proof of the roots of a polynomial function is an important application of zero-knowledge, with both theoretical and practical significance. The zero-knowledge proof of the roots of a polynomial function based on the intractablity of computing the discrete logarithm to solve the multi discrete logarithm problem. The solution to the multi discrete logarithm problem is used as a building block to construct the zero-knowledge proof protocol for the roots of polynomial functions. A theoretical analysis shows that the protocol is secure and reliable.

Logic, programming, and type systems
Logic, Reasoning, and Knowledge
Original source
Jan 1, 2009·Journal of Tsinghua University(Science and Technology)
1 cites
Zero-knowledge proof protocol of the roots of polynomial functions

Daoshun Wang

The multi discrete logarithm problem and the zero-knowledge proolf protocol were proposed to efficiently solve the zero-knowledge proof of the roots of polynomials,based on the hardness of computing the discrete logarithms.In the protocol,the prover computes the discrete logarithms of each term of the polynomial and obtains A1,A2,…,An,which are sent to the verifier.Based on the value of(A1A2…An)modp,the verifier verifies the prover's ownership of the root.The protocol needs to be executed several rounds to reduce the possibility of cheating.Theoretical analyses show that the chance of successfully cheating decays exponentially with increasing number of rounds,so the protocol is secure and reliable.

Logic, Reasoning, and Knowledge
Logic, programming, and type systems
Formal Methods in Verification
Original source
Aug 8, 2008·Foundations and Trends® in Theoretical Computer Science
7 cites
Probabilistic Proof Systems: A Primer

Oded Goldreich

Various types of probabilistic proof systems have played a central role in the development of computer science in the last couple of decades. These proof systems deviate from the traditional concept of a proof by introducing randomization and interaction into the verification process. Probabilistic proof systems carry an error probability (which is explicitly bounded and can be decreased by repetitions), but they offer various advantages over deterministic proof systems. This primer concentrates on three types of probabilistic proof systems: interactive proofs, zero-knowledge proofs, and Probabilistically Checkable Proofs (PCP). Surveying the basic results regarding these proof systems, we stress the essential role of randomness in each of them.

Logic, programming, and type systems
Advanced Database Systems and Queries
Original source
Jul 12, 2007·Cambridge University Press eBooks
0 cites
Formal systems

Richard Kaye

Formal systems Formal systems are kinds of mathematical games with strings of symbols and precise rules. They mimic the idea of a ‘proof’. This chapter introduces formal systems through an example that turns out to be closely connected with König's Lemma. This simple example is based on the trees that we studied earlier. Formal systems are the ‘arguments from limited knowledge’ that we talked about earlier, and working in them is like being the ant following a tree who cannot see beyond the immediate node it happens to be at. The particular system that we shall look at here will put some more detail on the ideas introduced earlier about ‘two ways of doing it’ and how they can be played off against each other to advantage. It is based on finite sequences, or strings, of 0s and 1s. The set of all such strings is denoted 2* or 2 <ω and, as we have seen, this set can be regarded as a full binary tree. We shall write the empty string of length zero as ⊥. Now consider a game starting from a subset ∑ ⊆ 2* with the following rules specifying when a string may be written down. (Given Strings Rule) You may write down any string σ in ∑. (Lengthening Rule) Once a string σ has been written down, you may also write down one or both of the strings σ0 or σ1. (Shortening Rule) For any string σ, once you have written down both σ0 and σ1 then you may write down σ.

Logic, programming, and type systems
Formal Methods in Verification
Original source
Apr 20, 2006·Theoretical Computer Science
33 cites
From truth to computability I

Giorgi Japaridze

No abstract is available for this record.

Open access
Logic, Reasoning, and Knowledge
Logic, programming, and type systems
Computability, Logic, AI Algorithms
Original source
Jan 16, 2006·Mathematical Programming
14 cites
Generating facets for the cut polytope of a graph by triangular elimination

David Avis, Hiroshi Imai, Tsuyoshi Ito

The cut polytope of a graph arises in many fields. Although much is known about facets of the cut polytope of the complete graph, very little is known for general graphs. The study of Bell inequalities in quantum information science requires knowledge of the facets of the cut polytope of the complete bipartite graph or, more generally, the complete k-partite graph. Lifting is a central tool to prove certain inequalities are facet inducing for the cut polytope. In this paper we introduce a lifting operation, named triangular elimination, applicable to the cut polytope of a wide range of graphs. Triangular elimination is a specific combination of zero-lifting and Fourier-Motzkin elimination using the triangle inequality. We prove sufficient conditions for the triangular elimination of facet inducing inequalities to be facet inducing. The proof is based on a variation of the lifting lemma adapted to general graphs. The result can be used to derive facet inducing inequalities of the cut polytope of various graphs from those of the complete graph. We also investigate the symmetry of facet inducing inequalities of the cut polytope of the complete bipartite graph derived by triangular elimination.

Open access
2 source records
Quantum Mechanics and Applications
Quantum Information and Cryptography
Quantum Computing Algorithms and Architecture
Original source
Sep 8, 2004·International Conference on Quality Software
16 cites
Smart play-out extended: time and forbidden elements

David Harel, Hillel Kugler, Amir Pnueli

Smart play-out is a powerful technique for executing live sequence charts (LSCs). It uses verification techniques to help run a program, rather than to prove properties thereof. We extend smart play-out to cover a larger set of the LSC language features and to deal more efficiently with larger models. The extensions cover two key features of the rich version of LSCs, namely, time and forbidden elements. The former is crucial for systems with time constraints and/or time-driven behavior, and the latter allows specifying invariants and contracts on behavior. Forbidden elements can also help reduce the state space considered, thus enabling smart play-out to handle larger models.

2 source records
Formal Methods in Verification
Advanced Software Engineering Methodologies
Logic, programming, and type systems
Original source
Jan 1, 2004·Journal of Computer Science and Technology
0 cites
Memorizable interactive proof and zero-knowledge proof systems

Ning Chen, Jiawei Rong

Interactive proof and zero-knowledge proof systems are two important concepts in cryptography and complexity theory. In the past two decades, a great number of interactive proof and zero-knowledge proof protocols have been designed and applied in practice. In this paper, a simple memorizable zero-knowledge protocol is proposed for graph non-isomorphism problem, based on the memorizable interactive proof system,which is extended from the original definition of interactive proof and is more applicable in reality.

2 source records
Cryptography and Data Security
Complexity and Algorithms in Graphs
Distributed systems and fault tolerance
Original source
Jun 25, 2003·Proceedings 17th IEEE Annual Conference on Computational Complexity
50 cites
Universal Arguments and their Applications

Boaz Barak, Oded Goldreich

We put forward a new type of computationally-sound proof systems, called universal-arguments, which are related but different from both CS-proofs (as defined by Micali, 2000) and arguments (as defined by Brassard et al., 1986). In particular, we adopt the instance-based prover-efficiency paradigm of CS-proofs, but follow the computational-soundness condition of argument systems (i.e., we consider only cheating strategies that are implementable by polynomial-size circuits). We show that universal-arguments can be constructed based on standard intractability assumptions that refer to polynomial-size circuits (rather than assumptions referring to subexponential-size circuits as used in the construction of CS-proofs). As an application of universal-arguments, we weaken the intractability assumptions used in the recent non-black-box zero-knowledge arguments of Barak (2001). Specifically, we only utilize intractability assumptions that refer to polynomial-size circuits (rather than assumptions referring to circuits of some "nice" super-polynomial size).

Cryptography and Data Security
Complexity and Algorithms in Graphs
Logic, programming, and type systems
Original source
Jan 20, 2003·Proceedings of the 1999 International Conference on Parallel Processing
0 cites
Coordinated flows in a formal multi-agent system based on a modal algebra

P.A. Patsouris

We develop a formal multi-agent system based on a modal algebra enabling us to preserve the essential characteristics of its autonomous software agents (autonomy, mobility, etc.), as well as to explore the formal properties and management of the cooperations (non-hierarchical or flat structures) and coordinations (hierarchical structures) among those simple agents, that can be constructed through the operations of the model. We show the potential of these operations that allow us to construct different cooperations and coordinations based on the same set of autonomous agents (as alternative solutions with respect to the same given problem), while, in parallel we provide the means in order to explicitly specify different types of coordinated flows of information specified and governed by these structures. We illustrate all the above via a number of algorithms referring to the development of a simple (in structure) data mining system. We simply selected an adequate application area with no purpose to compare data mining methods and techniques. The various algorithmic solutions we suggest, unveil the resilience of the alternative design approaches aiming at improving issues like decentralization of services, as well as enhancing performance through concurrent organization by thus exploiting the different possibilities of the model.

Logic, Reasoning, and Knowledge
Advanced Software Engineering Methodologies
Logic, programming, and type systems
Original source
Dec 30, 2002·Proceedings of IEEE Singapore International Conference on Networks/International Conference on Information Engineering '93
0 cites
Two round ZKIP of knowledge for SAT and its applications

Hongbin Yang, Ji Won Jung, Dong-Ho Won

This paper proposes the optimal 4-move ZKIP (Zero-Knowledge Interactive Proof systems) of knowledge for SAT and its application. Using the trapdoor bit commitment scheme and the WI(Witness Indistingushable) and the WH(Witness Hiding), it is shown that as compared with 6-move ZKIP for SAT, the proposed ZKIP is 4-move ZKIP for SAT and under claw-free pairs of functions the proposed ZKIP is also 4-move ZKIP. The proposed scheme is more efficient at the points of computational complexity and communication complexity.

Cryptography and Data Security
Complexity and Algorithms in Graphs
Logic, programming, and type systems
Original source
Nov 11, 2002·Proceedings International Symposium on Principles of Software Evolution
2 cites
Mobile codes with interactive proofs: an approach to provably safe evolution of distributed software systems

Yasuyuki Tsukada

This paper proposes a new proof-based approach to safe evolution of distributed software systems. Specifically it extends the simple certification mechanism of proof-carrying code (PCC) to make it interactive and probabilistic, thereby devising code with interactive proof (CIP). With CIP, a code consumer is convinced, with overwhelming probability, of the existence and validity of a safety proof of a transmitted code through interaction with a code producer. The class of safety properties that are provable by CIP is larger than the class provable by PCC, provided that each code consumer is allowed to spend a reasonable amount of time on verification. Moreover, CIP can be further extended to devise code with zero-knowledge interactive proof (CZKIP). This concept is useful, for example, when the code producer wants to use the safety proof as a kind of "copyright" of the code.

Formal Methods in Verification
Logic, programming, and type systems
Distributed systems and fault tolerance
Original source
Jan 1, 2002·Proceedings of the thiry-fourth annual ACM symposium on Theory of computing
15 cites
2-round zero knowledge and proof auditors

Cynthia Dwork, Larry Stockmeyer

We construct 2-round (i.e., 2-message), public-coin, black-box (concurrent) zero-knowledge proof systems and arguments for any language in NP under the assumption that the prover is resource-bounded during the execution of the protocol.

3 source records
Cryptography and Data Security
Complexity and Algorithms in Graphs
Cloud Data Security Solutions
Original source
Aug 6, 2001·Cambridge University Press eBooks
5 cites
Zero-Knowledge Proof Systems

Josef Pieprzyk, Thomas Hardjono, Jennifer Seberry

Summary A summary is not available for this content so a preview has been provided. Please use the Get access link above for information on how to access this content.

Open access
4 source records
Numerical Methods and Algorithms
Logic, Reasoning, and Knowledge
Advanced Database Systems and Queries
Original source
Jan 1, 1999·RIT Scholar Works (Rochester Institute of Technology)
0 cites
Interactive and zero-knowledge proofs

Molli Noland

An interactive proof involves two parties, the prover and the verifier. The goal of the proof is for the prover to convince the verifier that some instance of a decision problem is true. A zero-knowledge proof is an interactive proof where the only information learned by the verifier of the proof is the outcome of the proof. This thesis contains a theoretical overview of interactive and zero-knowledge proofs and describes experiments with implementations of some of them. Two examples of interactive proofs from number theory are given, a protocol for quadratic non-residues and a protocol for subgroup non-membership. The third example of an interactive proof is a protocol for determining the truth value of a quantified Boolean formula. This interactive proof was implemented and the details of that implementation, plus a test of the implementation derived from game theory, are included. There is also a discussion of quantum interactive proofs. The two examples of perfect zero-knowledge proofs that are included are protocols for quadratic residues and for subgroup membership. These protocols were also implemented, and those details are included. For each protocol, there is a discussion of the complexity status of the problems addressed by the protocol. There is also a brief discussion of the history and applications of interactive and zero-knowledge proofs.

Logic, programming, and type systems
Cryptography and Data Security
Computability, Logic, AI Algorithms
Original source
Jun 1, 1998·SIAM Journal on Computing
4 cites
Introduction to Special Section on Probabilistic Proof Systems

Shafi Goldwasser

The study of probabilistically verifiable proofs originated in the mid 1980s with the introduction of Interactive Proof Systems (IPs). The primary focus of research in this area in the '80s has been twofold: the role of zero-knowledge interactive proofs within cryptographic protocols, and characterizing which languages are efficiently interactively provable. In the 1990s, the focus of research on the topic shifted. Extensions of the interactive proof model, such as Multiprover Interactive Proofs (MIPs) and Probabilistically Checkable Proofs (PCPs), were considered with the intention of expanding our notion of what should be considered efficiently verifiable. In addition, researchers have taken a closer look at the exact resources (and tradeoffs amongst them) needed to verify a proof using various proof systems. This culminated in the important discovery that it is possible to verify NP statements (with a constant error probability) by only examining a constant number of bits of a PCP and using logarithmic amount of randomness. Perhaps, however, the most dramatic development has been the connection which was found between probabilistically verifiable proofs and proving hardness of approximation for optimization problems. It has been shown that a large variety of optimization versions of NP-hard problems (e.g., the maximum size of a clique in a graph, the minimum number of colors necessary to color a graph, and the maximum number of clauses satisfiable in a CNF formula) are not only NP-hard to solve exactly but also NP-hard to approximate in a very strong sense. The tools to establish hardness of approximation came directly from results on MIPs and PCPs. Indeed, almost every improvement in the efficiency of these proof systems translates directly into showing larger factors within which these optimization problems are hard to approximate. In 1994--1995 two exciting workshops were held at the Weizmann Institute in Israel on the new developments in probabilistically verifiable proofs and their applications to approximation problems, cryptography, program checking, and complexity theory at large. Over 60 papers were presented in the workshop series, and we are proud to include three of them in this special section. "On the Power of Finite Automata with Both Nondeterministic and Probabilistic States" by Anne Condon, Lisa Hellerstein, Samuel Pottle, and Avi Wigderson, considers constant round interactive proof systems where the verifier is restricted to use constant space and public coins. An equivalent characterization is finite automata with both nondeterministic and random states (npfa's), which accept their languages with a small probability of error. The paper shows that npfa's restricted to run in polynomial expected time accept only the regular languages in the case of npfa with 1-way input head, and that if Lis a nonregular language, then either L or its complement is not accepted by any npfa with a 2-way input head. "A Parallel Repetition Theorem" by Ran Raz, addresses and resolves the Parallel Repetition Conjecture which has eluded researchers for some time. The broader topic is what happens to the error probability of proof systems when they are composed. It has been known for awhile that sequential composition of proof systems (both single and multiprover interactive proofs) reduces the error exponentially, but this increases the number of rounds. For interactive proof systems, parallel repetition is known to reduce the error exponentially, and the Parallel Repetition Conjecture asserts that the same holds in a one-round two-prover proof system. Raz proves a constructive bound on the probability of error which indeed reduces at an exponential rate. The constant in the exponent is logarithmic in the total number of possible answers of the two provers, which means one can achieve two-prover one-round MIPs for NP statements with arbitrarily small constant error probability. This, in turn, has played a crucial role in further developments in the area and in particular in those reported in the next paper. "Free Bits, PCPs, and Nonapproximability---Towards Tight Results" by Mihir Bellare, Oded Goldreich, and Madhu Sudan, continues the investigation of PCPs and nonapproximability with emphasis on trying to get closer to tight results. The work consists of three parts. The first part presents several PCP proof systems for NP, based on a new error-correcting code called the Long Code. The second part shows that the connection between PCPs and hardness of approximation is not accidental. In particular, it shows that the transformation of a PCP for NP into hardness results for MaxClique can be reversed. Finally, the third part initiates a systematic investigation of the properties of PCPs as a function of the various parameters: randomness, query complexity, free-bit complexity, amortized free-bit complexity, proof size, etc. Two more papers submitted for this special section were not ready at this time for publication. They will appear in future issues of the SIAM Journal on Computing.

Logic, Reasoning, and Knowledge
Logic, programming, and type systems
Formal Methods in Verification
Original source
Sep 1, 1996·UC Berkeley
0 cites
Probabilistic Proof Systems - Lecture Notes

Oded Goldreich

Various types of probabilistic proof systems have played a central role in the development of computer science in the last decade. In these notes, we concentrate on three such proof systems -- interactive proofs, zero-knowledge proofs, and probabilistic checkable proofs

Logic, programming, and type systems
Original source