FBChain: A Blockchain-based Federated Learning Model with Efficiency and Secure Communication

Yang Li Chunhe Xia Wei Liu Chen Chen Tianbo Wang
Abstract

Privacy and security in the parameter transmission process of federated learning are currently among the most prominent concerns. However, there are two thorny problems caused by unprotected communication methods: “parameter-leakage” and “inefficient-communication”. This article proposes Blockchain-based Federated Learning (FBChain) model for federated learning parameter communication to overcome the above two problems. First, we utilize the immutability of blockchain to store the global model and hash value of local model parameters in case of tampering during the communication process, protect data privacy by encrypting parameters, and verify data consistency by comparing the hash values of local parameters, thus addressing the “parameter-leakage” problem. Second, the Proof of Weighted Link Speed (PoWLS) consensus algorithm comprehensively selects nodes with the higher weighted link speed to aggregate global model and package blocks, thereby solving the “inefficient-communication” problem. Experimental results demonstrate the effectiveness of our proposed FBChain model and its ability to improve model communication efficiency in federated learning.

keywords:
Federated Learning , Blockchain , Encrypted Communication , Consensus Algorithm
\affiliation

[1] organization=School of Computer Science and Engineering, Beihang University,city=Beijing, postcode=100191, country=China \affiliation[2] organization=Key Laboratory of Beijing Network Technology, Beihang University,city=Beijing, postcode=100191, country=China \affiliation[3] organization=Guangxi Collaborative Innovation Center of Multi-Source Information Integration and Intelligent Processing, Guangxi Normal University,city=Guilin , postcode=541004, country=China \affiliation[4] organization=School of Software, Zhengzhou University,city=Zhengzhou, postcode=450000, country=China \affiliation[5] organization=Henan Collaborative Innovation Center for Internet Medical and Health Services, Zhengzhou University ,city=Zhengzhou, postcode=450000, country=China \affiliation[6] organization= Hanwei Internet of Things Research Institute, Zhengzhou University,city=Zhengzhou, postcode=450000, country=China \affiliation[7] organization= School of Cyber Science and Technology, Beihang University ,city=Beijing, postcode=100191, country=China

1 Introduction

With the increasing privacy awareness of people and the enactment of relevant privacy laws, federated learning (FL) is emerging as a viable solution to train machine learning models with decentralized datasets while protecting privacy [1]. In vanilla FL, clients train local model utilizing local dataset. Then, they communicate with a parameter server, accept all the updated local models to aggregate global model each round until model converges. However, FL is a double-edged sword [2, 3]. On the positive side, FL protects training dataset privacy and security, a large amount of data exists in isolated silos, and FL enables their use for training models in a safe environment. On the negative side, because the training dataset is decentralized and the global model is aggregated by different local models, the communication of local model between clients and server is frequent, but the communication efficiency and security cannot be guaranteed [4]. Given the local model parameter, research on communication security and efficiency focuses on model encryption and lower communication rounds. Especially, our research domain helps to protect local model parameters against malicious attacks that may result in data tampering or leakage, while concurrently enhancing communication efficiency.

There are two inevitable problems in federated learning communication: “parameter-leakage” and “inefficient-communication” [5, 6, 7, 8]. The local model parameters transmission from clients and server via network, thus getting aggregated global model. Nevertheless, the network may be under malicious attack, and the link speed of different clients and server may be difference. “Parameter-leakage” refers to the local model parameter being tampered or leakage because of unsafety communication method, attackers may get private data from leaked parameters. “Inefficient-communication” refers to the parameter transmission speed that may be slow. These two problems indicate it is thorny for the FL to achieve efficient and secure communication.

Benefiting from the great success of FL in privacy protection, most researchers consider privacy during FL communication and use compression or combine it with blockchain to improve security and efficiency. Compression local model parameters can lower transmission data size, according to compress origin data to low-rank or a random mask [9, 10]. Blockchain can provide a reliable way to transmit combination with encryption mechanism, store local model and global model parameters in blocks to ensure the security of model parameters [11, 12, 13]. Unfortunately, these two mainstreams are inadequate to address the problem of FL communication efficiency and security. First, the compression of parameters has differences from origin local model, makes it challenging to perceive better performance on model training [14, 15]. Second, the blockchain combined method has limitations on block size, and every block will be stored in each node, which will occupy a significant amount of storage space [16, 17].

To tackle the obstacles above, we propose the blockchain-based federated learning (FBChain) model, which consists of two main components: the model and Proof of Weighted Link Speed consensus algorithm(PoWLS) in the blockchain. The former integrates asymmetric encryption, symmetric encryption and hash computation, thus solving the problem of “parameter-leakage”. It considers the parameter tampered with or leaked during transmission, while reducing the amount of data that needs to be stored in the block, trying to ensure data privacy and security while reducing the pressure on blockchain storage. The latter involves selecting a group of nodes with strong communication capabilities to aggregate global model and package blocks, thereby addressing the “inefficient-communication” problem. Experimental results demonstrate that our model can not only have the effectiveness on machine learning model training, but also make different communication efficiency during parameter communication.

Our contributions can be summarized as follows:

  • 1.

    We propose the FBChain model by storing the global model and the hash values of local model parameters in the blockchain, ensures the immutability of the global model and reduces the amount of data stored in the blockchain. Local model parameters are processed by encryption, and the aggregation node compares the received parameters with the saved hash value in the blockchain, achieving consistency verification of the local model and enhancing the security of the data communication process.

  • 2.

    We propose a PoS and DPoS inspired consensus algorithm. By comprehensively considering the link speed of nodes in the blockchain network, a group of nodes with high link speed and low latency is selected to take turns aggregate global parameters and package blocks, improve communication efficiency.

  • 3.

    Experiments on real-world datasets demonstrate that our model outperforms baseline approaches in terms of communication efficiency.

The rest of this article is organized as follows. We first give a comprehensive review of related works in Section 2. Next, we demonstrate the background of this article in Section 3, followed by the presentation of detailed design of FBChain in Section 4. After that, we conduct a series of experiments on two public datasets to evaluate FBChain in Section 5. Finally, Section 6 concludes this work and discusses future directions.

2 RELATED WORK

In this section, we briefly introduce some related works about federated learning improvement on transaction efficiency and security.

2.1 Improvement on communication efficiency

Although federated learning can build a global model without sharing training data, a large number of model parameters need to be exchanged during the construction process. Jakub Konecný et al. [18] proposed two ways to reduce the uplink communication costs: structured updates and sketched updates. Yunlong Lu et al. [19] proposed a blockchain-empowered federated learning scheme in digital twin edge networks to strengthen communication security and data privacy protection. Su Liu et al. [20] proposed an efficient-communication approach, which consists of three parts, provides a customized local training strategy for vehicular clients to achieve convergence quickly through a constraint item within fewer communication rounds. K. Li et al. [21] proposed a coreset-based FL (CBFL) framework to improve communication efficiency in federated learning. Instead of training model on full datasets with a regular network model, CBFL uses a much smaller well-matched evolutionary network model on coreset. Qing Han et al. [22] proposed PCFed, a novel privacy-enhanced and communication-efficient FL framework to provide higher model accuracy with rigorous privacy guarantees and great communication efficiency. Wei Liu et al. [23] proposed a general DFL framework, which implements both multiple local updates and multiple inter-node communications periodically, to strike a balance between communication efficiency and model consensus.

2.2 Improvement on communication security

During the communication of parameters of the federal learning model, the communication may under malicious attack, and the model parameters may be tampered with or leaked. Jiaqi Zhao et al. [24] proposed a privacy protection and verifiable decentralized co-learning framework called PVD-FL, which can realize secure deep learning model training under a decentralized architecture. Zhe Peng et al. [25] proposed VFChain, a verifiable and auditable joint learning framework based on the blockchain system. Yuanhang Qi et al. [26] proposed a blockchain-based joint learning framework to realize decentralized, reliable, and safe joint learning without a centralized model coordinator.

During the transmission of parameters of the federal learning model, the data may be tampered with or leaked.Jiaqi Zhao et al. [24] proposed a privacy protection and verifiable decentralized co-learning framework called PVD-FL, which can realize secure deep learning model training under a decentralized architecture.Zhe Peng et al. [25] proposed VFChain, a verifiable and auditable joint learning framework based on the blockchain system. Yuanhang Qi et al. [26] proposed a blockchain-based joint learning framework to realize decentralized, reliable and safe joint learning without a centralized model coordinator. Jungjae Lee et al. [27] proposed a layered blockchain system, using public blockchain for a joint learning process without a trustworthy curator. This can prevent model poisoning attacks and provide security updates for the global model. Xiaoyuan Liu et al. [28] proposed a privacy-enhanced FL (PEFL) framework, which uses homomorphic encryption as the basic technology and provides a channel for the server to punish the poisoned by extracting the effective gradient data of the number function.

3 BACKGROUND

3.1 Symmetric encryption and asymmetric encryption

In cryptography, encryption methods can be divided into two categories of cryptographic algorithms based on the characteristics of the key: symmetric encryption and asymmetric encryption. Symmetric encryption algorithms are a type of encryption algorithm in cryptography. In this type of algorithm, the same key is used for both encryption and decryption, or two keys that can be easily calculated from each other are used. In symmetric encryption algorithms, because the same key is used for encryption and decryption, both parties in communication must jointly select and keep the same key. Each party must ensure the privacy and security of the symmetric key in order to achieve the confidentiality and integrity of the data. Symmetric encryption has the advantages of fast speed and simple algorithm, but it also has the disadvantages of complex key distribution and management, high cost, and inability to be used for digital signatures. Asymmetric encryption algorithms contain two different keys, the public key kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT and the private key kssubscript𝑘𝑠k_{s}italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT. kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT can be made public to other nodes, while kssubscript𝑘𝑠k_{s}italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT can only be kept by oneself. It is easy to calculate kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT from kssubscript𝑘𝑠k_{s}italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT, but it is difficult to calculate kssubscript𝑘𝑠k_{s}italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT from kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT. Asymmetric encryption algorithms have the following characteristics:

  • 1.

    Encryption and decryption are performed respectively by kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT and kssubscript𝑘𝑠k_{s}italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT, kpkssubscript𝑘𝑝subscript𝑘𝑠k_{p}\neq k_{s}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ≠ italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT.

    Asymmetric encryption: XY:Y=Enc(X,kp):𝑋𝑌𝑌𝐸𝑛𝑐𝑋subscript𝑘𝑝X\rightarrow Y:Y=Enc(X,k_{p})italic_X → italic_Y : italic_Y = italic_E italic_n italic_c ( italic_X , italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ).

    Asymmetric decryption: YX:X=Dec(Y,ks)=D(E(X,kp),ks):𝑌𝑋𝑋𝐷𝑒𝑐𝑌subscript𝑘𝑠𝐷𝐸𝑋subscript𝑘𝑝subscript𝑘𝑠Y\rightarrow X:X=Dec(Y,k_{s})=D(E(X,k_{p}),k_{s})italic_Y → italic_X : italic_X = italic_D italic_e italic_c ( italic_Y , italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ) = italic_D ( italic_E ( italic_X , italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ) , italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ).

    Hence, X is the content to encrypt, Y is the ciphertext, Enc𝐸𝑛𝑐Encitalic_E italic_n italic_c is the encryption function, Dec𝐷𝑒𝑐Decitalic_D italic_e italic_c is the decryption function.

  • 2.

    Can’t get kssubscript𝑘𝑠k_{s}italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT from Enc𝐸𝑛𝑐Encitalic_E italic_n italic_c and kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT.

  • 3.

    Both kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT and kssubscript𝑘𝑠k_{s}italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT can be used as encryption key and decryption key. YX:X=D(E(X,kp),ks)=E(D(X,ks),kp):𝑌𝑋𝑋𝐷𝐸𝑋subscript𝑘𝑝subscript𝑘𝑠𝐸𝐷𝑋subscript𝑘𝑠subscript𝑘𝑝Y\rightarrow X:X=D(E(X,k_{p}),k_{s})=E(D(X,k_{s}),k_{p})italic_Y → italic_X : italic_X = italic_D ( italic_E ( italic_X , italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ) , italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ) = italic_E ( italic_D ( italic_X , italic_k start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ) , italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT )

The advantages of asymmetric encryption algorithms are that key distribution and management are simple, and it is relatively easy to implement digital signatures and key exchange. The disadvantage is that the algorithm is more complex and the encryption and decryption speed is slower.

3.2 PoS Consensus algorithm

One of the fundamental problems in distributed systems is how to ensure that the data of all nodes in a distributed system cluster are completely identical and can reach consensus on a proposal. Consensus algorithms focus on studying the process of distributed nodes reaching consensus. How to make all nodes in a distributed system cluster reach consensus in a complex, open, and untrusted Internet environment is still one of the challenges in the field of distributed computing.

The Proof of Stake (PoS) consensus algorithm using stake as witness nodes selection criteria, nodes with the highest stake, rather than the highest computing power, are awarded the right to record transactions. The stake is reflected in the node’s ownership of a specific amount of currency, called Coin days. The PoS consensus algorithm has advantages such as high efficiency and low resource consumption.

4 Blockchain-based Federated Learning Model

To address the issue of man-in-the-middle attacks and improve parameter communication efficiency during the training process of federated learning models, this article proposes the FBChain model based on federated learning and blockchain. FBChain is based on a blockchain network, assume there have ρ𝜌\rhoitalic_ρ nodes in the blockchain network. The model is defined as follows:

FBChain={PA,LT,BP,PLΔ,e,PGΓ,r,PoWLS,CR}𝐹𝐵𝐶𝑎𝑖𝑛𝑃𝐴𝐿𝑇𝐵𝑃superscriptsubscript𝑃𝐿Δ𝑒superscriptsubscript𝑃𝐺Γ𝑟𝑃𝑜𝑊𝐿𝑆𝐶𝑅FBChain=\{PA,LT,BP,P_{L}^{\Delta,e},P_{G}^{\Gamma,r},PoWLS,CR\}italic_F italic_B italic_C italic_h italic_a italic_i italic_n = { italic_P italic_A , italic_L italic_T , italic_B italic_P , italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Δ , italic_e end_POSTSUPERSCRIPT , italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Γ , italic_r end_POSTSUPERSCRIPT , italic_P italic_o italic_W italic_L italic_S , italic_C italic_R }

Hence, PA={PA1,PA2,,PAα},0αρα+formulae-sequence𝑃𝐴𝑃subscript𝐴1𝑃subscript𝐴2𝑃subscript𝐴𝛼0𝛼𝜌𝛼superscriptPA=\{PA_{1},PA_{2},\cdots,PA_{\alpha}\},0\leq\alpha\leq\rho\cap\alpha\in% \mathbb{Z}^{+}italic_P italic_A = { italic_P italic_A start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_P italic_A start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , ⋯ , italic_P italic_A start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT } , 0 ≤ italic_α ≤ italic_ρ ∩ italic_α ∈ blackboard_Z start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT, represents the set of global model aggregation packaging nodes, where α𝛼\alphaitalic_α represents PA𝑃𝐴PAitalic_P italic_A number and +superscript\mathbb{Z}^{+}blackboard_Z start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT represents the set of positive integers. The PA𝑃𝐴PAitalic_P italic_A nodes are responsible for aggregating the local model parameters (LM𝐿𝑀LMitalic_L italic_M) to global model (GM𝐺𝑀GMitalic_G italic_M) in federated learning and packaging transactions into blockchain.

LT={LT1,LT2,,LTβ},0βρβ+formulae-sequence𝐿𝑇𝐿subscript𝑇1𝐿subscript𝑇2𝐿subscript𝑇𝛽0𝛽𝜌𝛽superscriptLT=\{LT_{1},LT_{2},\cdots,LT_{\beta}\},0\leq\beta\leq\rho\cap\beta\in\mathbb{Z% }^{+}italic_L italic_T = { italic_L italic_T start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_L italic_T start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , ⋯ , italic_L italic_T start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT } , 0 ≤ italic_β ≤ italic_ρ ∩ italic_β ∈ blackboard_Z start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT, represents the set of local training nodes, where β𝛽\betaitalic_β represents the LT𝐿𝑇LTitalic_L italic_T nodes number. The LT𝐿𝑇LTitalic_L italic_T nodes have their own data sets.

BP={BP1,BP2,,BPγ},0γργ+formulae-sequence𝐵𝑃𝐵subscript𝑃1𝐵subscript𝑃2𝐵subscript𝑃𝛾0𝛾𝜌𝛾superscriptBP=\{BP_{1},BP_{2},\cdots,BP_{\gamma}\},0\leq\gamma\leq\rho\cap\gamma\in% \mathbb{Z}^{+}italic_B italic_P = { italic_B italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_B italic_P start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , ⋯ , italic_B italic_P start_POSTSUBSCRIPT italic_γ end_POSTSUBSCRIPT } , 0 ≤ italic_γ ≤ italic_ρ ∩ italic_γ ∈ blackboard_Z start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT, represents the blockchain propagation nodes, where γ𝛾\gammaitalic_γ represents BP𝐵𝑃BPitalic_B italic_P nodes number. The blockchain propagation nodes do not participate in the federated learning training process but only propagation blocks.

PLΔ,e={PL1,e,PL2,e,,PLβ,e},1Δβformulae-sequencesuperscriptsubscript𝑃𝐿Δ𝑒superscriptsubscript𝑃𝐿1𝑒superscriptsubscript𝑃𝐿2𝑒superscriptsubscript𝑃𝐿𝛽𝑒1Δ𝛽P_{L}^{\Delta,e}=\{P_{L}^{1,e},P_{L}^{2,e},\cdots,P_{L}^{\beta,e}\},1\leq% \Delta\leq\betaitalic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Δ , italic_e end_POSTSUPERSCRIPT = { italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 , italic_e end_POSTSUPERSCRIPT , italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 , italic_e end_POSTSUPERSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β , italic_e end_POSTSUPERSCRIPT } , 1 ≤ roman_Δ ≤ italic_β, is local model set, where ΔΔ\Deltaroman_Δ represents the node number, e𝑒eitalic_e represents the local parameter update round, PLΔ,esuperscriptsubscript𝑃𝐿Δ𝑒P_{L}^{\Delta,e}italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Δ , italic_e end_POSTSUPERSCRIPT is LM𝐿𝑀LMitalic_L italic_M generated by the LTΔ𝐿subscript𝑇ΔLT_{\Delta}italic_L italic_T start_POSTSUBSCRIPT roman_Δ end_POSTSUBSCRIPT in round e𝑒eitalic_e, and will be sent to PA𝑃𝐴PAitalic_P italic_A for aggregation.

PGΓ,r={PG1,r,PG2,r,,PGβ,r},1Γβformulae-sequencesuperscriptsubscript𝑃𝐺Γ𝑟superscriptsubscript𝑃𝐺1𝑟superscriptsubscript𝑃𝐺2𝑟superscriptsubscript𝑃𝐺𝛽𝑟1Γ𝛽P_{G}^{\Gamma,r}=\{P_{G}^{1,r},P_{G}^{2,r},\cdots,P_{G}^{\beta,r}\},1\leq% \Gamma\leq\betaitalic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Γ , italic_r end_POSTSUPERSCRIPT = { italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 , italic_r end_POSTSUPERSCRIPT , italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 , italic_r end_POSTSUPERSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β , italic_r end_POSTSUPERSCRIPT } , 1 ≤ roman_Γ ≤ italic_β, is global model set, where G𝐺Gitalic_G represents GM𝐺𝑀GMitalic_G italic_M, where ΓΓ\Gammaroman_Γ represents the PA𝑃𝐴PAitalic_P italic_A who aggregated the global model, and r𝑟ritalic_r represents the global parameter update round. The unified GM𝐺𝑀GMitalic_G italic_M is obtained by aggregating local parameters.

PoWLS𝑃𝑜𝑊𝐿𝑆PoWLSitalic_P italic_o italic_W italic_L italic_S represents Proof of Weighted Link Speed consensus algorithm, which comprehensively consider nodes’ link speed and transmission delay in the blockchain network to obtain a weighted value, as the basis for selecting nodes to be PA𝑃𝐴PAitalic_P italic_A, improve the communication efficiency in the FBChain.

CR={CR1,CR2,,CRζ},ζ+formulae-sequence𝐶𝑅𝐶subscript𝑅1𝐶subscript𝑅2𝐶subscript𝑅𝜁𝜁superscriptCR=\{CR_{1},CR_{2},\ldots,CR_{\zeta}\},\zeta\in\mathbb{Z}^{+}italic_C italic_R = { italic_C italic_R start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_C italic_R start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , … , italic_C italic_R start_POSTSUBSCRIPT italic_ζ end_POSTSUBSCRIPT } , italic_ζ ∈ blackboard_Z start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT represents nodes’ credit score, where ζ𝜁\zetaitalic_ζ represents the node number. In the model, the credit score evaluates the node’s performance in the federated learning training process. The higher the credit score, the better the node’s local model performance in the global model aggregation process.

The model architecture diagram is shown in Figure 1.

Refer to caption
Figure 1: FBChain Model Architecture
Table 1: List of Notations
Notations Descriptions
ρ𝜌\rhoitalic_ρ total nodes number
BKe𝐵subscript𝐾𝑒BK_{e}italic_B italic_K start_POSTSUBSCRIPT italic_e end_POSTSUBSCRIPT the e𝑒eitalic_eth block
𝔸𝕊𝔸𝕊\mathbb{HASH}blackboard_H blackboard_A blackboard_S blackboard_H the hash value
PL,updateδ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒P_{L,update}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT the update local model in e𝑒eitalic_e round of local training node δ𝛿\deltaitalic_δ after training
Trans(𝔸𝕊PL,updateδ,e)𝑇𝑟𝑎𝑛𝑠𝔸𝕊subscriptsuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒Trans(\mathbb{HASH}_{P_{L,update}^{\delta,e}})italic_T italic_r italic_a italic_n italic_s ( blackboard_H blackboard_A blackboard_S blackboard_H start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ) transaction contains PL,updateδ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒P_{L,update}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT hash value
SELPL,updateδ,e𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒SEL_{P_{L,update}^{\delta,e}}italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT serialized data of PL,updateδ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒P_{L,update}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT
CMPS(SELPL,updateδ,e)𝐶𝑀𝑃𝑆𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒CMPS(SEL_{P_{L,update}^{\delta,e}})italic_C italic_M italic_P italic_S ( italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ) compressed data of SELPL,updateδ,e𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒SEL_{P_{L,update}^{\delta,e}}italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT
SEC|KEYLTδeconditional𝑆𝐸𝐶𝐾𝐸superscriptsubscript𝑌𝐿subscript𝑇𝛿𝑒SEC|KEY_{LT_{\delta}}^{e}italic_S italic_E italic_C | italic_K italic_E italic_Y start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT’s symmetric encryption key in round e𝑒eitalic_e
SECCMPSPL,updateδ,e𝑆𝐸superscriptsubscript𝐶𝐶𝑀𝑃𝑆superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒SEC_{CMPS}^{P_{L,update}^{\delta,e}}italic_S italic_E italic_C start_POSTSUBSCRIPT italic_C italic_M italic_P italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT symmetric encrypted compressed LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT’s update local model
Sy_ENC𝑆𝑦_𝐸𝑁𝐶Sy\_ENCitalic_S italic_y _ italic_E italic_N italic_C symmetric encryption algorithm
𝕂PALιsuperscriptsubscript𝕂𝑃𝐴𝐿𝜄\mathbb{PK}_{PAL}^{\iota}blackboard_P blackboard_K start_POSTSUBSCRIPT italic_P italic_A italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ι end_POSTSUPERSCRIPT ι𝜄\iotaitalic_ιth PA𝑃𝐴PAitalic_P italic_A’s public key in package nodes list of current round
𝕊𝕂PALι𝕊superscriptsubscript𝕂𝑃𝐴𝐿𝜄\mathbb{SK}_{PAL}^{\iota}blackboard_S blackboard_K start_POSTSUBSCRIPT italic_P italic_A italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ι end_POSTSUPERSCRIPT ι𝜄\iotaitalic_ιth PA𝑃𝐴PAitalic_P italic_A’s private key in package nodes list of current round
As_ENC𝐴𝑠_𝐸𝑁𝐶As\_ENCitalic_A italic_s _ italic_E italic_N italic_C asymmetric encryption algorithm

4.1 Model process

In the FBChain model, we use blockchain to store GM𝐺𝑀GMitalic_G italic_M, and the hash values of LM𝐿𝑀LMitalic_L italic_M, the r𝑟ritalic_r round block is 𝔹𝕂r𝔹subscript𝕂𝑟\mathbb{BK}_{r}blackboard_B blackboard_K start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT, LT𝐿𝑇LTitalic_L italic_T get 𝔹𝕂r𝔹subscript𝕂𝑟\mathbb{BK}_{r}blackboard_B blackboard_K start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT to continue next step training. During model aggregation, PA𝑃𝐴PAitalic_P italic_A receives PLδ,esuperscriptsubscript𝑃𝐿𝛿𝑒P_{L}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT directly from LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT. Before transmitting PLδ,esuperscriptsubscript𝑃𝐿𝛿𝑒P_{L}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT to PA𝑃𝐴PAitalic_P italic_A, LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT stores its hash value on the blockchain and compresses PLδ,esuperscriptsubscript𝑃𝐿𝛿𝑒P_{L}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT into a compressed file. This file is then encrypted symmetrically, and the encryption key is encrypted asymmetrically using PA𝑃𝐴PAitalic_P italic_A’s public key to prevent tampering during transmission. Once PA𝑃𝐴PAitalic_P italic_A receives the encrypted data, it decrypts the symmetric encryption key using its private key and then decrypts the data itself. The resulting local model compared to the hash value stored on the blockchain to ensure that the model wasn’t tampered with. If the hash values match, it means that PLδ,esuperscriptsubscript𝑃𝐿𝛿𝑒P_{L}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT was transmitted without tampering, ensuring consistency and tamper resistance during data transmission. We introduce the credit score in FBChain, where nodes with poor local model training results will have their credit scores deducted, and credit scores less than a threshold will limit how often the node participates in global model aggregation. The process of the FBChain model is as follows:

Initialize Local Model. Utilize the PoWLS𝑃𝑜𝑊𝐿𝑆PoWLSitalic_P italic_o italic_W italic_L italic_S consensus algorithm to choose α𝛼\alphaitalic_α nodes, excluding the LT𝐿𝑇LTitalic_L italic_T node, from the blockchain network, considering their weighted link speeds. These selected nodes form the package nodes list (PAL𝑃𝐴𝐿PALitalic_P italic_A italic_L). LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT, δ[1,β]𝛿1𝛽\delta\in[1,\beta]italic_δ ∈ [ 1 , italic_β ] in blockchain network will initialize LM𝐿𝑀LMitalic_L italic_M by model weight random generation, PLδ,1=Random(GMstructure)superscriptsubscript𝑃𝐿𝛿1𝑅𝑎𝑛𝑑𝑜𝑚𝐺subscript𝑀𝑠𝑡𝑟𝑢𝑐𝑡𝑢𝑟𝑒P_{L}^{\delta,1}=Random(GM_{structure})italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , 1 end_POSTSUPERSCRIPT = italic_R italic_a italic_n italic_d italic_o italic_m ( italic_G italic_M start_POSTSUBSCRIPT italic_s italic_t italic_r italic_u italic_c italic_t italic_u italic_r italic_e end_POSTSUBSCRIPT ), where GMstructure𝐺subscript𝑀𝑠𝑡𝑟𝑢𝑐𝑡𝑢𝑟𝑒GM_{structure}italic_G italic_M start_POSTSUBSCRIPT italic_s italic_t italic_r italic_u italic_c italic_t italic_u italic_r italic_e end_POSTSUBSCRIPT is global model structure.

Process Updated Local Model. After η𝜂\etaitalic_η epochs of local training, LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT obtains a locally updated model, denoted as PL,updateδ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒P_{L,update}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT. LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT then calculates the hash value of PL,updateδ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒P_{L,update}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT, denoted as 𝔸𝕊PL,updateδ,e𝔸𝕊subscriptsuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒\mathbb{HASH}_{P_{L,update}^{\delta,e}}blackboard_H blackboard_A blackboard_S blackboard_H start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT, and adds it to a transaction, denoted as Trans(𝔸𝕊PL,updateδ,e)𝑇𝑟𝑎𝑛𝑠𝔸𝕊subscriptsuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒Trans(\mathbb{HASH}_{P_{L,update}^{\delta,e}})italic_T italic_r italic_a italic_n italic_s ( blackboard_H blackboard_A blackboard_S blackboard_H start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ). The transaction is broadcast on the blockchain network.

LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT serializes and transforms PL,updateδ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒P_{L,update}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT into a serialized data format, denoted as SELPL,updateδ,e𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒SEL_{P_{L,update}^{\delta,e}}italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT, and compresses it to reduce the communication data size. The compressed serialized data is denoted as CMPS(SELPL,updateδ,e)𝐶𝑀𝑃𝑆𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒CMPS(SEL_{P_{L,update}^{\delta,e}})italic_C italic_M italic_P italic_S ( italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ). LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT then initializes a symmetric encryption key, denoted as SEC|KEYLTδeconditional𝑆𝐸𝐶𝐾𝐸superscriptsubscript𝑌𝐿subscript𝑇𝛿𝑒SEC|KEY_{LT_{\delta}}^{e}italic_S italic_E italic_C | italic_K italic_E italic_Y start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT, which is LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT’s symmetric encryption key in round e𝑒eitalic_e. LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT encrypts CMPS(SELPL,updateδ,e)𝐶𝑀𝑃𝑆𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒CMPS(SEL_{P_{L,update}^{\delta,e}})italic_C italic_M italic_P italic_S ( italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ) with SEC|KEYLTδeconditional𝑆𝐸𝐶𝐾𝐸superscriptsubscript𝑌𝐿subscript𝑇𝛿𝑒SEC|KEY_{LT_{\delta}}^{e}italic_S italic_E italic_C | italic_K italic_E italic_Y start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT using a symmetric encryption algorithm, denoted as Sy_ENC𝑆𝑦_𝐸𝑁𝐶Sy\_ENCitalic_S italic_y _ italic_E italic_N italic_C, to obtain a symmetrically encrypted compressed model, denoted as SECCMPSPL,updateδ,e𝑆𝐸superscriptsubscript𝐶𝐶𝑀𝑃𝑆superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒SEC_{CMPS}^{P_{L,update}^{\delta,e}}italic_S italic_E italic_C start_POSTSUBSCRIPT italic_C italic_M italic_P italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT.

As SEC|KEYLTδeconditional𝑆𝐸𝐶𝐾𝐸superscriptsubscript𝑌𝐿subscript𝑇𝛿𝑒SEC|KEY_{LT_{\delta}}^{e}italic_S italic_E italic_C | italic_K italic_E italic_Y start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT is important, LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT performs asymmetric encryption on it using PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT’s asymmetric encryption public key, denoted as 𝕂PALιsuperscriptsubscript𝕂𝑃𝐴𝐿𝜄\mathbb{PK}_{PAL}^{\iota}blackboard_P blackboard_K start_POSTSUBSCRIPT italic_P italic_A italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ι end_POSTSUPERSCRIPT. The asymmetrically encrypted symmetric encryption key is denoted as AECSEC|KEYLTδe=As_ENC(SEC|KEYLTδe,𝕂PALι)𝐴𝐸superscriptsubscript𝐶conditional𝑆𝐸𝐶𝐾𝐸𝑌𝐿superscriptsubscript𝑇𝛿𝑒𝐴𝑠_𝐸𝑁𝐶conditional𝑆𝐸𝐶𝐾𝐸subscript𝑌𝐿superscriptsubscript𝑇𝛿𝑒superscriptsubscript𝕂𝑃𝐴𝐿𝜄AEC_{SEC|KEY}^{LT_{\delta}^{e}}=As\_ENC(SEC|KEY_{LT_{\delta}^{e}},\mathbb{PK}_% {PAL}^{\iota})italic_A italic_E italic_C start_POSTSUBSCRIPT italic_S italic_E italic_C | italic_K italic_E italic_Y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT = italic_A italic_s _ italic_E italic_N italic_C ( italic_S italic_E italic_C | italic_K italic_E italic_Y start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT , blackboard_P blackboard_K start_POSTSUBSCRIPT italic_P italic_A italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ι end_POSTSUPERSCRIPT ), where As_ENC𝐴𝑠_𝐸𝑁𝐶As\_ENCitalic_A italic_s _ italic_E italic_N italic_C is an asymmetric encryption algorithm.

By storing only the hash value of local models on the blockchain, we can reduce the storage space and block size required. This approach can help reduce block propagation delays and ensure the integrity and confidentiality of local models during transmission.

Local Model transmission. In FBChain, we use the credit score CR𝐶𝑅CRitalic_C italic_R to assess the performance of nodes, and set a threshold CRTH𝐶subscript𝑅𝑇𝐻CR_{TH}italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT for local model transmission from nodes to PA𝑃𝐴PAitalic_P italic_A, limiting nodes with poor CR𝐶𝑅CRitalic_C italic_R communication time. This helps to reduce the communication of models with poor performance and improve communication efficiency.

Before transmitting the local updated model PL,updateδ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒P_{L,update}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT to PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT in round e𝑒eitalic_e, FBChain checks LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT’s CR𝐶𝑅CRitalic_C italic_R, denoted as CRδ𝐶subscript𝑅𝛿CR_{\delta}italic_C italic_R start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT. If CRδ𝐶subscript𝑅𝛿CR_{\delta}italic_C italic_R start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT meets the threshold requirement (CRδCRTH𝐶subscript𝑅𝛿𝐶subscript𝑅𝑇𝐻CR_{\delta}\geq CR_{TH}italic_C italic_R start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT ≥ italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT), LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT can transmit PLδ,esuperscriptsubscript𝑃𝐿𝛿𝑒P_{L}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT to PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT without limitation. Otherwise, if CRδ𝐶subscript𝑅𝛿CR_{\delta}italic_C italic_R start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT is lower than CRTH𝐶subscript𝑅𝑇𝐻CR_{TH}italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT, LTδ𝐿subscript𝑇𝛿LT_{\delta}italic_L italic_T start_POSTSUBSCRIPT italic_δ end_POSTSUBSCRIPT is limited to transmitting PLδ,esuperscriptsubscript𝑃𝐿𝛿𝑒P_{L}^{\delta,e}italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT to PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT only once every κ𝜅\kappaitalic_κ rounds.

Assuming that there are λ𝜆\lambdaitalic_λ nodes (LT𝐿𝑇LTitalic_L italic_T) that can transmit to PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT, LTμ𝐿subscript𝑇𝜇LT_{\mu}italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT, where μ[0,λ]𝜇0𝜆\mu\in[0,\lambda]italic_μ ∈ [ 0 , italic_λ ], transmits an asymmetrically encrypted symmetric encryption key , AECSEC|KEYLTμe𝐴𝐸superscriptsubscript𝐶conditional𝑆𝐸𝐶𝐾𝐸𝑌𝐿superscriptsubscript𝑇𝜇𝑒AEC_{SEC|KEY}^{LT_{\mu}^{e}}italic_A italic_E italic_C start_POSTSUBSCRIPT italic_S italic_E italic_C | italic_K italic_E italic_Y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT, a compressed and symmetrically encrypted local updated model, SECCMPSPL,updateμ,e𝑆𝐸superscriptsubscript𝐶𝐶𝑀𝑃𝑆superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒SEC_{CMPS}^{P_{L,update}^{\mu,e}}italic_S italic_E italic_C start_POSTSUBSCRIPT italic_C italic_M italic_P italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT, and a nonce of symmetric encryption, Sy_ENCLTμnonce𝑆𝑦_𝐸𝑁superscriptsubscript𝐶𝐿subscript𝑇𝜇𝑛𝑜𝑛𝑐𝑒Sy\_ENC_{LT_{\mu}}^{nonce}italic_S italic_y _ italic_E italic_N italic_C start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n italic_o italic_n italic_c italic_e end_POSTSUPERSCRIPT, which is a unique random number used during symmetric encryption.

PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT performs asymmetric decryption on AECSEC|KEYLTμe𝐴𝐸superscriptsubscript𝐶conditional𝑆𝐸𝐶𝐾𝐸𝑌𝐿superscriptsubscript𝑇𝜇𝑒AEC_{SEC|KEY}^{LT_{\mu}^{e}}italic_A italic_E italic_C start_POSTSUBSCRIPT italic_S italic_E italic_C | italic_K italic_E italic_Y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT using its private key (𝕊𝕂PALι𝕊superscriptsubscript𝕂𝑃𝐴𝐿𝜄\mathbb{SK}_{PAL}^{\iota}blackboard_S blackboard_K start_POSTSUBSCRIPT italic_P italic_A italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ι end_POSTSUPERSCRIPT) to obtain the symmetric encryption key of LTμ𝐿subscript𝑇𝜇LT_{\mu}italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT in round e𝑒eitalic_e . PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT then performs symmetric decryption on SECCMPSPL,updateμ,e𝑆𝐸superscriptsubscript𝐶𝐶𝑀𝑃𝑆superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒SEC_{CMPS}^{P_{L,update}^{\mu,e}}italic_S italic_E italic_C start_POSTSUBSCRIPT italic_C italic_M italic_P italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT using SEC|KEYLTμeconditional𝑆𝐸𝐶𝐾𝐸subscript𝑌𝐿superscriptsubscript𝑇𝜇𝑒SEC|KEY_{LT_{\mu}^{e}}italic_S italic_E italic_C | italic_K italic_E italic_Y start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT and Sy_ENCLTμnonce𝑆𝑦_𝐸𝑁superscriptsubscript𝐶𝐿subscript𝑇𝜇𝑛𝑜𝑛𝑐𝑒Sy\_ENC_{LT_{\mu}}^{nonce}italic_S italic_y _ italic_E italic_N italic_C start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n italic_o italic_n italic_c italic_e end_POSTSUPERSCRIPT to obtain the compressed serialized PL,updateμ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒P_{L,update}^{\mu,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT, CMPS(SELPL,updateμ,e)=Sy_DEC(SECCMPSPL,updateμ,e,SEC|KEYLTμe,Sy_ENCLTμnonce).𝐶𝑀𝑃𝑆𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒𝑆𝑦_𝐷𝐸𝐶𝑆𝐸superscriptsubscript𝐶𝐶𝑀𝑃𝑆superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒conditional𝑆𝐸𝐶𝐾𝐸superscriptsubscript𝑌𝐿subscript𝑇𝜇𝑒𝑆𝑦_𝐸𝑁superscriptsubscript𝐶𝐿subscript𝑇𝜇𝑛𝑜𝑛𝑐𝑒CMPS(SEL_{P_{L,update}^{\mu,e}})=Sy\_DEC(SEC_{CMPS}^{P_{L,update}^{\mu,e}},SEC% |KEY_{LT_{\mu}}^{e},Sy\_ENC_{LT_{\mu}}^{nonce}).italic_C italic_M italic_P italic_S ( italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ) = italic_S italic_y _ italic_D italic_E italic_C ( italic_S italic_E italic_C start_POSTSUBSCRIPT italic_C italic_M italic_P italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT , italic_S italic_E italic_C | italic_K italic_E italic_Y start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e end_POSTSUPERSCRIPT , italic_S italic_y _ italic_E italic_N italic_C start_POSTSUBSCRIPT italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n italic_o italic_n italic_c italic_e end_POSTSUPERSCRIPT ) . After decompressing CMPS(SELPL,updateμ,e)𝐶𝑀𝑃𝑆𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒CMPS(SEL_{P_{L,update}^{\mu,e}})italic_C italic_M italic_P italic_S ( italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ), we obtain the serialized PL,updateμ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒P_{L,update}^{\mu,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT, SELPL,updateμ,e=Decompress(CMPS(SELPL,updateμ,e))𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒𝐷𝑒𝑐𝑜𝑚𝑝𝑟𝑒𝑠𝑠𝐶𝑀𝑃𝑆𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒SEL_{P_{L,update}^{\mu,e}}=Decompress(CMPS(SEL_{P_{L,update}^{\mu,e}}))italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT = italic_D italic_e italic_c italic_o italic_m italic_p italic_r italic_e italic_s italic_s ( italic_C italic_M italic_P italic_S ( italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ) ) , which can be loaded to obtain the original PL,updateμ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒P_{L,update}^{\mu,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT, PL,updateμ,e=Deserialize(SELPL,updateμ,e)superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒𝐷𝑒𝑠𝑒𝑟𝑖𝑎𝑙𝑖𝑧𝑒𝑆𝐸subscript𝐿superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒P_{L,update}^{\mu,e}=Deserialize(SEL_{P_{L,update}^{\mu,e}})italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT = italic_D italic_e italic_s italic_e italic_r italic_i italic_a italic_l italic_i italic_z italic_e ( italic_S italic_E italic_L start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT )

Local Model Verify and Global Model Aggregate. After receiving the locally updated model PL,updateμ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒P_{L,update}^{\mu,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT from LTμ𝐿subscript𝑇𝜇LT_{\mu}italic_L italic_T start_POSTSUBSCRIPT italic_μ end_POSTSUBSCRIPT, PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT checks if its hash value equals 𝔸𝕊PL,updateδ,e𝔸𝕊subscriptsuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒\mathbb{HASH}_{P_{L,update}^{\delta,e}}blackboard_H blackboard_A blackboard_S blackboard_H start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT in Trans(𝔸𝕊PL,updateδ,e)(μ=δ)𝑇𝑟𝑎𝑛𝑠𝔸𝕊subscriptsuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒𝜇𝛿Trans(\mathbb{HASH}_{P_{L,update}^{\delta,e}})(\mu=\delta)italic_T italic_r italic_a italic_n italic_s ( blackboard_H blackboard_A blackboard_S blackboard_H start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ) ( italic_μ = italic_δ ). If the hash value matches, it indicates that the model has not been tampered with during transmission.

Using the untampered PL,updateμ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒P_{L,update}^{\mu,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT, PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT performs an accuracy verification on a self-test dataset. If the test accuracy in PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT is greater than PGϵ,e1superscriptsubscript𝑃𝐺italic-ϵ𝑒1P_{G}^{\epsilon,{e-1}}italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ϵ , italic_e - 1 end_POSTSUPERSCRIPT or within a certain threshold Accthreshold𝐴𝑐subscript𝑐𝑡𝑟𝑒𝑠𝑜𝑙𝑑Acc_{threshold}italic_A italic_c italic_c start_POSTSUBSCRIPT italic_t italic_h italic_r italic_e italic_s italic_h italic_o italic_l italic_d end_POSTSUBSCRIPT, PL,updateμ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒P_{L,update}^{\mu,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT can be added to the available local model update group, ALMG𝐴𝐿𝑀𝐺ALMGitalic_A italic_L italic_M italic_G. Otherwise, if the test accuracy of PL,updateμ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒P_{L,update}^{\mu,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT in PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT is lower than the accuracy of PGϵ,e1superscriptsubscript𝑃𝐺italic-ϵ𝑒1P_{G}^{\epsilon,{e-1}}italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ϵ , italic_e - 1 end_POSTSUPERSCRIPT minus Accthreshold𝐴𝑐subscript𝑐𝑡𝑟𝑒𝑠𝑜𝑙𝑑Acc_{threshold}italic_A italic_c italic_c start_POSTSUBSCRIPT italic_t italic_h italic_r italic_e italic_s italic_h italic_o italic_l italic_d end_POSTSUBSCRIPT, PL,updateμ,esuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜇𝑒P_{L,update}^{\mu,e}italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_μ , italic_e end_POSTSUPERSCRIPT is added to the unavailable local model update group, ULMG𝑈𝐿𝑀𝐺ULMGitalic_U italic_L italic_M italic_G.

Finally, PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT aggregates the locally updated models received from LT𝐿𝑇LTitalic_L italic_T to obtain the global model PGι,e=ω=1β(PL,updateω,e)/βsuperscriptsubscript𝑃𝐺𝜄𝑒superscriptsubscript𝜔1𝛽superscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝜔𝑒𝛽P_{G}^{\iota,{e}}=\sum_{\omega=1}^{\beta}(P_{L,update}^{\omega,e})/{\beta}italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ι , italic_e end_POSTSUPERSCRIPT = ∑ start_POSTSUBSCRIPT italic_ω = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT ( italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ω , italic_e end_POSTSUPERSCRIPT ) / italic_β.

Block Package. After aggregating the local updated models and verifying their accuracy, PALι𝑃𝐴subscript𝐿𝜄PAL_{\iota}italic_P italic_A italic_L start_POSTSUBSCRIPT italic_ι end_POSTSUBSCRIPT packages the transaction of local model hash value Trans(𝔸𝕊PL,updateδ,e)𝑇𝑟𝑎𝑛𝑠𝔸𝕊subscriptsuperscriptsubscript𝑃𝐿𝑢𝑝𝑑𝑎𝑡𝑒𝛿𝑒Trans(\mathbb{HASH}_{P_{L,update}^{\delta,e}})italic_T italic_r italic_a italic_n italic_s ( blackboard_H blackboard_A blackboard_S blackboard_H start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_L , italic_u italic_p italic_d italic_a italic_t italic_e end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_δ , italic_e end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ) and the aggregated global model PGι,esuperscriptsubscript𝑃𝐺𝜄𝑒P_{G}^{\iota,{e}}italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ι , italic_e end_POSTSUPERSCRIPT into a block BKe𝐵subscript𝐾𝑒BK_{e}italic_B italic_K start_POSTSUBSCRIPT italic_e end_POSTSUBSCRIPT, which is then broadcasted to LT𝐿𝑇LTitalic_L italic_T and BP𝐵𝑃BPitalic_B italic_P. LT𝐿𝑇LTitalic_L italic_T retrieves PGι,esuperscriptsubscript𝑃𝐺𝜄𝑒P_{G}^{\iota,e}italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ι , italic_e end_POSTSUPERSCRIPT from BKe𝐵subscript𝐾𝑒BK_{e}italic_B italic_K start_POSTSUBSCRIPT italic_e end_POSTSUBSCRIPT, and performs the next round of local updates based on PGι,esuperscriptsubscript𝑃𝐺𝜄𝑒P_{G}^{\iota,e}italic_P start_POSTSUBSCRIPT italic_G end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ι , italic_e end_POSTSUPERSCRIPT until the training round limit is reached or the expected results are achieved.

4.2 Proof of Weighted Link Speed Consensus Algorithm

In the FBChain model, we introduce a consensus algorithm called Proof of Weighted Link Speed (PoWLS). PoWLS takes into account the weighted value of nodes when selecting package nodes. For each node Nodeψ,0ψρ𝑁𝑜𝑑subscript𝑒𝜓0𝜓𝜌Node_{\psi},0\leq\psi\leq\rhoitalic_N italic_o italic_d italic_e start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT , 0 ≤ italic_ψ ≤ italic_ρ, we calculate weighted value, WV𝑊𝑉WVitalic_W italic_V, based on the node’s link speed, Dψsubscript𝐷𝜓D_{\psi}italic_D start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT, and transmission delay, TDψ𝑇subscript𝐷𝜓TD_{\psi}italic_T italic_D start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT. Nodes with higher WV𝑊𝑉WVitalic_W italic_V are more likely to be selected as PA𝑃𝐴PAitalic_P italic_A. By comprehensively considering the network conditions of nodes and selecting nodes with better network conditions and high transmission efficiency, PoWLS improves the efficiency of parameter network transmission in federated learning.

The consensus algorithm process is as follows:

Weighted Link Speed Calculate. Calculate the WV𝑊𝑉WVitalic_W italic_V of Nodeψ𝑁𝑜𝑑subscript𝑒𝜓Node_{\psi}italic_N italic_o italic_d italic_e start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT based on Equation 1 in the blockchain network except for the local training node, and sort them in descending order.

WVψ=υ×Dψ+ϕ×(1/TDψ)𝑊subscript𝑉𝜓𝜐subscript𝐷𝜓italic-ϕ1𝑇subscript𝐷𝜓\displaystyle WV_{\psi}=\upsilon\times D_{\psi}+\phi\times(1/TD_{\psi})italic_W italic_V start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT = italic_υ × italic_D start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT + italic_ϕ × ( 1 / italic_T italic_D start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT ) (1)

Among them, υ𝜐\upsilonitalic_υ, ϕitalic-ϕ\phiitalic_ϕ represent the weights of Nodeψ𝑁𝑜𝑑subscript𝑒𝜓Node_{\psi}italic_N italic_o italic_d italic_e start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT’s D,TD𝐷𝑇𝐷D,TDitalic_D , italic_T italic_D respectively.

Choose Global Model Aggregation Packaging Nodes. Select the top τ𝜏\tauitalic_τ nodes with high WV𝑊𝑉WVitalic_W italic_V to enter PAL𝑃𝐴𝐿PALitalic_P italic_A italic_L, and nodes in PAL𝑃𝐴𝐿PALitalic_P italic_A italic_L are PA𝑃𝐴PAitalic_P italic_A. PA𝑃𝐴PAitalic_P italic_A will broadcast transactions received between PAL𝑃𝐴𝐿PALitalic_P italic_A italic_L, and aggregate global model separately, the PA𝑃𝐴PAitalic_P italic_A with highest WV𝑊𝑉WVitalic_W italic_V will add its packaged block into blockchain.

WV1WV2WVτ1𝑊subscript𝑉1𝑊subscript𝑉2𝑊subscript𝑉𝜏1\displaystyle WV_{1}\geq WV_{2}\geq\ldots\geq WV_{\tau-1}italic_W italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ≥ italic_W italic_V start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ≥ … ≥ italic_W italic_V start_POSTSUBSCRIPT italic_τ - 1 end_POSTSUBSCRIPT
WVτWVτ+1WVηabsent𝑊subscript𝑉𝜏𝑊subscript𝑉𝜏1𝑊subscript𝑉𝜂\displaystyle\geq WV_{\tau}\geq WV_{\tau+1}\geq\ldots\geq WV_{\eta}≥ italic_W italic_V start_POSTSUBSCRIPT italic_τ end_POSTSUBSCRIPT ≥ italic_W italic_V start_POSTSUBSCRIPT italic_τ + 1 end_POSTSUBSCRIPT ≥ … ≥ italic_W italic_V start_POSTSUBSCRIPT italic_η end_POSTSUBSCRIPT

If the WV𝑊𝑉WVitalic_W italic_V of the τ𝜏\tauitalic_τth and (τ+1)𝜏1(\tau+1)( italic_τ + 1 )th nodes are equal, and only the first τ𝜏\tauitalic_τ nodes are selected to enter PAL𝑃𝐴𝐿PALitalic_P italic_A italic_L, the nodes are chosen to join the packaging queue in order of priority based on their D𝐷Ditalic_D, TD𝑇𝐷TDitalic_T italic_D.

Package Blocks. For the local update models from LT𝐿𝑇LTitalic_L italic_T, the PA𝑃𝐴PAitalic_P italic_A in PAL𝑃𝐴𝐿PALitalic_P italic_A italic_L take turns aggregating these models. After aggregation, GM𝐺𝑀GMitalic_G italic_M will be packaged into a transaction and added to the block with other transactions in the blockchain network during this period.

Credit Score and Token Reward. Nodes in the blockchain network receive CR𝐶𝑅CRitalic_C italic_R and token rewards based on their performance. LT𝐿𝑇LTitalic_L italic_T nodes in the active local model group (ALMG) are rewarded with CRr𝐶superscript𝑅𝑟CR^{r}italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT while LT𝐿𝑇LTitalic_L italic_T nodes in the unselected local model group (ULMG) are punished with CRp𝐶superscript𝑅𝑝CR^{p}italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT, where CRr𝐶superscript𝑅𝑟CR^{r}italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT and CRp𝐶superscript𝑅𝑝CR^{p}italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT are positive and negative real numbers, respectively. Token rewards, denoted as TR𝑇𝑅TRitalic_T italic_R, are distributed to nodes based on the contribution of their local model to the global model. The total token reward for each round of federated learning is fixed and LTψ𝐿subscript𝑇𝜓LT_{\psi}italic_L italic_T start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT splits it with other LT𝐿𝑇LTitalic_L italic_T nodes. If PLψ,esuperscriptsubscript𝑃𝐿𝜓𝑒P_{L}^{\psi,e}italic_P start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_ψ , italic_e end_POSTSUPERSCRIPT performs better than other local models, LTψ𝐿subscript𝑇𝜓LT_{\psi}italic_L italic_T start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT receives a larger share of the token reward, denoted as TRψ𝑇subscript𝑅𝜓TR_{\psi}italic_T italic_R start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT, which is calculated using Equation 2.

TRψ=𝑇subscript𝑅𝜓absent\displaystyle TR_{\psi}=italic_T italic_R start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT = (2)
(EXψ+Accthreshold)/i=1β((EXi+Accthreshold))TRtotal𝐸subscript𝑋𝜓𝐴𝑐subscript𝑐𝑡𝑟𝑒𝑠𝑜𝑙𝑑superscriptsubscript𝑖1𝛽𝐸subscript𝑋𝑖𝐴𝑐subscript𝑐𝑡𝑟𝑒𝑠𝑜𝑙𝑑𝑇subscript𝑅𝑡𝑜𝑡𝑎𝑙\displaystyle(EX_{\psi}+Acc_{threshold})/\sum_{i=1}^{\beta}((EX_{i}+Acc_{% threshold}))*TR_{total}( italic_E italic_X start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT + italic_A italic_c italic_c start_POSTSUBSCRIPT italic_t italic_h italic_r italic_e italic_s italic_h italic_o italic_l italic_d end_POSTSUBSCRIPT ) / ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT ( ( italic_E italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_A italic_c italic_c start_POSTSUBSCRIPT italic_t italic_h italic_r italic_e italic_s italic_h italic_o italic_l italic_d end_POSTSUBSCRIPT ) ) ∗ italic_T italic_R start_POSTSUBSCRIPT italic_t italic_o italic_t italic_a italic_l end_POSTSUBSCRIPT

Hence, EXψ𝐸subscript𝑋𝜓EX_{\psi}italic_E italic_X start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT is the LTψ𝐿subscript𝑇𝜓LT_{\psi}italic_L italic_T start_POSTSUBSCRIPT italic_ψ end_POSTSUBSCRIPT’s LM𝐿𝑀LMitalic_L italic_M accuracy difference with the value of the previous round’s global model in the global test dataset.

5 PERFORMANCE EVALUATION

All the experiments were conducted on a virtual machine with one NVIDIA V100 GPU, two Intel Golden 6240 CPUs and 131.43 GB of RAM. All experiments involved 20 devices for FBChain, Vanilla Federated Average model, and VBFL. Each device in FBChain, vanilla federated average learning model, and VBFL adopted FedAvg𝐹𝑒𝑑𝐴𝑣𝑔FedAvgitalic_F italic_e italic_d italic_A italic_v italic_g and MNIST_CNN𝑀𝑁𝐼𝑆𝑇_𝐶𝑁𝑁MNIST\_CNNitalic_M italic_N italic_I italic_S italic_T _ italic_C italic_N italic_N [29] network structure, the training sets are randomly assigned to different parts of the same size, with 5 local training epochs every training round, the learning rate is set 0.01, batch size 10. In PoWLS υ𝜐\upsilonitalic_υ is set 1, ϕitalic-ϕ\phiitalic_ϕ is set 100.

5.1 Effectiveness of FBChain

Refer to caption
Figure 2: Effectiveness of FBChain, VANILLA-FEDAVG, and VBFL in Non-IID Data Distribution

Figure 2 demonstrates the effectiveness of FBChain, our proposed federated learning model, by showing the global model accuracy trend over 100 training rounds. We compare FBChain with two other models: vanilla federated average learning (VFL), which is shown as VANILLA-FED-AVG in the figure, and VBFL [30], which introduces a novel decentralized validation mechanism. We assign FBChain to 20 devices, including 12 LT𝐿𝑇LTitalic_L italic_T, 3 PA𝑃𝐴PAitalic_P italic_A, and 5 BP𝐵𝑃BPitalic_B italic_P nodes, and compare it with VFL assigned to 20 clients and VBFL assigned to 12 workers, 5 validators, and 3 miners. We use different values of κ𝜅\kappaitalic_κ and CRTH𝐶subscript𝑅𝑇𝐻CR_{TH}italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT for FBChain, with default values of CRr𝐶superscript𝑅𝑟CR^{r}italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT and CRp𝐶superscript𝑅𝑝CR^{p}italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT set to 5 and -5, respectively. When κ=10𝜅10\kappa=10italic_κ = 10 and CRTH=60𝐶subscript𝑅𝑇𝐻60CR_{TH}=60italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 60, CRr𝐶superscript𝑅𝑟CR^{r}italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT and CRp𝐶superscript𝑅𝑝CR^{p}italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT are adjusted to 10 and -10, respectively. VBFL is assigned a validator-threshold of 0.08 and no malicious nodes. The purple and brown curves represent the global model accuracy trend for VFL and VBFL, respectively, while the other curves show the performance of FBChain with different values of κ𝜅\kappaitalic_κ, CRTH𝐶subscript𝑅𝑇𝐻CR_{TH}italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT, CRr𝐶superscript𝑅𝑟CR^{r}italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT, and CRp𝐶superscript𝑅𝑝CR^{p}italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT. When κ=0𝜅0\kappa=0italic_κ = 0, all LT𝐿𝑇LTitalic_L italic_T’s local models participate in the global model update. When κ=5𝜅5\kappa=5italic_κ = 5, only LT𝐿𝑇LTitalic_L italic_T nodes with a CR𝐶𝑅CRitalic_C italic_R value greater than or equal to CRTH𝐶subscript𝑅𝑇𝐻CR_{TH}italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT are allowed to participate in the global model update every round. If a LT𝐿𝑇LTitalic_L italic_T node has a CR𝐶𝑅CRitalic_C italic_R value less than CRTH𝐶subscript𝑅𝑇𝐻CR_{TH}italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT, it can only participate in the update every 5 rounds, and when κ=10𝜅10\kappa=10italic_κ = 10, the round number is increased to 10. Despite having a relatively small number of LT𝐿𝑇LTitalic_L italic_T nodes, FBChain maintains a high level of accuracy compared to the vanilla federated learning model.

5.2 Transmission Delay

Refer to caption
(a) Device 1
Refer to caption
(b) Device 3
Refer to caption
(c) Device 5
Refer to caption
(d) Device 7
Refer to caption
(e) Device 9
Refer to caption
(f) Device 11
Refer to caption
(g) Device 13
Refer to caption
(h) Device 15
Refer to caption
(i) Device 17
Refer to caption
(j) Device 18
Refer to caption
(k) Device 19
Refer to caption
(l) Device 20
Figure 3: Transmission Delay of Local Training Devices, κ=0,CRTH=50,CRr=5,CRp=5formulae-sequence𝜅0formulae-sequence𝐶subscript𝑅𝑇𝐻50formulae-sequence𝐶superscript𝑅𝑟5𝐶superscript𝑅𝑝5\kappa=0,CR_{TH}=50,CR^{r}=5,CR^{p}=-5italic_κ = 0 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 50 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 5 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 5

Figure 3 shows the transmission delay between LT𝐿𝑇LTitalic_L italic_T and PA𝑃𝐴PAitalic_P italic_A in PoWLS and PoS of FBChain, we assigned LTζ,ζ[1,20]𝐿subscript𝑇𝜁𝜁120LT_{\zeta},\zeta\in[1,20]italic_L italic_T start_POSTSUBSCRIPT italic_ζ end_POSTSUBSCRIPT , italic_ζ ∈ [ 1 , 20 ], link speed increases from 70000 bytes/s with the increase of ζ𝜁\zetaitalic_ζ, Dζ=70000+7000×ζsubscript𝐷𝜁700007000𝜁D_{\zeta}=70000+7000\times\zetaitalic_D start_POSTSUBSCRIPT italic_ζ end_POSTSUBSCRIPT = 70000 + 7000 × italic_ζ, select nodes with evenly distributed link speed from all nodes as LT𝐿𝑇LTitalic_L italic_T, selected PA𝑃𝐴PAitalic_P italic_A from remaining nodes by PoWLS, TDζ𝑇subscript𝐷𝜁TD_{\zeta}italic_T italic_D start_POSTSUBSCRIPT italic_ζ end_POSTSUBSCRIPT is randomly assigned in [0,1] seconds. From Figure 3, we can find with the device link speed increases, the transmission time of the PoS consensus algorithm is gradually greater in more rounds compared to PoWLS due to the different link speeds of PA𝑃𝐴PAitalic_P italic_A, the transmission speed between LT𝐿𝑇LTitalic_L italic_T and PA𝑃𝐴PAitalic_P italic_A is constrained by the lower speed nodes, resulting in differences in transmission time among different rounds. For different LT𝐿𝑇LTitalic_L italic_T, when DLT<DPAsubscript𝐷𝐿𝑇subscript𝐷𝑃𝐴D_{LT}<D_{PA}italic_D start_POSTSUBSCRIPT italic_L italic_T end_POSTSUBSCRIPT < italic_D start_POSTSUBSCRIPT italic_P italic_A end_POSTSUBSCRIPT, the maximum transmission speed between LT𝐿𝑇LTitalic_L italic_Tand PA𝑃𝐴PAitalic_P italic_Ais DLTsubscript𝐷𝐿𝑇D_{LT}italic_D start_POSTSUBSCRIPT italic_L italic_T end_POSTSUBSCRIPT, therefore in Device 1, because D1<Dϝ,1<ϝ20formulae-sequencesubscript𝐷1subscript𝐷italic-ϝ1italic-ϝ20D_{1}<D_{\digamma},1<\digamma\leq 20italic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT < italic_D start_POSTSUBSCRIPT italic_ϝ end_POSTSUBSCRIPT , 1 < italic_ϝ ≤ 20, so no matter consensus algorithm is PoWLS or PoS, the transmission time is stable between [79.7, 80.5]. In 3(b), because only Device 2 has a link speed lower than Device 3 when Device 2 is PA𝑃𝐴PAitalic_P italic_A, the transmission speed will be limited by Device 2, and transmission time will be higher than transmission to other PA𝑃𝐴PAitalic_P italic_A. It can be seen that in Figure 3(b), the transmission delay of some communication rounds is higher than that of other rounds in PoS. In Figure 3(b), PoWLS and PoS are consistent for most of the time, but in most cases, PoWLS is slightly higher than PoS due to differences in the amount of data transmitted. From Device 5, we can see that in more rounds, the transmission delay of PoS is higher than that of PoWLS, and the transmission delay distribution of Device 17, 18, 19, and 20 tends to be consistent because PA𝑃𝐴PAitalic_P italic_Anodes are selected from nodes other than LT𝐿𝑇LTitalic_L italic_T, the PA𝑃𝐴PAitalic_P italic_A has highest link speed is Device 16, D16<D17<D18<D19<D20subscript𝐷16subscript𝐷17subscript𝐷18subscript𝐷19subscript𝐷20D_{16}<D_{17}<D_{18}<D_{19}<D_{20}italic_D start_POSTSUBSCRIPT 16 end_POSTSUBSCRIPT < italic_D start_POSTSUBSCRIPT 17 end_POSTSUBSCRIPT < italic_D start_POSTSUBSCRIPT 18 end_POSTSUBSCRIPT < italic_D start_POSTSUBSCRIPT 19 end_POSTSUBSCRIPT < italic_D start_POSTSUBSCRIPT 20 end_POSTSUBSCRIPT, the maximum transmission speed limited by Device 16, so the transmission delay is similar.

The transmission delay between LT𝐿𝑇LTitalic_L italic_T and PA𝑃𝐴PAitalic_P italic_A can be seen in Figure 3 that in PoS, the transmission delay is unstable and high, while the transmission delay of PoWLS is kept in a low range because PoWLS choose PA𝑃𝐴PAitalic_P italic_A by link speed and latency, nodes with faster link speed and lower latency will become PA𝑃𝐴PAitalic_P italic_A, but in PoS the witness node will be chosen based on the number of stakes.

5.3 Credit Score and Stake Trending

Refer to caption
(a) κ=0,CRTH=50,CRr=5,CRp=5formulae-sequence𝜅0formulae-sequence𝐶subscript𝑅𝑇𝐻50formulae-sequence𝐶superscript𝑅𝑟5𝐶superscript𝑅𝑝5\kappa=0,CR_{TH}=50,CR^{r}=5,CR^{p}=-5italic_κ = 0 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 50 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 5 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 5
Refer to caption
(b) κ=5,CRTH=50,CRr=5,CRp=5formulae-sequence𝜅5formulae-sequence𝐶subscript𝑅𝑇𝐻50formulae-sequence𝐶superscript𝑅𝑟5𝐶superscript𝑅𝑝5\kappa=5,CR_{TH}=50,CR^{r}=5,CR^{p}=-5italic_κ = 5 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 50 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 5 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 5
Refer to caption
(c) κ=5,CRTH=60,CRr=5,CRp=5formulae-sequence𝜅5formulae-sequence𝐶subscript𝑅𝑇𝐻60formulae-sequence𝐶superscript𝑅𝑟5𝐶superscript𝑅𝑝5\kappa=5,CR_{TH}=60,CR^{r}=5,CR^{p}=-5italic_κ = 5 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 60 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 5 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 5
Refer to caption
(d) κ=10,CRTH=60,CRr=10,CRp=10formulae-sequence𝜅10formulae-sequence𝐶subscript𝑅𝑇𝐻60formulae-sequence𝐶superscript𝑅𝑟10𝐶superscript𝑅𝑝10\kappa=10,CR_{TH}=60,CR^{r}=10,CR^{p}=-10italic_κ = 10 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 60 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 10 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 10
Figure 4: Local Training Devices Credit Score Trends

In Figure 4 and Figure 5 shows the CR𝐶𝑅CRitalic_C italic_R trends of FBChain for κ={0,5,10},CRTH={50,60},CRr={5,10},CRp={5,10}formulae-sequence𝜅0510formulae-sequence𝐶subscript𝑅𝑇𝐻5060formulae-sequence𝐶superscript𝑅𝑟510𝐶superscript𝑅𝑝510\kappa=\{0,5,10\},CR_{TH}=\{50,60\},CR^{r}=\{5,10\},CR^{p}=\{-5,-10\}italic_κ = { 0 , 5 , 10 } , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = { 50 , 60 } , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = { 5 , 10 } , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = { - 5 , - 10 }, and assigned CR[0,100]𝐶𝑅0100CR\in[0,100]italic_C italic_R ∈ [ 0 , 100 ]. In Figure 4(a) shows while assigning FBChain κ=0,CRTH=50,CRr=5,CRp=5formulae-sequence𝜅0formulae-sequence𝐶subscript𝑅𝑇𝐻50formulae-sequence𝐶superscript𝑅𝑟5𝐶superscript𝑅𝑝5\kappa=0,CR_{TH}=50,CR^{r}=5,CR^{p}=-5italic_κ = 0 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 50 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 5 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 5 the CR𝐶𝑅CRitalic_C italic_R trends, we can find the LT𝐿𝑇LTitalic_L italic_T besides device_5 are maintained a high CR𝐶𝑅CRitalic_C italic_R, and device_5’s CR𝐶𝑅CRitalic_C italic_R flowed to 0, after 80 communication round it has an increase, that because when testing device_5’s LM𝐿𝑀LMitalic_L italic_M on the test set, the accuracy difference between the results obtained and the global model is lower than Accthreshold𝐴𝑐subscript𝑐𝑡𝑟𝑒𝑠𝑜𝑙𝑑Acc_{threshold}italic_A italic_c italic_c start_POSTSUBSCRIPT italic_t italic_h italic_r italic_e italic_s italic_h italic_o italic_l italic_d end_POSTSUBSCRIPT, so the deduction is made to the CR𝐶𝑅CRitalic_C italic_R of device_5, and when it is larger than Accthreshold𝐴𝑐subscript𝑐𝑡𝑟𝑒𝑠𝑜𝑙𝑑Acc_{threshold}italic_A italic_c italic_c start_POSTSUBSCRIPT italic_t italic_h italic_r italic_e italic_s italic_h italic_o italic_l italic_d end_POSTSUBSCRIPT, benefit device_5 with CR𝐶𝑅CRitalic_C italic_R. In Figure 5 shows the stake trend of LT𝐿𝑇LTitalic_L italic_T, we assigned TRtotal=20𝑇subscript𝑅𝑡𝑜𝑡𝑎𝑙20TR_{total}=20italic_T italic_R start_POSTSUBSCRIPT italic_t italic_o italic_t italic_a italic_l end_POSTSUBSCRIPT = 20, we can find device_11 grows fast, which means it has better performance rather than other LT𝐿𝑇LTitalic_L italic_T, and in every round, LT𝐿𝑇LTitalic_L italic_T distribute rewards from TRtotal𝑇subscript𝑅𝑡𝑜𝑡𝑎𝑙TR_{total}italic_T italic_R start_POSTSUBSCRIPT italic_t italic_o italic_t italic_a italic_l end_POSTSUBSCRIPT based on the accuracy of LT𝐿𝑇LTitalic_L italic_T’s LM𝐿𝑀LMitalic_L italic_M accuracy performance.In Figure 4(b) shows while assign FBChain κ=5,CRTH=50,CRr=5,CRp=5formulae-sequence𝜅5formulae-sequence𝐶subscript𝑅𝑇𝐻50formulae-sequence𝐶superscript𝑅𝑟5𝐶superscript𝑅𝑝5\kappa=5,CR_{TH}=50,CR^{r}=5,CR^{p}=-5italic_κ = 5 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 50 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 5 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 5 the CR𝐶𝑅CRitalic_C italic_R trends, and there has no LT𝐿𝑇LTitalic_L italic_T’s CR<CRTH𝐶𝑅𝐶subscript𝑅𝑇𝐻CR<CR_{TH}italic_C italic_R < italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT. Every LT𝐿𝑇LTitalic_L italic_T participates in the update of GM𝐺𝑀GMitalic_G italic_M in every round. In Figure 4(c) shows while assign FBChain κ=5,CRTH=60,CRr=5,CRp=5formulae-sequence𝜅5formulae-sequence𝐶subscript𝑅𝑇𝐻60formulae-sequence𝐶superscript𝑅𝑟5𝐶superscript𝑅𝑝5\kappa=5,CR_{TH}=60,CR^{r}=5,CR^{p}=-5italic_κ = 5 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 60 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 5 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 5 the LT𝐿𝑇LTitalic_L italic_T’s CR𝐶𝑅CRitalic_C italic_R trends, and we can find the CR𝐶𝑅CRitalic_C italic_R of three nodes has been less than CRTH𝐶subscript𝑅𝑇𝐻CR_{TH}italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT for a period of time, respectively device_17,device_11 and device_13. After their CR𝐶𝑅CRitalic_C italic_R lower than CRTH=60𝐶subscript𝑅𝑇𝐻60CR_{TH}=60italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 60, they can only participate in the update of GM𝐺𝑀GMitalic_G italic_M in every κ=5𝜅5\kappa=5italic_κ = 5 rounds, we can find their CR𝐶𝑅CRitalic_C italic_R also changes in every 5 rounds when their CR<60𝐶𝑅60CR<60italic_C italic_R < 60. In Figure 4(d) shows while assign FBChain κ=10,CRTH=60,CRr=10,CRp=10formulae-sequence𝜅10formulae-sequence𝐶subscript𝑅𝑇𝐻60formulae-sequence𝐶superscript𝑅𝑟10𝐶superscript𝑅𝑝10\kappa=10,CR_{TH}=60,CR^{r}=10,CR^{p}=-10italic_κ = 10 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 60 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 10 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 10 the LT𝐿𝑇LTitalic_L italic_T’s CR𝐶𝑅CRitalic_C italic_R trends, from Figure 4(d) we can find device_15’s CR𝐶𝑅CRitalic_C italic_R reached lower than CRTH=60𝐶subscript𝑅𝑇𝐻60CR_{TH}=60italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 60 in first 20 communication rounds, then it changed every κ=10𝜅10\kappa=10italic_κ = 10 rounds, which is the device_15 participate in the update of GM𝐺𝑀GMitalic_G italic_M in every κ=10𝜅10\kappa=10italic_κ = 10 rounds.

Refer to caption
Figure 5: Local Training Devices Stake Trends,κ=0,CRTH=50,CRr=5,CRp=5formulae-sequence𝜅0formulae-sequence𝐶subscript𝑅𝑇𝐻50formulae-sequence𝐶superscript𝑅𝑟5𝐶superscript𝑅𝑝5\kappa=0,CR_{TH}=50,CR^{r}=5,CR^{p}=-5italic_κ = 0 , italic_C italic_R start_POSTSUBSCRIPT italic_T italic_H end_POSTSUBSCRIPT = 50 , italic_C italic_R start_POSTSUPERSCRIPT italic_r end_POSTSUPERSCRIPT = 5 , italic_C italic_R start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT = - 5

6 Conclusion and Future Work

In this paper, we propose FBChain, a federated learning blockchain model that improves communication efficiency while preventing potential data tampers and leakage during model parameter transmission and reducing blockchain storage pressure. The PoWLS consensus algorithm introduced by FBChain selects nodes with better network link speed and latency for global model aggregation and block package, thereby improving the efficiency of data transmission between local training nodes and aggregation nodes. Our focus in this paper is on improving the communication efficiency and security of federated learning, and we have provided validation for this approach. However, further research is needed to address the issue of training resource utilization and imbalanced training data.

Acknowledgement

This work was supported by the National Natural Science Foundation of China under Grant No. 62272024.

References

  • [1] P. Kairouz, H. B. McMahan, B. Avent, A. Bellet, M. Bennis, A. N. Bhagoji, K. Bonawitz, Z. B. Charles, G. Cormode, R. Cummings, R. G. L. D’Oliveira, S. Y. E. Rouayheb, D. Evans, J. Gardner, Z. Garrett, A. Gascón, B. Ghazi, P. B. Gibbons, M. Gruteser, Z. Harchaoui, C. He, L. He, Z. Huo, B. Hutchinson, J. Hsu, M. Jaggi, T. Javidi, G. Joshi, M. Khodak, J. Konecný, A. Korolova, F. Koushanfar, O. Koyejo, T. Lepoint, Y. Liu, P. Mittal, M. Mohri, R. Nock, A. Özgür, R. Pagh, M. Raykova, H. Qi, D. Ramage, R. Raskar, D. X. Song, W. Song, S. U. Stich, Z. Sun, A. T. Suresh, F. Tramèr, P. Vepakomma, J. Wang, L. Xiong, Z. Xu, Q. Yang, F. X. Yu, H. Yu, and S. Zhao, “Advances and open problems in federated learning,” Found. Trends Mach. Learn., vol. 14, pp. 1–210, 2019.
  • [2] V. Mothukuri, R. M. Parizi, S. Pouriyeh, Y. ping Huang, A. Dehghantanha, and G. Srivastava, “A survey on security and privacy of federated learning,” Future Gener. Comput. Syst., vol. 115, pp. 619–640, 2021.
  • [3] N. Rodr’iguez-Barroso, D. J. L’opez, M. V. Luz’on, F. Herrera, and E. Martínez-Cámara, “Survey on federated learning threats: concepts, taxonomy on attacks and defences, experimental study and challenges,” ArXiv, vol. abs/2201.08135, 2022.
  • [4] T. Li, A. K. Sahu, A. Talwalkar, and V. Smith, “Federated learning: Challenges, methods, and future directions,” IEEE Signal Processing Magazine, vol. 37, pp. 50–60, 2019.
  • [5] D. C. Nguyen, M. Ding, P. N. Pathirana, A. P. Seneviratne, J. Li, and F. I. H. V. Poor, “Federated learning for internet of things: A comprehensive survey,” IEEE Communications Surveys & Tutorials, vol. 23, pp. 1622–1658, 2021.
  • [6] M. Alazab, S. P. Rm, P. M, P. K. R. Maddikunta, T. R. Gadekallu, and V. Q. Pham, “Federated learning for cybersecurity: Concepts, challenges, and future directions,” IEEE Transactions on Industrial Informatics, vol. 18, pp. 3501–3509, 2022.
  • [7] O. A. Wahab, A. Mourad, H. Otrok, and T. Taleb, “Federated machine learning: Survey, multi-level classification, desirable criteria and future directions in communication and networking systems,” IEEE Communications Surveys & Tutorials, vol. 23, pp. 1342–1397, 2021.
  • [8] X. Huang, P. Li, and X. Li, “Stochastic controlled averaging for federated learning with communication compression,” ArXiv, vol. abs/2308.08165, 2023.
  • [9] J. Xu, W. Du, Y. Jin, W. He, and R. Cheng, “Ternary compression for communication-efficient federated learning,” IEEE Transactions on Neural Networks and Learning Systems, vol. 33, pp. 1162–1176, 2020.
  • [10] H. Sun, X. Ma, and R. Q. Hu, “Adaptive federated learning with gradient compression in uplink noma,” IEEE Transactions on Vehicular Technology, vol. 69, pp. 16 325–16 329, 2020.
  • [11] L. Cui, X. Su, Z. Ming, Z. Chen, S. Yang, Y. Zhou, and W. Xiao, “Creat: Blockchain-assisted compression algorithm of federated learning for content caching in edge computing,” IEEE Internet of Things Journal, vol. 9, pp. 14 151–14 161, 2022.
  • [12] W. Issa, N. Moustafa, B. P. Turnbull, N. Sohrabi, and Z. Tari, “Blockchain-based federated learning for securing internet of things: A comprehensive survey,” ACM Computing Surveys, vol. 55, pp. 1 – 43, 2022.
  • [13] Y. Qu, M. P. Uddin, C. Gan, Y. Xiang, L. Gao, and J. Yearwood, “Blockchain-enabled federated learning: A survey,” ACM Computing Surveys, vol. 55, pp. 1 – 35, 2022.
  • [14] M. Asad, S. Shaukat, D. Hu, Z. Wang, E. Javanmardi, J. Nakazato, and M. Tsukada, “Limitations and future aspects of communication costs in federated learning: A survey,” Sensors (Basel, Switzerland), vol. 23, 2023.
  • [15] F. Haddadpour, M. M. Kamani, A. Mokhtari, and M. Mahdavi, “Federated learning with compression: Unified analysis and sharp guarantees,” in International Conference on Artificial Intelligence and Statistics, 2020.
  • [16] J. Huang, L. Kong, G. Chen, Q. Xiang, X. Chen, and X. Liu, “Blockchain-based federated learning: A systematic survey,” IEEE Network, vol. 37, pp. 150–157, 2023.
  • [17] J. Zhu, J. Cao, D. Saxena, S. Jiang, and H. Ferradi, “Blockchain-empowered federated learning: Challenges, solutions, and future directions,” ACM Computing Surveys, vol. 55, pp. 1 – 31, 2022.
  • [18] Jakub Konecný, H. B. McMahan, Felix X. Yu, Peter Richtárik, Ananda Theertha Suresh, and Dave Bacon. Federated learning: Strategies for improving communication efficiency. ArXiv, abs/1610.05492, 2016.
  • [19] Yunlong Lu, Xiaohong Huang, Ke Zhang, Sabita Maharjan, and Yan Zhang. Communication-efficient federated learning and permissioned blockchain for digital twin edge networks. IEEE Internet of Things Journal, 8:2276–2288, 2021.
  • [20] Su Liu, Jiong Yu, Xiaoheng Deng, and Shaohua Wan. Fedcpf: An efficient-communication federated learning approach for vehicular edge computing in 6g communication networks. IEEE Transactions on Intelligent Transportation Systems, 23:1616–1629, 2021.
  • [21] Ka Hang Li and Chunhua Xiao. Cbfl: A communication-efficient federated learning framework from data redundancy perspective. IEEE Systems Journal, 16:5572–5583, 2022.
  • [22] Qing Han, Shusen Yang, Xuebin Ren, Peng Zhao, Cong Zhao, and Yimeng Wang. Pcfed: Privacy-enhanced and communication-efficient federated learning for industrial iots. IEEE Transactions on Industrial Informatics, 18:6181–6191, 2022.
  • [23] Wei Liu, Li Chen, and Wenyi Zhang. Decentralized federated learning: Balancing communication and computing costs. IEEE Transactions on Signal and Information Processing over Networks, 8:131–143, 2021.
  • [24] Jiaqi Zhao, Hui Zhu, Fengwei Wang, Rongxing Lu, Zhe Liu, and Hui Li. Pvd-fl: A privacy-preserving and verifiable decentralized federated learning framework. IEEE Transactions on Information Forensics and Security, 17:2059–2073, 2022.
  • [25] Zhe Peng, Jianliang Xu, Xiaowen Chu, Shang Gao, Yuan Yao, Rong Gu, and Yuzhe Richard Tang. Vfchain: Enabling verifiable and auditable federated learning via blockchain systems. IEEE Transactions on Network Science and Engineering, 9:173–186, 2021.
  • [26] Yuanhang Qi, M. Shamim Hossain, Jiangtian Nie, and Xuandi Li. Privacy-preserving blockchain-based federated learning for traffic flow prediction. Future Gener. Comput. Syst., 117:328–337, 2021.
  • [27] Jungjae Lee and Wooseong Kim. Dag-based blockchain sharding for secure federated learning with non-iid data. Sensors (Basel, Switzerland), 22, 2022.
  • [28] Xiaoyuan Liu, Hongwei Li, Guowen Xu, Zongqi Chen, Xiaoming Huang, and Rongxing Lu. Privacy-enhanced federated learning against poisoning adversaries. IEEE Transactions on Information Forensics and Security, 16:4574–4588, 2021.
  • [29] H. B. McMahan, Eider Moore, Daniel Ramage, Seth Hampson, and Blaise Agüera y Arcas. Communication-efficient learning of deep networks from decentralized data. In International Conference on Artificial Intelligence and Statistics, 2016.
  • [30] Hang Chen, Syed Ali Asif, Jihong Park, Chien-Chung Shen, and Mehdi Bennis. Robust blockchained federated learning with model validation and proof-of-stake inspired consensus. ArXiv, abs/2101.03300, 2021.