CORDIS - EU research results
CORDIS

Smart-Contract Protocols: Theory for Applications

Periodic Reporting for period 2 - PROCONTRA (Smart-Contract Protocols: Theory for Applications)

Reporting period: 2022-07-01 to 2023-12-31

Broadly, PROCONTRA studies smart contracts used within cryptographic protocols. Smart contracts are formal agreements that execute automatically on blockchains. Their operations in multi-user scenarios are governed by algorithms known as smart-contract protocols. Smart contracts promise to revolutionize various sectors by enhancing transaction efficiency, transparency, and trustworthiness. Their automated execution minimizes human intervention, reducing errors and potential disputes. Being rooted in advanced cryptographic techniques, they offer a strong layer of security, facilitating trust among participants. As they operate on decentralized platforms, they also have the potential to promote financial inclusion by reaching underserved populations..

However, as with any newborn technology, their deployment necessitates rigorous analysis to mitigate vulnerabilities and unforeseen challenges, emphasizing the need for comprehensive research and security modeling. The PROCONTRA project aspires to address this problem by transforming this area into a well-established discipline. The core belief is that many future smart-contract protocols will heavily utilize advanced cryptographic methods and need modeling from theoretical cryptography. More concretely, the project has several objectives. First, it seeks to establish a comprehensive security model for smart contracts. Second, it plans to introduce new protocols and to extend the existing ones. Fourth, the project will prove the security of these constructions both manually and with the use of automated tools. Lastly, it will explore both the capabilities and limitations of smart contracts.
The main achievements of PROCONTRA are as follows.

We initiated a study of a new technique called "individual cryptography." Informally, an algorithm, Alg, is considered "individual" if, in its every implementation, there's always a single user who knows all the cryptographic data, S, that Alg uses. Specifically, it should be nearly impossible to create versions of this algorithm where S is split among several participants through a secure multiparty computation protocol (MPC) or stored in a trusted execution environment (TEE). In this model, we introduce and develop two main concepts. The first, "proofs of individual knowledge," verifies that a single machine knows a specific message. The second concept, dubbed "individual secret sharing," is a method to divide a secret, S, among several participants so that no information on S is revealed unless the parties reconstruct S entirely. This new idea can have groundbreaking applications in many areas of cybersecurity. In PROCONTRA, we are primarily interested in the applications to blockchain. They are described in the follow-up work on "secret sharing with snitching" (to be published soon).

We also studied several problems on the intersection between game theory and cryptographic protocols. We investigated the incentives behind building the so-called "payment channel networks." In particular, we published a paper that analyses these networks, considering potential revenue for the nodes, expected fees, and channel creation costs. It then offers algorithms that maximize this utility within a set budget. Furthermore, it expands its view to the entire network, exploring conditions where basic graph structures achieve a Nash equilibrium.

We also published a paper on adversarial social network analysis, which studies how graphs can be manipulated to evade social network analysis tools, focusing on bypassing Fairness-Goodness Algorithm, an edge weight prediction method for signed weighted networks developed by Kumar et al. in 2016. This method can predict trust in cryptocurrency trading platforms like Bitcoin OTC. We studied the theoretical underpinnings of this algorithm and its computational properties in terms of manipulability. Our finding is that, unlike many other tools, this measure is not only difficult to manipulate optimally but also difficult to manipulate in practice.

We also worked in several other directions. In particular, we are working on formally verifying some smart contracts protocols using automated tools, particularly Why3. We also worked on many other problems related to the topic of the project, in particular, on zero-knowledge protocols, password-based threshold cryptography, and splitting payments in payment channel networks.
The project already went significantly beyond the state of the art. In particular, we hope that our work on "individual cryptography" has the potential to generate several follow-up works. In the remaining part of the project, we plan to continue working on the main project objectives, with particular emphasis on continuing our investigations of individual cryptography.