*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 (*RSA*.*gen*) and digital signature scheme (*RSA*.*sign*, *RSA*.*veri f y*). During the registration process, signing-verification key pair (*ski*, *pki*) ← *RSA*.*gen*(*i*) is generated by PKI and assigned to the authorized node *ui*. Additionally, a node's public key *pki* is associated with its credit stake *ci* ≤ *Cmax*, where *Cmax* is the maximum value of credit stake defined by the system. Therefore, all registered nodes can be represented as *U* = {(*pk*1, *c*1),(*pk*2, *c*2), ...,(*pkn*, *cn*)}, 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 *slots*, which can be indexed by logical clocks *ticks* to synchronize the events in a distributed system [34]. Given a certain tick *t* ∈ {1, 2, 3, ...}, slot *slt* represents the length of time window to measure TΔ. The time window of *slt* 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 *slt* ≥ 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 *MT*\_*root* in the block header stores the hash root of a Merkle tree to maintain the integrity of all transactions. In each transaction, the *swarm*\_*hash* 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.

**Figure 2.** The illustration of block and off-chain data structure.

### **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.