Next Article in Journal
OLP—A RESTful Open Low-Code Platform
Next Article in Special Issue
Distributed Hybrid Double-Spending Attack Prevention Mechanism for Proof-of-Work and Proof-of-Stake Blockchain Consensuses
Previous Article in Journal
Healthchain: A Privacy Protection System for Medical Data Based on Blockchain
Previous Article in Special Issue
Blockchain Applications in Agribusiness: A Systematic Review
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

EconLedger: A Proof-of-ENF Consensus Based Lightweight Distributed Ledger for IoVT Networks

Department of Electrical and Computer Engineering, Binghamton University, SUNY, Binghamton, NY 13905, USA
*
Author to whom correspondence should be addressed.
Future Internet 2021, 13(10), 248; https://0-doi-org.brum.beds.ac.uk/10.3390/fi13100248
Submission received: 7 September 2021 / Revised: 22 September 2021 / Accepted: 22 September 2021 / Published: 24 September 2021
(This article belongs to the Special Issue Blockchain: Applications, Challenges, and Solutions)

Abstract

:
The rapid advancement in artificial intelligence (AI) and wide deployment of Internet of Video Things (IoVT) enable situation awareness (SAW). The robustness and security of IoVT systems are essential for a sustainable urban environment. While blockchain technology has shown great potential in enabling trust-free and decentralized security mechanisms, directly embedding cryptocurrency oriented blockchain schemes into resource-constrained Internet of Video Things (IoVT) networks at the edge is not feasible. By leveraging Electrical Network Frequency (ENF) signals extracted from multimedia recordings as region-of-recording proofs, this paper proposes EconLedger, an ENF-based consensus mechanism that enables secure and lightweight distributed ledgers for small-scale IoVT edge networks. The proposed consensus mechanism relies on a novel Proof-of-ENF (PoENF) algorithm where a validator is qualified to generate a new block if and only if a proper ENF-containing multimedia signal proof is produced within the current round. The decentralized database (DDB) is adopted in order to guarantee efficiency and resilience of raw ENF proofs on the off-chain storage. A proof-of-concept prototype is developed and tested in a physical IoVT network environment. The experimental results validated the feasibility of the proposed EconLedger to provide a trust-free and partially decentralized security infrastructure for IoVT edge networks.

1. Introduction

Thanks to the rapid advancements in artificial intelligence (AI) and Internet of Things (IoT) technologies, the concept of Smart Cites becomes realistic. The information fusion capability provided by these interconnected devices enables situational awareness (SAW), which is essential to ensure a safe and sustainable urban environment. With wide deployment of the exponentially increasing smart Internet of Video Things (IoVT) for safety surveillance purposes, intelligent online video stream processing is becoming one of the most actively researched topics in smart cites [1].
In typical Internet of Video Things (IoVT) systems, a huge amount of raw video data collected by geographically scattered cameras is sent to a remote cloud for aggregation. It provides a broad spectrum of promising applications, including public space monitoring, human behavior recognition [2], and suspicious event identification [3]. However, centralized IoVT solutions suffer from the risk of single points of failure and are not scalable for accommodating the ever growing IoVT networks, which are pervasively deployed with heterogeneous and resource-limited smart devices at the edge of networks. Moreover, online video streams and other offline data, such as situation contextual features, are shared among participants using high-end cloud servers, which are under the control of third-party entities. Such a centralized architecture also raises severe privacy and security concerns that data in storage can be misused or tampered with by dishonest entities.
Evolving from the distributed ledger technology (DLT), blockchain has gained significant attention for its potential to revolutionize multiple areas of the economy and society. The inherent security guarantees of blockchain lay down the foundations of serverless record keeping, without the need for centralizing trusted third-party authorities [4]. Blockchain runs on a decentralized peer-to-peer (P2P) network in order to securely store and verify data without relying on a centralized trust authority. The decentralization removes the risk of singular point of failures and mitigates bottleneck performances, which were inherent in centralized architectures. In addition, blockchain leverages distributed consensus protocols to enable a verifiable process for fault tolerance and tamper-proof storage on a public distributed ledger. Therefore, transparency, immutability, and auditability guaranteed by blockchain ensure resilience, correctness, and provenance for all data sharing among untrusted participants.
Internet of Video Things (IoVT) provides a broad spectrum of applications, particularly in the area of public safety [5]. Migrating from centralized cloud-based paradigms to decentralized blockchain-based methods renders IoVT systems more efficient, scalable, and secure. However, directly integrating cryptocurrency-oriented blockchains into resource constrained IoVT systems is difficult in terms of handling the blockchain trilemma [6], which points out that decentralization, scalability, and security cannot perfectly co-exist. Most IoVT devices are highly resource constrained. Therefore, computing and storage intensive consensus protocols are not affordable, such as Proof-of-Work (PoW) [7], Proofs-of-Retrievability (PORs) [8], or Practical Byzantine Fault Tolerant (PBFT) [9], which come with high communication complexity and poor scalability. In addition, IoVT systems involve a large volume of real-time transactions. Higher throughput and lower latency become key metrics in blockchain-based systems for IoVT deployed on edge networks. Furthermore, DLTs are not general-purpose databases. The storage overhead is prohibitively high if raw data generated by IoVT transacting networks are stored in the blockchain.
The Electrical Network Frequency (ENF) is the power supply frequency which fluctuates around its nominal frequency (50/60 Hz). The frequency fluctuations vary based on geographical region. The ENF fluctuations estimated from simultaneously recorded audio/video recordings within a power grid have a high correlation similarity [10].
Inspired by spatio-temporal sensitive ENF contained in multimedia signals, this paper proposes EconLedger, a novel Proof-of-ENF (PoENF) consensus algorithm based lightweight DLT for small scale IoVT networks. Compared to PoW or PoRs, which require high computation or storage resources in mining process, our novel PoENF consensus requires each validator to use extracted ENF variations from simultaneous multimedia recordings as proofs during current consensus round. The validator that presents a valid ENF proof with minimal squared-distance-based score is qualified to generate a new block. Thus, the PoENF consensus mechanism not only achieves efficiency without high demand of mining resource or hardware platform support but it also enhances security by mitigating mining centralization.
In contrast to existing solutions that directly collect ENF fluctuations from power grids and stores audio/video recordings in a centralized location-dependent ENF database [10,11], EconLedger uses Swarm [12], which is a decentralized database (DDB) technology, to archive raw ENF-containing multimedia proofs and transactions over IoVT networks. Only hashed references of data are recorded on an immutable and auditable distributed ledger. Thus, it reduces the ever-increasing data storage overhead on the public ledger. The EconLedger ensures correctness, availability, and provenance of data sharing among untrusted devices under a distributed network environment. Moreover, a network with permission ensures that only authorized nodes can access raw data on DDB such that privacy preservation is guaranteed.
In summary, this paper makes the following contributions:
(1)
A secure-by-design EconLedger architecture is introduced along with detailed explanation of the key components and work flows;
(2)
A novel PoENF consensus mechanism is proposed, which improves resource efficiency and achieves a higher throughput than PoW-based blockchains;
(3)
A finalized on-chain ledger is coupled with a decentralized off-chain storage to resolve storage burden, and it guarantees security and robustness of data sharing and cooperation in IoVT networks;
(4)
A proof-of-concept prototype is implemented and tested on a small scale IoVT network, and experimental results verified that the EconLedger is feasible and affordable with respect to the IoVT devices deployed at edge networks.
The remainder of this paper is organized as follows: Section 2 briefly discusses background knowledge of ENF, then reviews existing consensus algorithms and state-of-the-art research on IoT Blockchains. Section 3 introduces the rationale and architecture of EconLedger, as well as core features and security guarantees. A novel PoENF consensus mechanism is explained in Section 4. Section 5 presents prototype implementation and numerical results and discusses performance improvements and security insurances. Finally, a summary is presented in Section 6.

2. Background and Related Work

This section introduces how ENF can be generated from multimedia streams and how ENF can be used for the environmental fingerprint. Following that, we describe typical consensus protocols in blockchain and provide related work on IoT-blockchain integration.

2.1. ENF as a Region-of-Recording Fingerprint

ENF is the supply frequency in power distribution grids, which has a nominal frequency of 50 Hz or 60 Hz depending on the location of the power grids. Due to environmental effects in the grid such as load variations and control mechanisms, the instantaneous ENF usually fluctuates around its nominal value. At a given time, variation trends of ENF fluctuations from all locations of the same grid are almost identical due to the interconnected nature of the grid [13]. ENF fluctuations are embedded in audio/video recordings either due to electromagnetic induction or background hum from devices connected to the power grid [14]. Thanks to the consistency and reliability of ENF at a time instant, ENF has been adopted as a forensic tool for identifying forgeries in multimedia recordings. All ENF signals estimated from simultaneous multimedia recordings at different locations have similar fluctuations throughout the power grid. Thus, there are multiple forensic applications based on ENF, such as validating the time-of-recording of an ENF-containing multimedia signal [14] and estimating its location-of-recording [15].
In IoVT systems, ENF signals extracted from video recordings are in the form of illumination frequency (120 Hz). The video recordings made under indoor artificial light include ENF fluctuations. The estimation of ENF signals depends on the type of imaging sensor used in a camera. The most commonly used imaging sensors are complementary metal oxide semiconductors (CMOSs) and charge-coupled device (CCD) sensors, which have different shutter mechanisms. In this work, we assume that ENF signals are extracted from video recordings generated by cameras with CMOS imaging sensors in an indoor setting with artificial light [11,16]. The estimation of ENF involves various signal processing techniques such as power spectral analysis and spectrogram-based techniques, which are beyond the scope of this paper.

2.2. Consensus Protocols for Blockchain

This section introduces consensus protocols regarding diverse blockchain networks that are typically classified into permissionless blockchain (e.g., Nakamoto protocol) or permissioned blockchain (e.g., PBFT).

2.2.1. Nakamoto Protocols

The Nakamoto protocol is implemented as the consensus foundation of Bitcoin [7], and it is widely adopted by many cryptocurrency-based blockchain networks such as Ethereum [17]. The Nakamoto protocol adopts a computation-intensive PoW, which requires all participants to compete for rewards through a cryptographic block-hash value discovery racing game. The PoW consensus demonstrates security and scalability in an asynchronous open-access network as long as an adversary does not control the majority (51%) of the miners. However, the brute-force PoW mining process also incurs a high demand in terms of computation and energy consumption such that it is not affordable on resource-constrained IoT devices.
In order to improve performance and resource usage efficiency in PoW, a number of alternative Proof of X-concept (PoX) schemes have been proposed. Permacoin [8] repurposes mining resources in PoW to achieve distributed storage of archival data. The Permacoin adopts PORs [18], which require miners to present random access to a copy of a file from local storage as valid proof for successfully minting money. Permacoin requires participants to invest in its storage capacity rather than solo computational power. It could reduce unnecessary wastage of computational resources in PoW and mitigate centralized mining pools issue.
Similar to Permacoin, a Resource-Efficient Mining (REM) [19] scheme is proposed to achieve security and resource efficiency based on the partially decentralized trust models inherent in Intel Software Guard Extensions (SGX). The REM utilizes a Proof-of-Useful-Work (PoUW) consensus protocol, which requires miners to provide trustworthy measurements on CPU cycles used by its useful workloads in SGX-protected enclave. Compared with Proof-of-Elapsed-Time (PoET) in Sawtooth [20] that uses random idle CPU time as proofs, PoUW in REM not only prevents the stale chip problem but also yields the smallest amount of mining waste.
In order to reduce energy consumption caused by intensive hash value calculating in PoW, Peercoin [21] adopts Proof-of-Stake (PoS), which leverages the distribution of token ownership to simulate a verifiable random function to propose new blocks. Such a process of efficient “virtual mining” manner allows PoS miners to only consume limited computational resources in order to generate new blocks. Similarly to PoW, PoS guarantees security as long as an adversary owns no more than half of the total stakes in the network.
Unlike PoW and its variants, the PoENF consensus scheme neither requires high demand of computation and storage for mining nor depends on security guarantees supported by trusted hardware or monetary deposit stake. It is suitable for heterogeneous IoVT devices connected to the power grid.

2.2.2. Byzantine Fault Tolerant Protocols

As the first practical BFT consensus, PBFT [9] uses the State Machine Replication (SMR) scheme to address the Byzantine General Problem [22] in distributed networks. It has been widely adopted as a basic consensus solution in the permissioned blockchains, such as Hyperledger Fabric [23]. The PBFT algorithm guarantees both liveness and safety in synchronous network environments if at most n 1 3 out of total of n replicas are Byzantine faults. Compared to the probabilistic Nakamoto blockchains, BFT-based consensus networks ensure a deterministic finality on distributed ledger. However, it inevitably incurs high latency and communication overhead as synchronously executing consensus protocol among all nodes in large scale networks.
Therefore, combining Nakamoto-style block generation with BFT-style chain finality provides a prospective solution to ensure data consistency and immediate finality. Casper [24] introduces a lightweight chain finality layer on top of a Nakamoto protocol, similarly to PoW and PoS. In Casper, a fixed set of validators executes a PoW block proposal protocol to maintain an ever-growing block tree, while an efficient voting-based process is responsible to commit a direct ancestor block of the finalized parent block as a checkpoint. Finally, only a unique checkpoint block path from checkpoint tree is accepted as the finalized chain.
Unlike Casper, which is a PoS-based finality system overlaying an existing PoW blockchain, our EconLedger uses a voting-based chain finality in order to resolve the forks caused by probabilistic PoENF block generation.

2.3. State of the Art on IoT-Blockchain

To support security and lightweight features required in IoT systems, the IoTChain [25] proposes a three-tier blockchain-based IoT architecture, which allows regional nodes to perform any lightweight consensus, such as PoS and PBFT. IoTChain only provides simulation results on communication cost of transactions; however, key metrics in the consensus layer, such as computation, storage, and throughput, are not considered. FogBus [26] proposes a lightweight framework for integrating blockchain into fog-cloud infrastructure, which aims to ensure data integrity as transferring confidential data over IoT-based systems. In FogBus, master nodes deployed at the fog layer are allowed to perform PoW mining, while IoT devices send transactions to master nodes as trust intermediates to interact with blockchain. However, using PoW as the backbone consensus protocol still results in high energy consumption and low throughout.
HybridIoT [27] proposes hybrid blockchain-IoT architecture in order to improve scalability and interoperability among sub-blockchains. In HybridIoT, a BFT inter-connector framework functions as a global consortium blockchain to link multiple PoW sub-blockchains. However, using PoW consensus in sub-blockchain networks still imports computation and storage overhead on IoT devices if they are deployed as full nodes. IoTA [28] aims to enable cryptocurrency designed for the IoT industry, and it leverages a directed acyclic graph (DAG), called tangle [29], to record transactions rather than chained structure of the ledger. IoTA provides a secure data communication protocol and zero fee micro-transaction for IoT/machine-to-machine (M2M), and it demonstrates high throughput and good scalability. However, existing IoTA networks still rely on hard-coded coordinators, which employ PoW to finalize the path of recorded transactions in DAG.
Unlike the above mentioned IoT-Blockchain solutions, which either adopt computation intensive PoW as their backbone consensus mechanism or rely on an intermediate fog layer to execute consensus protocol, EconLedger aims to provide a partially decentralized and lightweight blockchain for resource constrained IoVT devices at the edge without relying on any intermediate consensus layer deployed at fog level. Moreover, EconLedger leverages DDB technology to enable trusted off-chain storage, which reduces storage overhead caused by directly storing raw data on the public distributed ledger.

3. EconLedger: Rationale and Architecture

This section provides a comprehensive overview of EconLedger system architecture consisting of the following: (1) upper-level IoVT application layer; and (2) Econledger fabric enabled security networking infrastructure. Following that, we explain the network model of EconLedger with basic security assumptions and describe an efficient hybrid on-chain and off-chain storage structure based on the DDB system.

3.1. System Design Overview

EconLedger aims at a secure-by-design, trust-free and partially decentralized infrastructure for cross-devices networking IoVT systems at the edge. We consider a small scale video surveillance network with 100 nodes, and all IoVT devices and edge/fog servers are connected to the same regional power grid. Here, a node refers to a device owned by a user. Figure 1 is the system architecture of EconLedger.

3.1.1. IoVT Application

The upper-level IoVT application utilizes an EconLedger fabric to enable decentralized video analytic services and information visualization at the edge. All devices and users must be registered to join the IoVT system as required by the permissioned network, which can provide basic security primitives such as public key infrastructure (PKI), identity authentication [30], and access control [31], etc. Real-time video streams generated by cameras are transferred to on-site/near-site edge devices for lower level analytic tasks, such as object detection and situational contextual features extraction. Thus, cameras associated with edge devices act as IoVT service units at the network of edge. Then, IoVT service units send raw video data and extracted contextual information to the information visualization unit, which provides video recordings and smart applications for authorized users.
To prevent visual layer attacks, IoVT service extracts ENF signals from video streams as an environmental fingerprint, which is stored into DDB and secured by EconLedger fabric. At any given time instant, variation trends of ENF-containing multimedia signals from all synchronous cameras on the same power grid are almost identical. Therefore, using ENF fluctuations recorded on EconLedger laid solid ground truth for video authenticity verification. By calculating correlation coefficients among ENF signals extracted from video recordings with an agreed ENF estimate recorded on distributed ledger, the information visualization unit verifies whether or not live/offline video streams are generated by cameras within the same power grid [32,33].

3.1.2. EconLedger Fabric

The EconLedger fabric provides fundamental networking and security infrastructure to support decentralized security features for the IoVT system. All authorized devices firstly store raw ENF fingerprints into the DDB, then the devices launch transactions that include hashed references of raw data along with valid signatures. As transactions store fixed-length hashed references rather than raw data with varying size, such an off-chain manner reduces storage overhead when IoVT devices verify transactions and synchronize the ever-increasing distributed ledger.
EconLedger uses a small PoENF committee to achieve high efficiency by reducing message propagation delay and communication overhead on the edge network. Given a random committee election mechanism, only a subset of nodes within the network are elected as PoENF committee members. The PoENF consensus protocol is only executed by validators of a PoENF committee instead of all nodes in the network. Therefore, scalability is improved at the cost of partial decentralization by a PoENF consensus committee.
Meanwhile, a random PoENF committee rotation strategy ensures that robustness is not sacrificed due to fewer validators. Combining the current status of the distributed ledger, a distributed randomness protocol acts as the oracle to periodically generate global randomness strings for PoENF committee selection. As randomness strings are bias-resistant and unpredictable, the probability of an adversary dominating a subsequent committee decreases exponentially even if the current PoENF committee is compromised.

3.2. Network Model

EconLedger relies on a permissioned network, and we assume that the system administrator is a trust oracle for maintaining global identity profiles for all valid nodes. We adopt a standard asymmetrical algorithm such as Rivest–Shamir–Adleman (RSA) for key generation ( R S A . g e n ) and digital signature scheme ( R S A . s i g n , R S A . v e r i f y ). During the registration process, signing-verification key pair ( s k i , p k i ) R S A . g e n ( i ) is generated by PKI and assigned to the authorized node u i . Additionally, a node’s public key p k i is associated with its credit stake c i C m a x , where C m a x is the maximum value of credit stake defined by the system. Therefore, all registered nodes can be represented as U = { ( p k 1 , c 1 ) , ( p k 2 , c 2 ) , , ( p k n , c n ) } , where n is the total number. As the above security assumptions depend on the system administrator’s behavior, our EconLedger is a partially decentralized blockchain model.
EconLedger assumes a synchronous network environment. Operations in consensus protocol are coordinated in rounds with upper bounded delay T Δ . Thus, the time is divided into discrete s l o t s , which can be indexed by logical clocks t i c k s to synchronize the events in a distributed system [34]. Given a certain tick t { 1 , 2 , 3 , } , slot s l t represents the length of time window to measure T Δ . The time window of s l t should be sufficient to guarantee that the message transmitted by a sender is received by its intended recipients (accounting for local time discrepancies and network delays). Thus, we require s l t T Δ in order to ensure the liveness of consensus protocol.

3.3. Hybrid On-Chain and Off-Chain Storage

To address issues of high storage overhead incurred by directly saving raw data into DLTs, EconLedger utilizes a hybrid on-chain and off-chain storage solution. Figure 2 illustrates the block and off-chain data structure used in EconLedger. The block is the basic unit of on-chain storage, which includes block header and the orderly transactions list. The M T _ r o o t in the block header stores the hash root of a Merkle tree to maintain the integrity of all transactions. In each transaction, the s w a r m _ h a s h only stores references to the data rather than the data themselves. As references are hash values with fixed length such as 32 or 64 bytes, all transactions have almost the same size even if linked raw data have large sizes or require different formats, such as ENF signals or multimedia recordings.
Off-chain storage relies on a Swarm network in which all sites cooperatively construct a DDB system. In EconLedger, a site refers to a fog/edge server. The data uploaded to Swarm are cut into pieces called chunks, which is the basic unit of storage and retrieval in the Swarm network. Each chunk can be accessed at a unique address, which is calculated by its hashed content. All data chunks use their chunk hash to construct a Merkel hash tree for which its root is the reference to retrieve raw data. Swarm implements a specific type of content addressed distributed hash tables (DHTs), called Distributed Pre-image Archive (DPA), to manage chunks across distributed sites. All Swarm sites have their own base addresses with the same size as the chunk hash, and the sites closest to the address of a chunk not only serve information about the content but actually host data [35]. All sites in the Swarm network use the Kademlia DHT protocol [36], which synchronizes chunks in a P2P manner, to ensure data persistence and redundancy.

4. PoENF: A Proof-of-ENF Consensus Protocol

In this section, basic notations used in protocol design are clearly defined and explained. Then, an overview of PoENF consensus protocol is illustrated so that the reader can understand key components and workflow. Following that, we offer details on Byzantine resistant PoENF algorithms in block generation along with a voting-based chain finality. Finally, we also describe incentive mechanisms including rewards and punishment strategies given by mathematical analysis.

4.1. Basic Notation

Table 1 describes relevant notation used in PoENF model. To model sequential events in synchronous consensus rounds, a set of subsequential slots are used to define E p o c h , which is represented as s l E = { s l 1 , s l 2 , , s l t } , where 0 t R , and epoch size R is a value of multiple unit slot s l . A v a l i d a t o r v i V ( V U ) is a valid node that is qualified for being selected as a PoENF committee member. We define D y n a s t y to represent current PoENF committee, which is denoted as D = { ( p k 1 , c 1 ) , ( p k 2 , c 2 ) , , ( p k k , c k ) V } , where 0 k K , and K is the PoENF committee size. We use H ( · ) to denote a predefined collision-resistant hash function that outputs hash string h { 0 , 1 } λ .
Before introducing key features and components in the PoENF consensus protocol, several basic definitions are introduced as following.
Definition 1.
Transaction is used to save data that are launched by a node u i for recording on the distributed ledger, and its structure is represented as t x = { t x _ h a s h , p k i , T s t a m p , d a t a , σ i } , where the parameters are the following:
  • t x _ h a s h is a λ-bit-length hash string of transaction t x , which is calculated by H ( p k i , T s t a m p , d a t a ) ;
  • p k i is sender’s public key;
  • T s t a m p is time stamp of generating transaction;
  • d a t a is the information d { 0 , 1 } * enclosed by the transaction, such as s w a r m _ h a s h or any byte strings;
  • σ i is a signature R S A . s i g n s k i ( t x _ h a s h , p k i , T s t a m p , d a t a ) signed by the sender’s private key s k i .
Definition 2.
Block is a basic data unit that encapsulates valid transactions and is always appended on the chain head. A block generated at slot s l t ( t 1 , 2 , 3 , . . ) by validator v j is represented by B i = ( p r e _ h a s h , h e i g h t , m t _ r o o t , t x _ l i s t , s l t , p k j , σ j ) , where the parameters are the following:
  • p r e _ h a s h is a λ-bit-length hash string of previous Block B i 1 , which is calculated by H ( p r e _ h a s h , h e i g h t , m t _ r o o t , t x _ l i s t , s l t 1 ) ;
  • h e i g h t is the height of current block in blockchain (ledger);
  • m t _ r o o t is a root hash of a Merkle tree of t x _ l i s t ;
  • t x _ l i s t is an orderly transactions list [ t x 1 , t x 2 , . . . , t x n ] ;
  • s l t is a block created time stamp at the round s l t ;
  • p k j is public key of validator v j ;
  • σ j is a signature R S A . s i g n s k j ( p r e _ h a s h , h e i g h t , m t _ r o o t , t x _ l i s t , s l t , p k j ) signed by validator v j .
We define a special block called Genesis Block that is represented as B 0 = ( p r e _ h a s h = 0 , h e i g h t = 0 , s l 0 = 0 , i n i t _ D ) , where i n i t _ D is the initial dynasty. Therefore, all on-chain data on the distributed ledger are organized as an ordered sequence of blocks starting from  B 0 .
Definition 3.
Blockchain (Distributed Ledger) is a partial order of blocks that is represented as C = B 0 B 1 . . . B n 1 B n indexed by strictly increasing slots s l t . Each block B i uses its p r e _ h a s h = H ( B i 1 ) to link with the previous block B i 1 , and key parameters are the following:
  • l e n g t h : the length of the chain denoted l e n ( C ) = n to count the number of blocks between the genesis block B 0 and the confirmed block B n ;
  • h e a d : the head of the chain denoted h e a d ( C ) = B n , where B n is the last confirmed block that is extended on finalized main chain.

4.2. PoENF Committee Consensus Protocol: Overview

Figure 3 is an overview of the PoENF consensus protocol, which includes the distributed ledger structure and PoENF committee consensus workflows. The distributed ledger in EconLedger follows a tree structure originated from the genesis block. Each new block extends its chain path through p r e _ h a s h to point to a parent block. All nodes in such a ledger tree can be represented as confirmed blocks (blue) or finalized blocks (red), as the upper part of Figure 3 shows. The chain height follows a strictly increasing sequence of finalized blocks; therefore, a valid path can only proceed through those red nodes. The head of a blockchain is anchored on a recently confirmed block that has linked to a finalized chain with the largest height value.
At the configuration stage, the system administrator specifies a group of validators as the initial PoENF committee to initialize an EconLedger network. The lower part of Figure 3 demonstrates workflows of the PoENF committee consensus protocol, including the dynasty cycle and the epoch cycle. A dynasty cycle starts from committee selection and ends when the global randomness string of current dynasty has been updated by the randomness change process. At the beginning of a dynasty’s lifetime, the committee selection process uses the current global randomness string as a seed for committee election protocol, which exploits a Verifiable Random Function (VRF) based cryptographic sorting scheme [37]. Given the credit weights of all nodes, K validators are randomly chosen to construct a new PoENF committee D, which will be added to the current block. Finally, validators of new D establish a fully connected P2P consensus network and start a new dynasty cycle.
For each epoch cycle, PoENF block generation and chain finality are core functions that ensure liveness and termination in continuous consensus rounds. By calculating a squared distance of ENF proofs from validators, the PoENF mechanism determines that a validator with the minimal squared-distance-based score can generate a valid block in the current block proposal round. After n rounds of block proposal, chain finality relies on a voting-based chain finality mechanism to resolve fork issues caused by conflicting confirmed blocks and finalizes the history of ledger data by using a unique chain path.
At the end of current dynasty, PoENF committee members utilize the RandShare mechanism to cooperatively reach agreement on proposing a new global randomness string. As a distributed randomness protocol, RandShare adopts Publicly Verifiable Secret Sharing (PVSS) [38] to ensure unbiasability, unpredictability, and availability in public randomness sharing. The proposed unbiasable and unpredictable global randomness string will be updated as the new seed for the committee selection process of the sub-sequential dynasty.

4.3. PoENF-Based Block Proposal Mechanism

The PoENF-based block proposal mechanism is mainly responsible for generating candidate blocks and extending them along a finalized chain path. Following the principles of chain-based Nakamoto protocols, the PoENF algorithm simulates a virtual mining method by pseudorandomly specifying a validator of committee as the slot leader to generate a block. To generate a block, a validator must present an ENF proof that has the minimum squared distance score in current round. All honest validators accept valid blocks and ensure that only one block is extended on the finalized main chain of local distributed ledger.

4.3.1. Transactions Pooling

Given a certain period of sliding window for ENF collection, each validator collects transactions from valid nodes. If a transaction stores reference that point to ENF proof, it is an ENF proof transaction. In the current block generation round, each node is required to send only one ENF proof transaction. After receiving the broadcasted transactions, each validator verifies buffered transactions according to predefined conditions:
(i)
Transaction sender u i U and R S A . v e r i f y ( t x _ h a s h , p k i , T s t a m p , d a t a ) = σ i by using the sender’s public key p k i ;
(ii)
ENF proof t x sent by u i should not exist in the transactions pool;
(iii)
Time stamp T s t a m p must fall into current time slot.
The condition (i) prevents transactions from invalid nodes or any malicious modification, while conditions (ii) and (iii) are mainly for preventing duplicated ENF proof t x in current period time slot. After the verification process, only valid transactions are cached as local transaction pools denoted as T X = { t x 1 , t x 2 , , t x N } , where N is the transactions pool size. The validator also uses condition (iii) to regularly check the local transaction pool and removes outdated transactions that have not been recorded in the latest confirmed block.

4.3.2. PoENF Consensus Algorithm

Given current transactions pool T X , the validator v i D chooses all ENF-proof transactions generated by committee members to construct an ENF-proof transactions list T X E N F = { t x 1 , t x 2 , , t x K } , where K is the committee size. An ENF proof is a vector E = { e 1 , e 2 , , e d } , where e i R is the ENF sample value, and d is the samples’ size. By using s w a r m _ h a s h that is stored in the d a t a parameter of t x k , the E k sent by v k can be fetched from off-chain storage. Thus, each v i can locally maintain a set of collected ENF proof vectors G i = { E 1 , E 2 , , E k } , where k K .
In order to become a slot leader and propose a new block in the current block proposal round, v i must show that its ENF proof E i can solve a PoENF puzzle problem. Intuitively, the goal of PoENF puzzle problem is to choose the E k that deviates the least from all ENF proofs in G i based on their relative distances, which are computed with the Euclidean norm. However, a single Byzantine validator can force the PoENF algorithm to choose any arbitrary ENF proof by sending a poisoned E b that is too far away from other ENF proofs. Therefore, our PoENF algorithm adopts the Krum aggregation rule to provide the ( α , f ) -Byzantine resilience property [39].
For each v i D , let G i = { E 1 , E 2 , , E n } include n 2 f + 3 collected ENF proofs from PoENF committee members, and at most only f is sent by Byzantine nodes. For any i j , let i j denote the fact that E j belongs to the n f 2 closest ENF proofs to E i . Then, we define the ENF score for v i .
s ( i ) = i j E i E j 2 .
Equation (1) calculates ENF scores ( s ( 1 ) , , s ( n ) ) associated with validators v 1 to v n , respectively, and applies the Krum rule to select the minimum ENF score as follows.
s * = argmin i { 1 , . . . , n } ( s ( i ) ) .
Finally, the PoENF puzzle problem is formally defined as the following.
Definition 4.
Proof-of-ENF: Given G i = { E 1 , E 2 , . . . , E n } collected by validator v i D , the process of PoENF verifies whether a valid ENF proof E j can meet the condition s ( j ) s * . If it does, v j wins the leader election and is qualified to propose a block; otherwise, the blocks generated by any v j are rejected.
Given the above definitions, the PoENF-enabled block generation procedures are presented in Algorithm 1. During the current block generation round slot s l t , each validator v i D executes the g e n e r a t e _ b l o c k ( ) function to propose a candidate block according to its collected ENF proofs in the transactions pool. If the ENF score s i is not greater than the target value s * , then v i can create a new block and broadcast it to the network. Otherwise, they are only allowed to verify blocks from other validators until the current round finished. The closer s i is to s * , the higher probability that v i can propose a new block.
Algorithm 1 The PoENF-based block generation procedures.
1:
procedure: generate_block( v i )
2:
    h c H ( h e a d ( C ) )
3:
    h e i g h t h e a d ( C ) . h e i g h t + 1
4:
    m t _ r o o t MTree ( v i . T X )
5:
    [ E 1 , E 2 , , E n ] ENF_vect ( v i . T X )
6:
    e n f _ s c o r e [ ]
7:
    for  E i in [ E 1 , E 2 , , E n ]  do
8:
         s i i j E i E j 2
9:
         e n f _ s c o r e .append( s i )
10:
    end for
11:
    s * M i n ( e n f _ s c o r e )
12:
    if  s i s *  then
13:
         new_block ( h c | | m t _ r o o t | | v i . T X | | v i . p k | | s l . t | | h e i g h t )
14:
         σ i Sign( n e w _ b l o c k , v i . s k )
15:
         return ( n e w _ b l o c k | | σ i )
16:
    end if
17:
procedure: verify_block(new_block, σ j )
18:
    if Verify_Sign( n e w _ b l o c k , σ j ) T r u e OR
19:
         Verify_TX( n e w _ b l o c k ) T r u e  then
20:
         return  F a l s e
21:
    end if
22:
    hc  H ( h e a d ( C ) )
23:
    if  n e w _ b l o c k . h e i g h t h e a d ( C ) . h e i g h t + 1 OR
24:
         n e w _ b l o c k . h c h c  then
25:
         return  F a l s e
26:
    end if
27:
    [ E 1 , E 2 , , E n ] ENF_vect ( n e w _ b l o c k . t x _ l i s t )
28:
    e n f _ s c o r e [ ]
29:
    for  E i in [ E 1 , E 2 , , E n ]  do
30:
         s i i j E i E j 2
31:
         e n f _ s c o r e .append( s i )
32:
    end for
33:
    s * M i n ( e n f _ s c o r e )
34:
    if  s j > s *  then
35:
         return  F a l s e
36:
    end if
37:
    return  T r u e
In block verification process, each validator calls the v e r i f y _ b l o c k ( ) function to determine whether or not the received n e w _ b l o c k can be accepted and appended to chain. The V e r i f y _ S i g n ( ) checks if a n e w _ b l o c k sent by v j has a valid signature σ j , while V e r i f y _ T X ( ) validates that all transactions recorded in n e w _ b l o c k are sent from valid nodes and have the same Merkle tree root as n e w _ b l o c k . m t _ r o o t . After validating that n e w _ b l o c k is generated in the current round slot s l t with the correct chain header, a PoENF algorithm verifies if v j has a valid ENF proof with minimum score. If all conditions are satisfied, the n e w _ b l o c k is accepted into confirmed status, and v i updates the head of local chain as h e a d ( C ) = B i + 1 accordingly. Otherwise, the n e w _ b l o c k is rejected and discarded.

4.3.3. Chain Extension Policies

In a PoENF block generation round, validators extend the local chain based on a “largest height of confirmed block” rule, which requires that new blocks B i + 1 are only appended to h e a d ( C ) by letting B i + 1 [ p r e _ h a s h ] = H ( h e a d ( C ) ) . The PoENF process allows that the probability of a block generated by validator v i is related to the rank of its ENF proof E i among the global ENF proof vectors G. However, G i observed by validator v i may vary due to network latency or misbehavior of Byzantine nodes. Thus, it is hard to guarantee that only one block is proposed during each slot round, and the amount of candidate blocks could be between zero and the committee size K. Given the candidate blocks number b [ 0 , K ] , the chain extension rules are described as follows:
(i)
b = 1 : If there is only one proposed candidate block B i + 1 , then the block is accepted as confirmed status and updates the chain head as h e a d ( C ) = B i + 1 .
(ii)
b > 1 : If more than one candidate blocks are proposed, then all blocks are accepted as confirmed status. The h e a d ( C ) update follows two sub-rules:
(a)
Chain head points to a block that records most ENF proof transactions among other blocks;
(b)
For the candidate blocks having ENF proof transactions of the same size, the block generated by validator that has the largest credit value becomes the chain head.
(iii)
b = 0 : If none of the validators proposes a block at the end of current slot round, block generation follows a spin manner. As validators of current committee can be sorted by account address, we can calculate i n d = h e i g h t (mod K). Thus, a validator at rank i n d can also propose a candidate block in the current round. The chain head update process follows the rule i) b = 1 .
Rule (i) covers a basic scenario to ensure that a new blocks is extended on the chain head. Rule (ii) handles the conflicting chain head update scenario when multiple validators propose valid blocks when they have different global ENF proof vectors G. It also discourages dishonest behaviors by using a smaller G to win the right to block proposal. Rule (iii) guarantees liveness in PoENF consensus process such that at least one uniform block is generated to ensure chain extension even if a leader cannot propose a new block due to crash failures or attacks.

4.4. Voting-Based Chain Finality Mechanism

Since fork issues are caused by network latency or deliberate attacks, the block proposal mechanism will inevitably produce multiple conflicting blocks, which are children blocks with the same parent block. Therefore, those proposed blocks are in fact form an ever-growing block tree structure, as the upper part of Figure 3 shows. At the end of an epoch, the h e a d with epoch height becomes a checkpoint that is used to resolve forks and to finalize chain history. Inspired by Casper [24] and Microchain [40], our EconLedger finality process adopts a voting-based finality mechanism overlaying the PoENF block generation to commit checkpoint block and finalize the already committed blocks on the main chain.
The chain finality protocol is mainly for identifying a unique chain path on block tree by choosing a single child block from multiple children blocks with a common parent block. For efficiency purposes, the chain finality protocol is only executed on checkpoint blocks rather than the entire block tree, and committee members vote for hashes of blocks instead of entire block contents. The chain finality ensures that only one path, including finalized blocks, becomes the main chain. Therefore, blocks generated in the new epoch are only extended on such a unique main chain.

4.5. Incentives and Punishment Strategies

Although the contributions of this manuscript include performance improvement and security guarantees by EconLedger, this section briefly discusses incentive design while leaving detailed analysis for future investigation. EconLedger uses an incentive mechanism to reward validators who behave honestly and make contributions in the PoENF block generation and chain finality process. At the end of a block generation cycle, transactions fees included in the confirmed block construct a rewarding fees pool that can be distributed to all validators in the current round. The incentive mechanism uses ENF score to evaluate a validator’s contribution, and reward fees that are distributed to v i D are proportional to its ENF score s i . Let S = { s 1 , s 2 , , s n } denote ENF scores, the reward rule is defined as follows:
γ i = 1 s i i n 1 s i R ,
where γ i is the reward fee that v i obtains from the total reward fees R during current block generation round. The smaller the ENF score of a validator, the higher the reward fees it can gain. As the variations of ENF proofs from all honest nodes are trivial during ENF collection time, collected rewarding fees in R are almost evenly distributed to honest contributors. As ENF fluctuations are randomly generated from power grids and vary at different times, Byzantine nodes can only gain marginal benefits by using duplicated or arbitrary ENF proofs that have large ENF scores.
In addition to rewarding fees, the credit stake c i of a honest validator v i will also increase by one as a reputation reward. The higher the credit stake c, the higher the probability that a validator is selected as a PoENF committee member. Unlike PoS, credits in EconLedger are not directly associated with any type of currency, and they are not transferable in any format of transactions. Therefore, all users are encouraged to behave honestly to gain more benefits by increasing their reputation credits. Moreover, credit stake c of a node cannot excel an upper-bounded limitation C m a x , for instance, no more than 10. Therefore, an adversary cannot simply accumulate its credit stake to achieve mining centralization and then control the majority power of the network.
A punishment strategy is also designed to discourage dishonest behaviors, such as withholding its ENF proof, proposing multiple blocks in current round, or violating chain extension rules. After PoENF committee selection, each v i D must deposit a fixed amount of fees to its security stake s c i . If any misbehaving actions in consensus process v i are detected, the balance of s c i will be slashed as punishment. In addition, its credit stake c i also decreases by one. Given the assumption that an adversary can only compromise no more than f nodes on the network, the slashing security deposit rule can increase financial cost if attackers use these compromised nodes to disturb consensus protocol, while reducing credit stake results in the lower probability that Byzantine nodes can be selected as committee members.

5. Experiment and Evaluation

In this section, a proof-of-concept prototype implementation and experimental configuration is described. Following that, we evaluate Econledger based on numerical results in terms of network latency, computation overhead, and communication throughput. Then, comparative experiments based on benchmark blockchain platforms are performed to show performance improvement. Finally, we analyze the performance and security properties provided by EconLedger.

5.1. Prototype Implementation and Experimental Setup

To verify the proposed EconLedger, a concept-proof prototype is implemented in Python, which consists of approximately 3100 lines of code. We adopted Flask [41], which is a light micro-framework for Python application, in order to implement networking and web service APIs for EconLedger node. All cryptographic functions are developed on the foundation of standard python lib: cryptography [42], such as using RSA for key generation and digital signature and using SHA-256 for all hash operations. As a lightweight and embedded SQL database engine, SQLite [43] is adopted to manage on-chain storage, such as ledger data and peering nodes information.
Table 2 describes the devices used for the experimental study. The prototype is deployed on a small-scale local area network (LAN) that consists of multiple desktops and IoT devices. The prototype of EconLedger emulates an office building setting: a Dell Optiplex-7010 functions as a monitor server to collect data from scattered IoVT services deployed at different locations of the building, while all Raspberry Pi (RPi) boards play the role of edge devices that process raw video streams from separate cameras. All devices can work as validators and perform the PoENF consensus protocol. Dell Optiplex 760 desktop functions as edge server, and five desktops are configured as sites in our private Swarm network. To initiate comparative evaluation between EconLedger and existing blockchain benchmarks, test cases are also conducted on Ethereum [44] and Tendermint [45] networks. In our private Ethereum network setup, six miners are deployed on six separate desktops. Tendermint runs on a test network with 20 validators, and each validator is hosted on a RPi device.

5.2. Performance Evaluation

In order to evaluate the performance of the running EconLedger under an IoVT-based edge network environment, a set of experiments is conducted by executing multiple complete epoch cycles of PoENF consensus protocol within a dynasty. The computation costs by message encryption and decryption are not considered during the test. As Krum in PoENF requires n 2 f + 3 and voting-based chain finality depends on a majority condition that requires n 3 f + 1 , the minimum PoENF committee size is five members such that any K 5 can meet both security requirements. Given 60 s per sliding window used in ENF fluctuations extraction, we let the ENF proof vector size d = 60. We conducted 100 Monte Carlo test runs for each test scenario and used the average of results for evaluation.

5.2.1. Network Latency

Figure 4 presents the network latency for EconLedger with respect to completing an entire epoch round of PoENF consensus protocol given the number of validators varying from 5 to 20. For each test point, we let all validators perform tasks simultaneously and waited until the bundle of tasks is finished. The latency includes the round trip time (RTT) and service processing time on the remote host. Broadcasting an ENF t x needs O ( K ) communication complexity and K × O ( 1 ) computation complexity for verification. Thus, the total complexity is O ( K ) such that latency of ENF collection T e c is linearly scale to committee size K. Chain finality requires all validators to broadcast their vote among committee members so that it has the same complexity as ENF collection. Thus, the delay of chain finality T c f is almost linear scale to K.
The green line in Figure 4 shows the latency of block proposal T b p , which indicates how long a proposed block could be accepted by all validators in the PoENF committee. The communication complexity of block proposal is O ( K ) , which is similar to ENF collection and chain finality. However, during block generation and verification processes, PoENF algorithm requires a validator using Equation (1) to compute ENF scores based on collected proofs from others, and it has computation complexity of O ( K 2 d ) . As a result, the total complexity of block proposal is O ( K 2 d + K ) . In general, ENF samples size d is a small value such as 60, and it has less effect on computation cost than K does. Thus, T b p is almost linearly scaled relative to O ( K 2 ) . The total latency shows that EconLedger takes about 2 s to finish an epoch cycle of PoENF committee consensus ( T e c + T b p + T c f ) given the committee size K = 20 .

5.2.2. Computation Overhead

Figure 5 shows service processing time of key procedures in PoENF consensus given different platform benchmarks. As verifying a tx or vote only involves O ( 1 ) computation complexity, the service processing time is almost stable (about 2 ms for tx verification and 50 ms for vote verification) on all benchmarks. Compared to tx verification, which simply checks the validity of a tx then buffers it into system memory, vote verification involves more computation on resolving forks and database operations to store valid votes. Thus, vote verification incurs more latency than tx verification does. As the most computing intensive stages, both block mining and verifying rely on procedures in PoENF consensus algorithm with the computation complexity of O ( K 2 d ) . Therefore, the computation cost on all devices dramatically increases as K is scaled up. Given different computation capacity of benchmarks, RPi-4 needs 2.5 × processing time than Desktop does.

5.2.3. Data Throughput

In order to evaluate overhead of running EconLedger on communication channel, we considered volumes of message propagation and data throughput during key steps of the PoENF consensus protocol. Figure 6 demonstrates data transmission for different stages of PoENF consensus with varying committee size. In our EconLedger prototype, each ENF transaction has fixed size d t x = 430 Bytes, and a vote has fixed size d v t = 589 Bytes. Given the total communication complexity of O ( K 2 ) in both ENF collection and chain finality, data transmission of ENF collection is D e c = d t x × K 2 , and the data transmission of chain finality is D c f = d v t × K 2 . Thus, communication overheads incurred by ENF collection and chain finality are linearly scaled to K 2 .
Each block has a fixed header d h e a d = 613 Bytes along with a transactions list with size d t x s = d t x × K , and we can obtain block size d B = d h e a d + d t x s K . Therefore, the block size d B is linearly scaled to K. Assuming an ideal case that only one valid block is proposed during each epoch cycle, data transmission of block proposal is D b p = d B × K = d h e a d K + d t x s K 2 such that communication overhead is almost scaled to K 2 . On the other hand, for the worst case that every validator proposed a candidate block such that D b p = d B × K 2 , huge communication cost scaling up K can be introduced.
The data throughput could be specified as T h = D e c + D b p + D c f T e c + T b p + T c f (KB/s), where KB/s means KBytes per second. With variant committee sizes, the corresponding block size and data throughput are calculated as shown in Table 3. Given a fixed ENF transaction size, increasing the committee size allows committing more ENF proofs and, therefore, reach a higher data throughput at the cost of latency. In the test case of K = 20 , EconLedger implies a theoretical maximum data rate of 283 KB/s, which can meet bandwidth conditions in a majority of LAN-based IoVT systems.

5.3. Comparative Evaluation

As a key parameter in blockchain network, transaction t x committed time indicates how long a t x can be finalized in a new block on distributed ledger, and it is closely related to block confirmation time in consensus protocol. Given different blockchain benchmarks, we evaluate the end-to-end time latency of committing transactions along with other key performance metrics. For Ethereum, we used smart contract to record transactions on blockchain. For the Tendermint network, we used the built-in kvstore as an ABCI (Application BlockChain Interface) app to save transactions.
We conducted 50 Monte Carlo test runs, where a node sends a 1KB t x per second (TPS) to the blockchain network and waits until t x has been confirmed on the distributed ledger. Figure 7 shows the distributions of time delay for committing transactions given different blockchain networks. Each green bar indicates standard deviation with a mean represented by a red dot. The gray line shows the entire data range, and the black star is the median. Tendermint uses a BFT consensus protocol to achieve high efficiency; therefore, the mean of t x committed time is about 3 s given one voting round per second. Unlike Tendermint, Ethereum relies on probabilistic PoW consensus, which has variable block confirmation times. Thus, t x committed time in the Ethereum network varies with largest standard deviation. To guarantee synchronous epoch rounds for PoENF consensus, we set T Δ conservatively to 2 s based on the maximum time to ensure txs and blocks propagation in a P2P consensus network, including 20 validators. Hence, the range of latency in EconLedger is smaller than Ethereum, and t x committed time is almost stable (about 5.5 s).
Table 4 provides a comprehensive performance of committing transactions on different blockchain networks regarding several key performance matrices. Given the above t x committed time, which uses the mean in Figure 7, the tx rate t x / s is evaluated by calculating how many tx can be processed per second in the blockchain network. The Ethereum block size is bounded by how many units of gas can be spent per block, which is known as the block gas limit [46]. Currently, the maximum block size is around 12,000,000 gas (accessed at 20 July 2020), and the base cost of any transaction is about 21,000; thus, each block in Ethereum can include about 571 transactions. In our private Ethereum network, we can obtain the t x rate as (571.4/4.6) ≈ 124 tx/s. Tendermint and EconLedger both use fixed 1MB block. Given 1 KB per transaction, a block in Tendermint can store a maximum of 1000 transactions; thus, the tx rate is about (1000/2.9) ≈ 344 tx/s. For EconLedger, each transaction is about 430 bytes such that a block can record the maximum of 2400 transactions, then it achieves higher tx rate at around (2400/5.5) ≈ 436 tx/s.
In order to evaluate resource consumption by running blockchain benchmarks, we used the “top” command to monitor system performance of machines. We considered CPU and memory usage on Desktop (Ethereum miner) and Rpi (Tendermint and EconLedger validator). Due to computation intensive PoW algorithm, the mining process of Ethereum almost occupies full CPU capacity and consumes about 1.2 GB memory. Therefore, such a huge computation cost prevents resource constrained edge devices mining in Ethereum network. Unlike Ethereum, Tendermint and EconLedger use lightweight consensus algorithms to achieve efficiency in CPU and memory usage such that they are both suitable for deploying validators on edge devices. EconLedger almost has the same amount of memory usage as Tendermint in terms of running time. However, EconLedger has the higher t x committed time than Tendermint does, and it only needs 40% of the computation resource that Tendermint does.

5.4. Performance and Security Analysis

This section analyzes performance improvements given by the above experimental results and highlights the advantages of EconLedger compared with existing consensus protocols. Then, we evaluate security guarantees regarding committee selection and consensus algorithm. Finally, we list possible attacks and explain how EconLedge can prevent or mitigate these potential risks.

5.4.1. Performance Improvements

Given the above numerical results in terms of processing time and running time resource usages, our PoENF consensus is more computationally efficient than the PoW-based methods. Such a lightweight property of PoENF is promising for reducing energy consumption in mining processes and can lower demands on system capability for participants. Thus, resource-limited IoVT devices can directly work as validators (miners) rather than depending on support from an intermediate consensus layer by outsourcing mining tasks on fog networks or cloud servers. Compared with these hardware dependent solutions, such as REM based on Intel SGX and PoR requiring large local storage, our PoENF consensus relies on a platform independent algorithm to extract ENF-containing multimedia signals from recordings as ENF proofs. Therefore, it is promising to address heterogeneity issues as we integrate blockchain technology with IoVT systems that include multiple non-standard platforms.
EconLedger achieves communication efficiency by executing consensus protocol within a random selected PoENF committee. Such a small scale consensus network imposes low levels of data transfer overhead on IoVT systems at the network of edge, which has limited bandwidth. In addition, communication complexity for each validator is linearly scaled to PoENF committee size, as shown in Figure 6. Thus, limited data transmission also means lower energy consumption on devices during communication handling tasks. Unlike non-scalable BFT-based solutions that rely on a pre-fixed set of validators, EconLedger aims to improve scalability by requiring a randomly elected consensus committee to delegate other nodes of the network. As a tradeoff, EconLedger is actually a partially decentralized blockchain network.
In EconLedger, raw data are saved into off-chain storage deployed on a DDB network, while only references of data are encapsulated into transactions that are finalized on distributed ledger (on-chain storage). As a reference is a fixed length of hash value disregarding format or size of the source data, such light transactions can be used to verified complicated data in use over IoVT systems, such as multimedia recordings, contextual information, and trained models, etc. Moreover, each tx has fixed and small size such that a block can record more txs. As a result, the txs rate increased given that the block confirmation time is stable.

5.4.2. Committee Randomness Security

We assumed that an adversary has limited capacity such that he/she is subject to the usual cryptographic hardness assumptions and honest nodes never share their keys with each other or disclose the input string x of the VRF function before the end of randomness generation. Therefore, members of a new committee could be completely random owing to the unpredictability property of the VRF-based randomness string generation. In addition, given the assumption that an adversary can only control up to f byzantine validators, the chain finality achieves safety by making agreements on checkpoints if current PoENF committee has no less than 2 f + 1 honest members. Therefore, the adversary has at most m = 1 / 4 chance per round to control the checkpoint voting process. As a result, the probability that an adversary controls n consecutive checkpoint is upper-bounded by P [ X n ] = 1 4 n < 10 λ . For λ = 6 , the adversary will control at most ten consecutive chain finality runs.

5.4.3. PoENF Consensus Security

Unlike PoW and PoS consensus protocols that are vulnerable to mining centralization, whether a validator can become winner in current PoENF block proposal round depends on its ENF score rather than its controlled computation power or cryptocurrency stakes. Thus, an adversary cannot control the mining process by increasing investments on computation resource or owned coins. Moreover, the Krum rule adopted in ENF score calculation chooses n f 2 closet ENF proofs and precludes the f 1 Byzantine proofs that are far away. Thus, all honest validators can output the same minimum ENF score as long as n 2 f + 3 , and our PoENF can prevent against ENF proof positioning attacks.
In PoENF consensus, all honest validators only accept valid blocks generated in the current epoch round; thus, correctness (validity) is ensured. In addition, PoENF achieves consistency (agreement) by requiring all honest validators to update their local chain head according to chain extension policies. At the end of a PoENF block proposal round, every honest validator should either accept valid transactions that are saved into a confirmed block as the local chain header or reject all transactions by extending an empty block on local chain header. Such a liveness (termination) property ensures that all valid ENF transactions are processed within the block generation round. Furthermore, voting-based chain finality can guarantee safety, which requires all honest validators to form a same total order of finalized blocks appended on the global unique main chain.

5.4.4. Analysis of Possible attacks

1. Double spending attacks: In a double spending scenario, an adversary attempts to revert a transaction that has been finalized on the distributed ledger. In Econledger, a voting-based chain finality mechanism ensures the total order and persistence of data recorded on the distributed ledger. Thus, once a transaction is finalized in the checkpoint block, all other honest validators will work on the finalized main chain and disregard any double spending transactions from attackers.
2. Free-riding attacks: There is a possibility of free-riding attacks that some lazy nodes only gain benefits by using the security service without fulfilling their responsibilities in the EconLedger network, such as forwarding messages or submitting ENF proofs. The punishment strategies can prevent against free-riding attacks by reducing credit stake of dishonest nodes or even isolating them from the entire network.
3. Selfish-mining attacks: In a selfish-mining attack, the adversary tries to withhold blocks and release them strategically to reduce chain growth and increase the relative ratio of his proposed blocks. In PoENF consensus, only valid blocks generated in the current round can be accepted by honest validators, while those outdated blocks are discarded. Moreover, withholding blocks is a type of misbehavior in PoENF, and it decreases both profits and credit of a dishonest node. Therefore, selfish-mining is unprofitable for rational validators according to reward and punishment strategies.
4. ENF-proof replay attacks: The adversary can launch replay attacks by sending duplicated ENF proofs. As ENF fluctuations of power grid vary as time changes, the duplicate ENF proofs generally output large ENF scores. As a result, these Byzantine validators have marginal chances to propose valid blocks. Furthermore, ENF-proof replay attacks can be detected by analyzing ENF proofs on EconLedger. Thus, identifying misbehavior and isolating suspicious nodes can improve system robustness, while we leave ENF-based detection topics to future work.

6. Conclusions

This paper presents EconLedger, a lightweight and secure-by-design distributed ledger to enhance trust and security properties for smart IoVT systems at the edge. The EconLedger combines an efficient PoENF consensus mechanism with a deterministic voting-based chain finality in order to achieve safety and liveness. By using on-chain ledger and DDB enabled off-chain storage, the EconLedger network reduces storage overheads on validators and guarantees security and resilience of data sharing in a distributed IoVT network. The experimental results based on a prototype demonstrate that it achieves higher computation efficiency and t x throughput than benchmarks.
The experimental results on the prototype are encouraging, but there still are open issues to solve before developing a practical solution in real-world video surveillance systems. Using ENF signals for proof of work in consensus process is creative, however, whether ENF variation extracted from multimedia is reliable given attacks on ENF recordings such as synchronizing ENF and injecting into raw video/audio data or colluding among adversaries by sharing ENF data, is still an open question. Thus, our ongoing efforts include validating the proposed architecture in a real-world video streamscontext, simulating attack scenarios such as using AI enabled methods to generate fake ENF recordings, and ensuring overall efficiency and security.
In addition, validators in EconLedger system cannot directly obtain cryptocurrency rewards though PoENF consensus, but they can gain benefits from transaction fees. As a punishment strategy, slashing security deposits can increase financial cost if the adversary uses sybil nodes to disturb consensus protocol. However, there are open questions on the incentive mechanism. Our future work will use game theory to evaluate how incentive mechanisms can enhance system robustness and security.
Moreover, our EconLedger solution aims to provide a lightweight and security distributed ledger under a small-scale IoVT network, such as a campus. However, it still requires more investigation on how to apply EconLedger at a large-scale application scenario, such as smart cities or smart grids. Another future investigation for our team is designing scalable blockchain infrastructure that relies on a hierarchical framework in order to federate multiple privately distributed ledgers.

Author Contributions

Conceptualization, R.X., D.N., and Y.C.; methodology, R.X. and D.N.; software, R.X. and D.N.; validation, R.X., D.N., and Y.C.; formal analysis, R.X., D.N., and Y.C.; investigation, R.X.; resources, R.X. and D.N.; data curation, R.X.; writing—original draft preparation, R.X. and D.N.; writing—review and editing, R.X. and Y.C.; visualization, R.X.; supervision, Y.C.; project Administration, Y.C. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by National Science Foundation, grant number CNS-2039342 and United States Air Force Office of Scientific Research, grant number FA9550-21-1-0229.

Data Availability Statement

Not Applicable, the study does not report any data.

Acknowledgments

This work is supported by the U.S. National Science Foundation (NSF) via grant CNS-2039342 and the U.S. Air Force Office of Scientific Research (AFOSR) Dynamic Data and Information Processing Program (DDIP) via grant FA9550-21-1-0229. The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of the U.S. Air Force.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
ABCIApplication BlockChain Interface;
BFTByzantine Fault Tolerant;
CCDCharge-coupled Device;
COMSComplementary Metal Oxide Semiconductor;
CPUCentral Processing Unit;
DAGDirected Acyclic Graph;
DDBDecentralized Database;
DHTDistributed Hash Table;
DLTDistributed Ledger Technology;
DPADistributed Pre-image Archive;
ENFElectrical Network Frequency;
IoVTInternet of Video Things;
LANLocal Area Network;
M2MMachine-to-Machine;
P2PPeer-to-Peer;
PBFTPractical Byzantine Fault Tolerant;
PKIPublic Key Infrastructure;
PoENFProof-of-ENF;
PoETProof-of-Elapsed Time;
PoRProofs-of-Retrievability;
PoSProof-of-Stake;
PoUWProof-of-Useful-Work;
PoWProof-of-Work;
PoXProof-of-X-concept;
PVSSPublicly Verifiable Secret Sharing;
REMResource Efficient Mining;
RSARivest–Shamir–Adleman;
RTTRound Trip Time;
RPiRaspberry Pi;
SGXSoftware Guard Extensions;
SMRState Machine Replication;
TPSTransactions per Second;
VRFVerifiable Random Function.

References

  1. Xu, R.; Nikouei, S.Y.; Chen, Y.; Polunchenko, A.; Song, S.; Deng, C.; Faughnan, T.R. Real-time human objects tracking for smart surveillance at the edge. In Proceedings of the 2018 IEEE International Conference on Communications (ICC), Kansas City, MO, USA, 20–24 May 2018; pp. 1–6. [Google Scholar]
  2. Nikouei, S.Y.; Xu, R.; Nagothu, D.; Chen, Y.; Aved, A.; Blasch, E. Real-time index authentication for event-oriented surveillance video query using blockchain. In Proceedings of the 2018 IEEE International Smart Cities Conference (ISC2), Kansas City, MO, USA, 16–19 September 2018; pp. 1–8. [Google Scholar]
  3. Nikouei, S.Y.; Chen, Y.; Aved, A.; Blasch, E.; Faughnan, T.R. I-safe: Instant suspicious activity identification at the edge using fuzzy decision making. In Proceedings of the 4th ACM/IEEE Symposium on Edge Computing, Washington, DC, USA, 7–9 November 2019; pp. 101–112. [Google Scholar]
  4. Ali, M.S.; Vecchio, M.; Pincheira, M.; Dolui, K.; Antonelli, F.; Rehmani, M.H. Applications of blockchains in the Internet of Things: A comprehensive survey. IEEE Commun. Surv. Tutor. 2018, 21, 1676–1717. [Google Scholar] [CrossRef]
  5. Nikouei, S.Y.; Chen, Y.; Faughnan, T.R. Smart surveillance as an edge service for real-time human detection and tracking. In Proceedings of the 2018 IEEE/ACM Symposium on Edge Computing (SEC), Seattle, WA, USA, 25–27 October 2018; pp. 336–337. [Google Scholar]
  6. Zhou, Q.; Huang, H.; Zheng, Z.; Bian, J. Solutions to scalability of blockchain: A survey. IEEE Access 2020, 8, 16440–16455. [Google Scholar] [CrossRef]
  7. Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System. Technical Report, Manubot. 2019. Available online: https://bitcoin.org/bitcoin.pdf (accessed on 21 September 2021).
  8. Miller, A.; Juels, A.; Shi, E.; Parno, B.; Katz, J. Permacoin: Repurposing bitcoin work for data preservation. In Proceedings of the 2014 IEEE Symposium on Security and Privacy, Berkeley, CA, USA, 18–21 May 2014; pp. 475–490. [Google Scholar]
  9. Castro, M.; Liskov, B. Practical Byzantine fault tolerance. OSDI 1999, 99, 173–186. [Google Scholar]
  10. Hajj-Ahmad, A.; Garg, R.; Wu, M. ENF-based region-of-recording identification for media signals. IEEE Trans. Inf. Forensics Secur. 2015, 10, 1125–1136. [Google Scholar] [CrossRef]
  11. Nagothu, D.; Chen, Y.; Blasch, E.; Aved, A.; Zhu, S. Detecting malicious false frame injection attacks on surveillance systems at the edge using electrical network frequency signals. Sensors 2019, 19, 2424. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  12. Swarm. Available online: https://ethersphere.github.io/swarm-home/ (accessed on 2 January 2020).
  13. Bollen, M.H.; Gu, I.Y. Signal Processing of Power Quality Disturbances; John Wiley & Sons: Hoboken, NJ, USA, 2006; Volume 30. [Google Scholar]
  14. Grigoras, C. Applications of ENF analysis in forensic authentication of digital audio and video recordings. J. Audio Eng. Soc. 2009, 57, 643–661. [Google Scholar]
  15. Hajj-Ahmad, A.; Garg, R.; Wu, M. Instantaneous frequency estimation and localization for ENF signals. In Proceedings of the 2012 Asia Pacific Signal and Information Processing Association Annual Summit and Conference, Lanzhou, China, 18–21 November 2012; pp. 1–10. [Google Scholar]
  16. Nagothu, D.; Chen, Y.; Aved, A.; Blasch, E. Authenticating Video Feeds using Electric Network Frequency Estimation at the Edge. EAI Endorsed Trans. Secur. Saf. 2021, 2018, 168648. [Google Scholar]
  17. Buterin, V. A Next-Generation Smart Contract and Decentralized Application Platform. White Paper. 2014. Available online: https://blockchainlab.com/pdf/Ethereum_white_paper a_next_generation_smart_contract_and_decentralized_application_platform-vitalik-buterin.pdf (accessed on 21 September 2021).
  18. Juels, A.; Kaliski, B.S., Jr. PORs: Proofs of retrievability for large files. In Proceedings of the 14th ACM Conference on Computer and Communications Security, New York, NY, USA, 29 October 2007; pp. 584–597. [Google Scholar]
  19. Zhang, F.; Eyal, I.; Escriva, R.; Juels, A.; Van Renesse, R. REM: Resource-Efficient Mining for Blockchains. In Proceedings of the 26th USENIX Security Symposium (USENIX Security 17), Vancouver, BC, Canada, 16–18 August 2017; pp. 1427–1444. [Google Scholar]
  20. Sawtooth Documentation. Available online: https://sawtooth.hyperledger.org/docs/core /releases/latest/introduction.html (accessed on 2 January 2020).
  21. King, S.; Nadal, S. Ppcoin: Peer-to-Peer Crypto-Currency with Proof-of-Stake; Self-Published Paper; 2012; Volume 19, Available online: https://people.cs.georgetown.edu/~clay/classes/fall2017/835/papers/peercoin-paper.pdf (accessed on 21 September 2021).
  22. Lamport, L.; Shostak, R.; Pease, M. The Byzantine generals problem. ACM Trans. Program. Lang. Syst. (TOPLAS) 1982, 4, 382–401. [Google Scholar] [CrossRef] [Green Version]
  23. Hyperledger Fabric. Available online: http://https://github.com/hyperledger/fabric (accessed on 2 January 2020).
  24. Buterin, V.; Griffith, V. Casper the friendly finality gadget. arXiv 2017, arXiv:1710.09437. [Google Scholar]
  25. Bao, Z.; Shi, W.; He, D.; Chood, K.K.R. IoTChain: A three-tier blockchain-based IoT security architecture. arXiv 2018, arXiv:1806.02008. [Google Scholar]
  26. Tuli, S.; Mahmud, R.; Tuli, S.; Buyya, R. Fogbus: A blockchain-based lightweight framework for edge and fog computing. J. Syst. Softw. 2019, 154, 22–36. [Google Scholar] [CrossRef] [Green Version]
  27. Sagirlar, G.; Carminati, B.; Ferrari, E.; Sheehan, J.D.; Ragnoli, E. Hybrid-iot: Hybrid blockchain architecture for internet of things-pow sub-blockchains. In Proceedings of the 2018 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData), Halifax, NS, Canada, 30 July–3 August 2018; pp. 1007–1016. [Google Scholar]
  28. IOTA Foundation. IOTA Data Marketplace. Available online: https://data.iota.org (accessed on 2 January 2020).
  29. Popov, S. The Tangle. 2018, p. 131. Available online: https://assets.ctfassets.net/r1dr6vzfxhev/2t4uxvsIqk0EUau6g2sw0g/45eae33637ca92f85dd9f4a3a218e1ec/iota1_4_3.pdf (accessed on 21 September 2021).
  30. Xu, R.; Chen, Y.; Blasch, E.; Chen, G. Exploration of blockchain-enabled decentralized capability-based access control strategy for space situation awareness. Opt. Eng. 2019, 58, 041609. [Google Scholar] [CrossRef] [Green Version]
  31. Xu, R.; Chen, Y.; Blasch, E.; Chen, G. Blendcac: A smart contract enabled decentralized capability-based access control mechanism for the iot. Computers 2018, 7, 39. [Google Scholar] [CrossRef] [Green Version]
  32. Nagothu, D.; Schwell, J.; Chen, Y.; Blasch, E.; Zhu, S. A study on smart online frame forging attacks against video surveillance system. In Sensors and Systems for Space Applications XII; International Society for Optics and Photonics; 2019; Volume 11017, p. 110170L. Available online: https://arxiv.org/pdf/1903.03473.pdf (accessed on 21 September 2021).
  33. Xu, R.; Nagothu, D.; Chen, Y. Decentralized video input authentication as an edge service for smart cities. IEEE Consum. Electron. Mag. 2021. [Google Scholar] [CrossRef]
  34. Lamport, L. Time, clocks, and the ordering of events in a distributed system. Commun. ACM 1978, 21, 558–565. [Google Scholar] [CrossRef]
  35. Swarm Docs. Available online: https://swarm-guide.readthedocs.io/en/latest/ introduction.html (accessed on 2 January 2020).
  36. Maymounkov, P.; Mazieres, D. Kademlia: A peer-to-peer information system based on the xor metric. In International Workshop on Peer-to-Peer Systems; Springer: Berlin/Heidelberg, Germany, 2002; pp. 53–65. [Google Scholar]
  37. Gilad, Y.; Hemo, R.; Micali, S.; Vlachos, G.; Zeldovich, N. Algorand: Scaling byzantine agreements for cryptocurrencies. In Proceedings of the 26th Symposium on Operating Systems Principles, Shanghai, China, 28–31 October 2017; pp. 51–68. [Google Scholar]
  38. Stadler, M. Publicly verifiable secret sharing. In International Conference on the Theory and Applications of Cryptographic Techniques; Springer: Berlin/Heidelberg, Germany, 1996; pp. 190–199. [Google Scholar]
  39. Blanchard, P.; Guerraoui, R.; Stainer, J. Machine learning with adversaries: Byzantine tolerant gradient descent. In Proceedings of the 31st International Conference on Neural Information Processing Systems, Long Beach, CA, USA, 4–9 December 2017; pp. 119–129. [Google Scholar]
  40. Xu, R.; Chen, Y.; Blasch, E. Microchain: A Light Hierarchical Consensus Protocol for IoT Systems. In Blockchain Applications in IoT Ecosystem; Springer: Berlin/Heidelberg, Germany, 2021; pp. 129–149. [Google Scholar]
  41. Flask: A Pyhon Microframework. Available online: http://flask.pocoo.org/ (accessed on 2 January 2020).
  42. Pyca/Cryptography Documentation. Available online: http://pyca/cryptography (accessed on 2 January 2020).
  43. SQLite. Available online: https://www.sqlite.org/index.html (accessed on 2 January 2020).
  44. Ethereum Homestead Documentation. Available online: http://www.ethdocs.org/en/ latest/index.html (accessed on 2 January 2020).
  45. Kwon, J. Tendermint: Consensus without mining. Draft Fall 2014, 1, 11. [Google Scholar]
  46. What’s the Maximum Ethereum Block Size? Available online: https://ethgasstation. info/blog/ethereum-block-size/ (accessed on 2 January 2020).
Figure 1. The EconLedger system architecture.
Figure 1. The EconLedger system architecture.
Futureinternet 13 00248 g001
Figure 2. The illustration of block and off-chain data structure.
Figure 2. The illustration of block and off-chain data structure.
Futureinternet 13 00248 g002
Figure 3. The PoENF consensus protocol overview.
Figure 3. The PoENF consensus protocol overview.
Futureinternet 13 00248 g003
Figure 4. Latency for an epoch cycle of PoENF consensus with different committee size.
Figure 4. Latency for an epoch cycle of PoENF consensus with different committee size.
Futureinternet 13 00248 g004
Figure 5. Computation overhead for stages of running PoENF consensus on host. Comparative evaluations on platform benchmark.
Figure 5. Computation overhead for stages of running PoENF consensus on host. Comparative evaluations on platform benchmark.
Futureinternet 13 00248 g005
Figure 6. Communication overhead of running an epoch round of PoENF consensus. Comparative evaluations on different committee size.
Figure 6. Communication overhead of running an epoch round of PoENF consensus. Comparative evaluations on different committee size.
Futureinternet 13 00248 g006
Figure 7. Time latency for committing transactions. Comparative evaluations on different blockchain networks.
Figure 7. Time latency for committing transactions. Comparative evaluations on different blockchain networks.
Futureinternet 13 00248 g007
Table 1. Relevant basic notation.
Table 1. Relevant basic notation.
SymbolDescription
s l E Epoch including sequential order of time slot
DDynasty represents current PoE committee
t x A transaction broadcasted by the node of network
BA block proposed by the validator in current Dynasty
C Distributed ledger maintained by the consensus network
Table 2. Configuration of experimental nodes.
Table 2. Configuration of experimental nodes.
DeviceDell Optiplex-7010Dell Optiplex 760Raspberry Pi 4 Model B
CPUIntel Core TM i5-3470 (4 cores), 3.2 GHzIntel Core TM E8400 (2 cores), 3 GHzBroadcom ARM Cortex A72 (ARMv8), 1.5 GHz
Memory8 GB DDR34 GB DDR34 GB SDRAM
Storage350 G HHD250 G HHD64 GB (microSD)
OSUbuntu 16.04Ubuntu 16.04Raspbian (Jessie)
Table 3. Data throughputs vs. committee sizes.
Table 3. Data throughputs vs. committee sizes.
Committee Size58121620
Block Size (KB)2.73.95.67.38.9
Throughput (KB/s)61.9108.3159.8220.1283.3
Table 4. Comparative evaluation of launching transactions on different blockchain platforms.
Table 4. Comparative evaluation of launching transactions on different blockchain platforms.
EthereumTendermintEconLedger
tx committed time (s)4.63.05.5
tx rate (tx/s)124334436
CPU usage (%)10338.615.2
Memory usage (MB)12007280
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Xu, R.; Nagothu, D.; Chen, Y. EconLedger: A Proof-of-ENF Consensus Based Lightweight Distributed Ledger for IoVT Networks. Future Internet 2021, 13, 248. https://0-doi-org.brum.beds.ac.uk/10.3390/fi13100248

AMA Style

Xu R, Nagothu D, Chen Y. EconLedger: A Proof-of-ENF Consensus Based Lightweight Distributed Ledger for IoVT Networks. Future Internet. 2021; 13(10):248. https://0-doi-org.brum.beds.ac.uk/10.3390/fi13100248

Chicago/Turabian Style

Xu, Ronghua, Deeraj Nagothu, and Yu Chen. 2021. "EconLedger: A Proof-of-ENF Consensus Based Lightweight Distributed Ledger for IoVT Networks" Future Internet 13, no. 10: 248. https://0-doi-org.brum.beds.ac.uk/10.3390/fi13100248

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop