Adding Fairness to Order: Preventing Front-Running Attacks in BFT Protocols using TEEs - Stathakopoulou, Chrysoula; Schwarz-Rüsch, Signe; Brandenburger, Marcus; Vukolić, Marco (40th International Symposium on Reliable Distributed Systems (SRDS 2021), 2021)
This paper presents Fairy: a modular system that augments any Total Order Broadcast (TOB) protocol with fairness properties, namely input (request) causality and sender obfuscation. With these properties, Fairy helps to prevent front-running attacks where an adversary can interfere with the order of requests depending on request payload and sender identity, allowing for substantial application-level consequences. Fairy leverages Trusted Execution Environments (TEEs) to implement fairness on top of a TOB-based ordering service. Fairy collocates TEEs with ordering service nodes effectively making them run as trusted proxies of actual TOB clients. TEEs help Fairy to achieve both input causality and sender obfuscation — previous related systems addressing only input causality. We evaluate Fairy on top of a recent, efficient Byzantine FaultTolerant (BFT) TOB protocol and compare it to state-of-the-art BFT TOB with input causality. We show that Fairy improves state-of-the-art throughput by 66% and reduces latency by 50%.<br
Keywords: total order broadcast; trusted execution; frontrunning attacks

Bloxy: Providing Transparent and Generic BFT-Based Ordering Services for Blockchains - Schwarz-Rüsch, Signe; Bleeke, Kai; Kapitza, Rüdiger (38th International Symposium on Reliable Distributed Systems (SRDS 2019), 2019)
With the wide-spread use of blockchain technology, Byzantine fault-tolerant (BFT) protocols are explored as a means to achieve consensus on which transactions should be processed next. BFT protocols are not a one-size-fits-all solution: they should be chosen according to the blockchain’s use case, which can range from supply chain management to decentralised storage, requiring specialisation e. g. regarding throughput, latency, or level of decentralisation. Previously, consensus protocols were usually hardcoded into the blockchain infrastructure and could not be exchanged, therefore inhibiting flexible use of an otherwise generic blockchain infrastructure. Hyperledger Fabric claims to provide modular consensus and support for crash-fault and Byzantine fault tolerant protocols. However, integrating a BFT protocol has shown that Fabric’s architecture is currently not well-suited for this fault model as it requires substantial changes and thereby breaks Fabric’s modularity. This also has to be repeated for each integrated BFT protocol. In this paper, we present Bloxy, a blockchain-aware trusted proxy running on the replica that encapsulates all BFT client functionality. Bloxy enables transparent access to generic BFT frameworks and preserves Fabric’s modularity even for the Byzantine fault model. It runs inside a trusted execution environment based on Intel’s Software Guard Extensions. Bloxy offers blockchain-specific communication mechanisms as well as short-term block storage to handle crashes or disconnects to ensure that all nodes receive block updates. We implemented two Bloxy-based ordering services based on PBFT and the hybrid BFT protocol Hybster. Our evaluation shows that our approach increases the throughput of the ordering component by up to 71 % compared to directly integrated BFT protocols.<br
Keywords: Byzantine fault tolerance; Blockchain; Hyperledger Fabric

Deployment Settings for the Integration of Blockchain Networks in Learning Factories - Rolinck, Maximilian; Schwarz-Rüsch, Signe; Mennenga, Mark; Jehl, Leander; Herrmann, Christoph (Conference on Learning Factories, 2022)

EndBox: Scalable Middlebox Functions Using Client-Side Trusted Execution - Goltzsche, David; Schwarz-Rüsch, Signe; Nieke, Manuel; Vaucher, Sebastien; Weichbrodt, Nico; Schiavoni, Valerio; Aublin, Pierre-Louis; Costa, Paolo; Fetzer, Christof; Felber, Pascal; Pietzuch, Peter; Kapitza, Rüdiger (Proceedings of the 48th International Conference on Dependable Systems and Networks, 2018)
Many organisations enhance the performance, security, and functionality of their managed networks by deploying middleboxes centrally as part of their core network. While this simplifies maintenance, it also increases cost because middlebox hardware must scale with the number of clients. A promising alternative is to outsource middlebox functions to the clients themselves, thus leveraging their CPU resources. Such an approach, however, raises security challenges for critical middlebox functions such as firewalls and intrusion detection systems. We describe EndBox, a system that securely executes middlebox functions on client machines at the network edge. Its design combines a virtual private network (VPN) with middlebox functions that are hardware-protected by a trusted execution environment (TEE), as offered by Intel’s Software Guard Extensions (SGX). By maintaining VPN connection endpoints inside SGX enclaves, EndBox ensures that all client traffic, including encrypted communication, is processed by the middlebox. Despite its decentralised model, EndBox's middlebox functions remain maintainable: they are centrally controlled and can be updated efficiently. We demonstrate EndBox with two scenarios involving (i) a large company; and (ii) an Internet service provider that both need to protect their network and connected clients. We evaluate EndBox by comparing it to centralised deployments of common middlebox functions, such as load balancing, intrusion detection, firewalling, and DDoS prevention. We show that EndBox achieves up to 3.8x higher throughput and scales linearly with the number of clients.<br

EventChain: A Blockchain Framework for Secure, Privacy-Preserving Event Verification - Schwarz-Rüsch, Signe; Behlendorf, Michael; Becker, Markus Horst; Kudlek, René; Mohamed, Hesham Hosney Elsayed; Schoenitz, Felix; Jehl, Leander; Kapitza, Rüdiger (23rd ACM/IFIP International Middleware Conference, 2022)
The number of fake news written by bots or malicious actors on social media is rising. One cause is the ability of users to post anything, at any place, at any time. This offers great flexibility, but it also poses the risk that users share misinformation. One type includes events that allegedly have occurred in a location, without the reporting user necessarily having been present. A user may add her location to posts to appear as an eyewitness and thus more trustworthy; however, basing that trust on commonly used and easily faked GPS locations is not reasonable. We present EventChain, which enriches social media posts with hard to fake trust scores based on the user's recent motion profile to give actual eyewitnesses more credibility. Users' motion profiles are integrity- and privacy-preservingly logged in a blockchain. Once the user posts an event, her locality is evaluated for a location rating. The location evaluation is secured by a trusted execution environment to ensure users' location data is private and under the users' control at all times. EventChain also enables interactive assessments of a post via nearby users, whose location is similarly evaluated. This way other eyewitnesses can credibly provide further information, thus leading to a consensus about the event's actual occurrences, increasing trust in social media posts, and limiting the spread of fake new
Keywords: Blockchain; TEE; Location Privacy; Fake News

Forward secure delay-tolerant networking - Schwarz-Rüsch, Signe; Schürmann, Dominik; Wolf, Lars; Kapitza, Rüdiger (CHANTS 2017 - Proceedings of the 12th Workshop on Challenged Networks, co-located with MobiCom 2017, 2017)
Delay-Tolerant Networks exhibit highly asynchronous connections often routed over many mobile hops before reaching its intended destination. The Bundle Security Protocol has been standardized providing properties such as authenticity, integrity, and confidentiality of bundles using traditional Public-Key Cryptography. Other protocols based on Identity-Based Cryptography have been proposed to reduce the key distribution overhead. However, in both schemes, secret keys are usually valid for several months. Thus, a secret key extracted from a compromised node allows for decryption of past communications since its creation. We solve this problem and propose the first forward secure protocol for Delay-Tolerant Networking. For this, we apply the Puncturable Encryption construction designed by Green and Miers, integrate it into the Bundle Security Protocol and adapt its parameters for different highly asynchronous scenarios. Finally, we provide performance measurements and discuss their impact.
CRIS-Team Scopus Importer:2022-07-19
Keywords: Delay-Tolerant Networking; Dtn; Forward secrecy; Puncturable Encryption

Hybrid fault-tolerant consensus in asynchronous and wireless embedded systems - Xu, Wenbo; Schwarz-Rüsch, Signe; Li, Bijun; Kapitza, Rüdiger (Leibniz International Proceedings in Informatics, LIPIcs, 2019)
Byzantine fault-tolerant (BFT) consensus in an asynchronous system can only tolerate up to [n-1/3] faulty processes in a group of n processes. This is quite a strict limit in certain application scenarios, for example a group consisting of only 3 processes. In order to break through this limit, we can leverage a hybrid fault model, in which a subset of the system is enhanced and cannot be arbitrarily faulty except for crashing. Based on this model, we propose a randomized binary consensus algorithm that executes in complete asynchrony, rather than in partial synchrony required by deterministic algorithms. It can tolerate up to [n-1/3] Byzantine faulty processes as long as the trusted subsystem in each process is not compromised, and terminates with a probability of one. The algorithm is resilient against a strong adversary, i. e. the adversary is able to inspect the state of the whole system, manipulate the delay of every message and process, and then adjust its faulty behaviour during execution. From a practical point of view, the algorithm is lightweight and has little dependency on lower level protocols or communication primitives. We evaluate the algorithm and the results show that it performs promisingly in a testbed consisting of up to 10 embedded devices connected via an ad hoc wireless network.
CRIS-Team Scopus Importer:2022-07-19
Keywords: Consensus; Distributed system; Fault tolerance

SoK: Scalability Techniques for BFT Consensus - Berger, Christian; Schwarz-Rüsch, Signe; Vogel, Arne; Bleeke, Kai; Jehl, Leander; Reiser, Hans P.; Kapitza, Rüdiger (Proceedings of the 5th IEEE International Conference on Blockchain and Cryptocurrency, 2023)
With the advancement of blockchain systems, many recent research works have proposed distributed ledger technology (DLT) that employs Byzantine fault-tolerant (BFT) consensus protocols to decide which block to append next to the ledger. Notably, BFT consensus can offer high performance, energy efficiency, and provable correctness properties, and it is thus considered a promising building block for creating highly resilient and performant blockchain infrastructures. Yet, a major ongoing challenge is to make BFT consensus applicable to large-scale environments. A large body of recent work addresses this challenge by developing novel ideas to improve the scalability of BFT consensus, thus opening the path for a new generation of BFT protocols tailored to the needs of blockchain. In this survey, we create a systematization of knowledge about the novel scalability-enhancing techniques that state-of-the-art BFT consensus protocols use. For our comparison, we closely analyze the efforts, assumptions, and trade-offs these protocols make.<br
Keywords: Byzantine Fault Tolerance; Consensus; Scalability; Blockchain

Themis: An Efficient and Memory-Safe BFT Framework in Rust (Research Statement) - Schwarz-Rüsch, Signe; Bleeke, Kai; Kapitza, Rüdiger (3rd Workshop on Scalable and Resilient Infrastructures for Distributed Ledgers (SERIAL 2019), 2019)
Byzantine fault tolerant (BFT) protocols have previously been developed mainly in C or Java. C offers high performance but is more error-prone, leading to more potential Byzantine faults, whereas Java offers memory safety at the cost of performance. The Rust programming language combines the performance advantages of C with safe memory management, and newer releases now enable the implementation of complex, non-blocking asynchronous frameworks, as is needed for efficient BFT frameworks. We present a BFT framework implementation in Rust and preliminary performance evaluations for the PBFT protocol.<br
Keywords: Rust; blockchain; Byzantine fault tolerance

Towards Low-Latency Byzantine Agreement Protocols Using RDMA - Schwarz-Rüsch, Signe; Messadi, Ines; Kapitza, Rüdiger (Proceedings - 48th Annual IEEE/IFIP International Conference on Dependable Systems and Networks Workshops, DSN-W 2018, 2018)
Byzantine fault tolerance (BFT) protocols can mitigate attacks and errors and are increasingly investigated as consensus protocols in blockchains. However, they are traditionally considered costly in terms of message complexity and latency due to the required multiple rounds of message exchanges. With the availability of Remote Direct Memory Access (RDMA) in data centers, message exchange latency can be reduced compared to TCP, as RDMA enables kernel bypassing and thereby avoids intermediate data copying. Retaining the performance benefits for RDMA during its integration, however, is non-trivial and error-prone. While the use of RDMA has previously been explored for key/value stores, databases and distributed file systems, agreement protocols especially for BFT have so far been neglected. We investigate the usage of RDMA in the Reptor BFT protocol for low-latency agreement and show first steps towards an RDMA-enabled consensus protocol. For this, we present Rubin, a framework offering similar functionality to the Java NIO selector, which can handle multiple network connections efficiently with a single thread and is employed in several BFT protocol implementations such as BFT-SMaRt and UpRight.
CRIS-Team Scopus Importer:2022-07-19
Keywords: Blockchain Consensus; Byzantine Fault Tolerance; Remote Direct Memory Access

ZugChain: Blockchain-Based Juridical Data Recording in Railway Systems - Schwarz-Rüsch, Signe; Bleeke, Kai; Messadi, Ines; Schmidt, Stefan; Krampf, Andreas; Olze, Katharina; Stahnke, Susanne; Schmid, Robert; Pirl, Lukas; Kittel, Roland; Polze, Andreas; Franz, Marquart; et al. (Proceedings of the 52nd International Conference on Dependable Systems and Networks, 2022)
In modern trains, a juridical recording unit logs events that occur during operation. This data is used to reconstruct the exact chain of events in case of failures and crashes. To ensure data recovery after an accident, the recorder is hardened against physical damage and secured against tampering; however, it is a single proprietary device and by no means indestructible. This paper presents ZugChain, a distributed, blockchain-based juridical recording unit that opportunistically utilizes on-train hardware. ZugChain offers high reliability via replication and tamper-resistance due to the nature of blockchains. It implements a permissioned blockchain based on a Byzantine fault-tolerant agreement protocol suitable for diverse communication systems. To utilize the logged data for advanced services, e. g., predictive maintenance, ZugChain securely and continuously exports traces to private data centers. We demonstrate ZugChain's feasibility with an implementation running on real train hardware, where we show that ZugChain orders data within 14 ms using at maximum 15 % of the total available shared CPU resources, thus fulfilling requirements of juridical recorder
Keywords: railway; BFT; event recorder; blockchain