<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.0 20120330//EN" "JATS-journalpublishing1.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">INFORMATICA</journal-id>
<journal-title-group><journal-title>Informatica</journal-title></journal-title-group>
<issn pub-type="epub">1822-8844</issn><issn pub-type="ppub">0868-4952</issn><issn-l>0868-4952</issn-l>
<publisher>
<publisher-name>Vilnius University</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">INFOR644</article-id>
<article-id pub-id-type="doi">10.15388/26-INFOR644</article-id>
<article-categories><subj-group subj-group-type="heading">
<subject>Research Article</subject></subj-group></article-categories>
<title-group>
<article-title>Dynamic Authentication and Privacy-Preserving Data Trading Scheme with Lattice in Blockchain-Enhanced Smart Logistics</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Gao</surname><given-names>Xue</given-names></name><email xlink:href="gaoxue1026@ncepu.edu.cn">gaoxue1026@ncepu.edu.cn</email><xref ref-type="aff" rid="j_infor644_aff_001"/><bio>
<p><bold>X. Gao</bold> received the master’s degree from Shandong University of Science and Technology, Qingdao, China, in 2019. She is currently pursuing the PhD degree with North China Electric Power University, Beijing. Her current research interest includes privacy protection and identity authentication in Power Internet of Things.</p></bio>
</contrib>
<contrib contrib-type="author">
<name><surname>Wu</surname><given-names>Ke-He</given-names></name><email xlink:href="wkh@ncepu.edu.cn">wkh@ncepu.edu.cn</email><xref ref-type="aff" rid="j_infor644_aff_001"/><bio>
<p><bold>K.-H. Wu</bold> received a PhD degree from the University of North China Electric Power University, Beijing, in 2009. He is a professor at North China Electric Power University, the director of the Chinese Association for Artificial Intelligence and Beijing Engineering Research Center of Electric Information Technology, and a committee member of the China Electric Power Information Standardization Committee and Professional Electric Power Information Committee of the Chinese Society for Electrical Engineering. His research interests include smart grid software technology, power information security, and deep learning.</p></bio>
</contrib>
<contrib contrib-type="author">
<name><surname>Zhang</surname><given-names>Xiao-Liang</given-names></name><email xlink:href="zhanghino@126.com">zhanghino@126.com</email><xref ref-type="aff" rid="j_infor644_aff_001"/><bio>
<p><bold>X.-L. Zhang</bold> received a PhD degree from North China Electric Power University, Beijing, in 2023. He is a senior experimentalist at North China Electric Power University. His research interests include electric power information security, and artificial intelligence.</p></bio>
</contrib>
<contrib contrib-type="author">
<name><surname>Cui</surname><given-names>Wen-Chao</given-names></name><email xlink:href="cuzz@ncepu.edu.cn">cuzz@ncepu.edu.cn</email><xref ref-type="aff" rid="j_infor644_aff_001"/><xref ref-type="corresp" rid="cor1">∗</xref><bio>
<p><bold>W.-C. Cui</bold> received his PhD from North China Electric Power University, Beijing, China, in 2014. His research interest focuses on power information security, security protection for Power Internet of Things.</p></bio>
</contrib>
<aff id="j_infor644_aff_001"><institution>School of Control and Computer Engineering, North China Electric Power University</institution>, Beijing 102206, <country>China</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>∗</label>Corresponding author.</corresp>
</author-notes>
<pub-date pub-type="ppub"><year>2026</year></pub-date><pub-date pub-type="epub"><day>16</day><month>10</month><year>2026</year></pub-date><volume content-type="ahead-of-print">0</volume><issue>0</issue><fpage>1</fpage><lpage>40</lpage><history><date date-type="received"><month>4</month><year>2026</year></date><date date-type="accepted"><month>8</month><year>2026</year></date></history>
<permissions><copyright-statement>© 2026 Vilnius University</copyright-statement><copyright-year>2026</copyright-year>
<license license-type="open-access" xlink:href="http://creativecommons.org/licenses/by/4.0/">
<license-p>Open access article under the <ext-link ext-link-type="uri" xlink:href="http://creativecommons.org/licenses/by/4.0/">CC BY</ext-link> license.</license-p></license></permissions>
<abstract>
<p>Against the risks of privacy leakage and quantum computing attacks in smart logistics data trading, this paper proposes a post-quantum privacy-preserving data trading scheme built on consortium blockchain and federated learning. Three orthogonal core innovations are elaborated as follows:
<list>
<list-item id="j_infor644_li_001">
<label>(1)</label>
<p>A five-layer decoupled smart logistics data trading platform architecture is constructed. Different from existing single-layer blockchain trading frameworks, this work hierarchically divides logistics data workflows into perception, generation, transmission, trading platform and application layers, and introduces a blockchain oracle module to realize consistent synchronization between on-chain transaction records and off-chain IPFS raw cipher storage, solving the cross-layer data inconsistency defect of prior monolithic architectures.</p>
</list-item>
<list-item id="j_infor644_li_002">
<label>(2)</label>
<p>A quantitative model parameter quality evaluation algorithm based on cosine similarity, together with a dual-weight dynamic incentive mechanism, is designed. Most existing federated data trading studies lack standardized quantitative quality metrics and static reward allocation rules; our method extracts gradient feature vectors from local FL models, calculates similarity against benchmark parameters to grade data quality, and distributes transaction revenue weighted by both model quality and service participation time to motivate sustained user contribution.</p>
</list-item>
<list-item id="j_infor644_li_003">
<label>(3)</label>
<p>A complete lattice-based cryptographic suite including homomorphic proxy re-encryption and aggregate lattice signature is deployed for secure data circulation. Traditional pairing-based privacy schemes are vulnerable to quantum cracking, while standalone lattice encryption works cannot support dynamic cross-buyer ciphertext conversion; our lattice primitive supports homomorphic aggregation and one-time re-encryption transfer, realizing anti-quantum, flexible authorization of federated model trading ciphertexts. Theoretical security proofs and multi-dimensional simulation experiments verify that the proposed scheme achieves post-quantum privacy protection, accurate data quality quantification and high-efficiency dynamic logistics data transactions.</p>
</list-item>
</list></p>
</abstract>
<kwd-group>
<label>Key words</label>
<kwd><italic>Index Terms</italic>—smart logistics</kwd>
<kwd>data trading</kwd>
<kwd>lattice cryptography</kwd>
<kwd>federated learning</kwd>
<kwd>consortium blockchain</kwd>
<kwd>post-quantum privacy preservation</kwd>
</kwd-group>
<funding-group><funding-statement>This research is funded by the National Key R&amp;D Program of China, grant number 2020YFB0905900.</funding-statement></funding-group>
</article-meta>
</front>
<body>
<sec id="j_infor644_s_001">
<label>1</label>
<title>Introduction</title>
<p>Data has become an important resource for economic and social development, and the key to leveraging the value of data lies in data circulation. Data transaction is a typical data circulation paradigm. Based on the role of data trading entities, there are currently three modes of data trading: unilateral data provision mode, data trading platform mode and data management system mode (Azcoitia and Laoutaris, <xref ref-type="bibr" rid="j_infor644_ref_003">2022</xref>). This article focuses on the data trading platform mode.</p>
<p>In terms of existing data trading platform mechanisms, many studies have turned their attention to blockchain technology. In 2022, Khezr <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_009">2022</xref>) focused on the construction of a reputation system based on blockchain edge intelligence in the Industrial Internet of Things. Chen <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_005">2022</xref>) expected to use blockchain and mathematical optimization technology to solve the problem of traditional centralized optimization and management solutions being incompatible with energy systems whose structures are increasingly decentralized and constantly changing. Hong <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_008">2022</xref>) proposed a bargaining dynamic game model and a forward-looking reasoning method to solve the optimal choice problem in the carbon emissions trading process of industrial enterprises.</p>
<p>In the process of data transactions, many scholars have explored blockchain and federated learning to achieve an efficient data circulation model due to its excellent decentralization and natural data circulation characteristics. Xu <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_032">2023</xref>) proposed an Industrial Internet of Things secure data sharing solution based on blockchain and federated learning for the massive data in the industry. Wang <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_029">2022</xref>) considered cloud-edge communication and proposes a hierarchical federated learning incentive mechanism based on blockchain. Tu <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_028">2022</xref>) considered the incentive mechanism of blockchain combined with federated learning from the perspectives of economics and game theory. Wang <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_030">2022</xref>) focused on the consensus mechanism strategy of blockchain combined with federated learning, and proposes a platform-free strategy. Qi <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_024">2022</xref>) also noticed the importance of reputation and proposed a blockchain-based federated learning with a reputation mechanism for high-quality model aggregation. Zhang <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_037">2023</xref>) focused on resource allocation strategies in the data sharing process based on blockchain and federated learning. In view of the highly dispersed nature of logistics data, this article also uses the sharing model of blockchain and federated learning for data circulation and transactions.</p>
<p>However, the flow of private data has become an urgent problem to be solved. In particular, in 2016, the European Union introduced the General Data Protection Regulation (GDPR) policy to protect user and corporate privacy (GDPR, <xref ref-type="bibr" rid="j_infor644_ref_006">2016</xref>). In 2021, Warnat-Herresthal <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_031">2021</xref>) combined blockchain, federated learning and privacy protection strategies, proposes swarm learning, and applies this method in clinical practice. In 2019, Lu <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_020">2019</xref>) used differential privacy technology to achieve privacy protection based on federated learning and blockchain shared data. Zhou <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_038">2022</xref>) propose a secure and trusted federated data sharing based on blockchain in Industrial Internet of Things. Yang <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_033">2022</xref>) aimed to design an privacy-preserved credit data sharing model to guarantee the secure storage and sharing of credit information in a decentralization environment. Chen <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_004">2023</xref>) hoped to achieve privacy protection and traceable federated learning in industrial applications. Mazzocca <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_022">2023</xref>) had designed a model of trusted federated learning as a service. Li and Shi (<xref ref-type="bibr" rid="j_infor644_ref_017">2022</xref>), Li <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_014">2021</xref>, <xref ref-type="bibr" rid="j_infor644_ref_015">2022a</xref>), Li <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_016">2022b</xref>), Li (<xref ref-type="bibr" rid="j_infor644_ref_012">2025</xref>), Li and Shi (<xref ref-type="bibr" rid="j_infor644_ref_013">2024</xref>), Li (<xref ref-type="bibr" rid="j_infor644_ref_010">2024a</xref>, <xref ref-type="bibr" rid="j_infor644_ref_011">2024b</xref>) used blockchain and cryptography technologies, such as homomorphic encryption, to achieve privacy protection during data sharing. Lo (<xref ref-type="bibr" rid="j_infor644_ref_019">2022</xref>) proposed a trustworthy AI blockchain data circulation architecture. Yang <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_034">2022</xref>) proposed a blockchain transaction model based on trusted federated learning from the perspective of Byzantine attacks.</p>
<p>However, although the above blockchain-federated learning data sharing solutions have achieved preliminary progress in general industrial data trading scenarios, three prominent universal research limitations still exist. More importantly, these universal defects are further amplified when applied to smart logistics scenarios due to the unique fragmented, heterogeneous, time-sensitive characteristics of logistics business data, and existing schemes cannot adapt to the personalized industrial requirements of logistics data circulation. The three core targeted research gaps are analysed as follows:</p>
<list>
<list-item id="j_infor644_li_004">
<label>(1)</label>
<p><bold>Research gap 1:</bold> Most existing data trading frameworks lack standardized quantitative evaluation methods for data source quality, and only adopt rough qualitative discrimination standards for shared data. Smart logistics data is collected by massive scattered terminals including trucks, warehouses, distribution stations and express outlets, showing obvious fragmentation and heterogeneity: different logistics operators generate order data, temperature sensor data, vehicle trajectory data with inconsistent feature dimensions and data distribution. Traditional unified quality evaluation rules designed for standardized industrial datasets cannot classify model quality based on heterogeneous logistics feature vectors. If directly deployed in logistics data markets, high-value trajectory models and low-quality noisy order models cannot be quantitatively distinguished, resulting in low-efficiency matching between data buyers and sellers in logistics transactions.</p>
</list-item>
<list-item id="j_infor644_li_005">
<label>(2)</label>
<p><bold>Research gap 2:</bold> Mainstream data trading incentive mechanisms only set static reward distribution rules based on single participation indicators, without comprehensive weighting of multiple service contribution dimensions. Logistics data providers include large logistics platforms, small individual couriers and regional warehousing enterprises, with highly differentiated data output quality and continuous service cycles. General single-factor incentive mechanisms only calculate revenue based on data upload frequency, ignoring the core demand of logistics scenarios to reward high-quality fragmented sensing data. Small and medium-sized logistics merchants who provide high-precision temperature/trajectory model parameters cannot obtain matching transaction returns, leading to insufficient long-term participation willingness and insufficient supply of high-quality heterogeneous logistics data on the trading platform.</p>
</list-item>
<list-item id="j_infor644_li_006">
<label>(3)</label>
<p><bold>Research gap 3:</bold> Most privacy-preserving data circulation cryptography relies on bilinear pairing primitives vulnerable to quantum attacks, and cannot support dynamic re-encryption authorization for cross-buyer data trading. Logistics data transactions involve frequent temporary authorization: the same batch of heterogeneous vehicle/warehouse model parameters need to be shared with multiple logistics demanders such as route optimization platforms and warehouse scheduling systems. Traditional pairing-based homomorphic encryption schemes are twofold incompatible with logistics scenarios: on the one hand, pairing cryptography faces quantum cracking risks threatening sensitive delivery address and cargo temperature data; on the other hand, static encryption cannot flexibly re-authorize ciphertexts to different buyers, requiring repeated plaintext re-upload of fragmented logistics model parameters and bringing serious privacy leakage risks.</p>
</list-item>
</list>
<p>To address quantum attack risks, unquantifiable logistics data quality, and on/off-chain data inconsistency defects of existing blockchain-federated learning data trading solutions, this paper proposes a lattice-based privacy-preserving dynamic data trading architecture for smart logistics. Three mutually independent, non-overlapping core contributions are summarized below, with clear technical breakthroughs against state-of-the-art literature respectively:</p>
<list>
<list-item id="j_infor644_li_007">
<label>(1)</label>
<p>Layered consortium blockchain-federated learning data trading platform architecture. We design a five-layer decoupled logistics data trading system composed of data perception layer, data generation layer, network transmission layer, blockchain trading platform layer and scenario application layer. Compared with prior blockchain data trading architectures which adopt undifferentiated monolithic structure without separation of raw data collection, model training and on-chain transaction management, our layered design isolates heterogeneous logistics service modules. A dedicated blockchain oracle mechanism is embedded to synchronize off-chain IPFS ciphertext storage and on-chain transaction ledgers, completely resolving the data consistency gap ignored by single-layer platform designs. This contribution solely focuses on system architectural innovation without mixing cryptographic or incentive algorithm designs.</p>
</list-item>
<list-item id="j_infor644_li_008">
<label>(2)</label>
<p>Cosine-similarity model quality quantification &amp; time-quality joint incentive mechanism. Existing federated learning data trading works fail to provide computable quantitative standards to evaluate the quality of uploaded model parameters, and their incentive strategies only rely on single participation time without data quality weighting. We first extract gradient feature vectors from local federated models, compute cosine similarity relative to a global benchmark model to generate standardized quality scores for each data seller’s model. On this basis, a dual-weight revenue distribution formula is proposed, which allocates transaction profits according to both model quality and continuous service time to improve long-term user participation enthusiasm. This innovation independently targets data quality assessment and incentive algorithm, excluding architectural and post-quantum cryptography content.</p>
</list-item>
<list-item id="j_infor644_li_009">
<label>(3)</label>
<p>Lattice homomorphic proxy re-encryption and aggregate lattice signature suite for post-quantum circulation. Nearly all mainstream logistics privacy schemes rely on bilinear pairings, which are vulnerable to quantum computer attacks; existing lattice cryptography research only supports static ciphertext storage and lacks dynamic re-encryption authorization for data trading. We integrate Lattice-based Homomorphic Proxy Re-encryption (LHPRE) and lattice aggregate signature (LHS) algorithms. The LHPRE primitive supports homomorphic aggregation of FL model ciphertexts and one-time re-encryption conversion for different buyers, while the LHS algorithm realizes batch integrity verification of trading records. The entire cryptographic stack is post-quantum secure under the LWE hardness assumption, filling the gap of anti-quantum dynamic data circulation tools for logistics data markets. This contribution is purely cryptographic innovation with no repeated architectural or incentive descriptions.</p>
</list-item>
</list>
<p>The remainder of this paper is organized as follows. Section <xref rid="j_infor644_s_002">2</xref> introduces lattice cryptography and cosine similarity preliminaries. Section <xref rid="j_infor644_s_006">3</xref> formalizes system entities, security assumptions and design objectives. Section <xref rid="j_infor644_s_010">4</xref> details the five-phase full scheme workflow covering initialization, FL training, quality evaluation, trading and dynamic tracking. Section <xref rid="j_infor644_s_017">5</xref> conducts rigorous LWE-based security proofs and evaluates computational/communication overhead via trace-driven logistics simulations. Section <xref rid="j_infor644_s_024">6</xref> concludes this work and outlines future research directions.</p>
</sec>
<sec id="j_infor644_s_002">
<label>2</label>
<title>Preliminary</title>
<sec id="j_infor644_s_003">
<label>2.1</label>
<title>Lattice-Based Homomorphic Proxy Re-Encryption Scheme</title>
<p>Lattice-based homomorphic proxy re-encryption scheme (LHPRE) (Luo <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_021">2020</xref>; Li <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>) includes six algorithms: <italic><bold>Setup</bold></italic>, <italic><bold>KeyGen</bold></italic>, <italic><bold>Enc</bold></italic>, <italic><bold>Dec</bold></italic>, <italic><bold>ReKeyGen</bold></italic>, <italic><bold>ReEnc</bold></italic>.</p>
<p><italic><bold>Setup</bold></italic><inline-formula id="j_infor644_ineq_001"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">λ</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="script">I</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({1^{\lambda }},{1^{d}},{1^{\mathcal{I}}})$]]></tex-math></alternatives></inline-formula>: Input security parameter <italic>λ</italic>, output <inline-formula id="j_infor644_ineq_002"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn mathvariant="bold">1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="bold">B</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$pp,mpk:=(\mathbf{A},{\mathbf{A}_{\mathbf{1}}},\mathbf{B},\mathbf{u})$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_003"><alternatives><mml:math>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold">S</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$msk:=(\mathbf{S})$]]></tex-math></alternatives></inline-formula>.</p>
<p><italic><bold>KeyGen</bold></italic><inline-formula id="j_infor644_ineq_004"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(msk,id)$]]></tex-math></alternatives></inline-formula>: Given <inline-formula id="j_infor644_ineq_005"><alternatives><mml:math>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi></mml:math><tex-math><![CDATA[$msk$]]></tex-math></alternatives></inline-formula> and identity <inline-formula id="j_infor644_ineq_006"><alternatives><mml:math>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi></mml:math><tex-math><![CDATA[$id$]]></tex-math></alternatives></inline-formula>, output a secret key <inline-formula id="j_infor644_ineq_007"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$s{k_{id}}$]]></tex-math></alternatives></inline-formula>: <inline-formula id="j_infor644_ineq_008"><alternatives><mml:math>
<mml:mi mathvariant="bold">s</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[$\mathbf{s}=(1,-{\mathbf{z}^{t}})\in {\mathbb{Z}^{2m+1}}$]]></tex-math></alternatives></inline-formula> and the public key <inline-formula id="j_infor644_ineq_009"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$p{k_{id}}$]]></tex-math></alternatives></inline-formula>: <inline-formula id="j_infor644_ineq_010"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo mathvariant="bold" stretchy="false">∥</mml:mo>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mo fence="true" stretchy="false">]</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>×</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[${\mathbf{A}_{id}}={[\mathbf{u}\boldsymbol{\parallel }\mathbf{H}]^{t}}\in {\mathbb{Z}_{q}^{(2m+1)\times n}}$]]></tex-math></alternatives></inline-formula>.</p>
<p><italic><bold>Enc</bold></italic><inline-formula id="j_infor644_ineq_011"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">μ</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(mpk,id,\mu )$]]></tex-math></alternatives></inline-formula>: Input <italic>μ</italic>, computes <inline-formula id="j_infor644_ineq_012"><alternatives><mml:math>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi mathvariant="bold">R</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="bold">E</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">μ</mml:mi>
<mml:mi mathvariant="bold">G</mml:mi></mml:math><tex-math><![CDATA[$\mathbf{C}={\mathbf{A}_{id}}\mathbf{R}+2\mathbf{E}+\mu \mathbf{G}$]]></tex-math></alternatives></inline-formula>.</p>
<p><italic><bold>Dec</bold></italic><inline-formula id="j_infor644_ineq_013"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(\mathbf{C},id,s{k_{id}})$]]></tex-math></alternatives></inline-formula>: Let <bold>c</bold> be the first column of <bold>C</bold>. Get <inline-formula id="j_infor644_ineq_014"><alternatives><mml:math>
<mml:mi mathvariant="italic">μ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo fence="true" stretchy="false">⟨</mml:mo>
<mml:mi mathvariant="bold">s</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo fence="true" stretchy="false">⟩</mml:mo>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mn>2</mml:mn></mml:math><tex-math><![CDATA[$\mu =\langle \mathbf{s},\mathbf{c}\rangle \hspace{2.5pt}\text{mod}\hspace{2.5pt}q\hspace{2.5pt}\text{mod}\hspace{2.5pt}2$]]></tex-math></alternatives></inline-formula>.</p>
<p><italic><bold>ReKeyGen</bold></italic><inline-formula id="j_infor644_ineq_015"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(s{k_{id}},id,i{d^{\prime }},p{k_{i{d^{\prime }}}})$]]></tex-math></alternatives></inline-formula>: Given <inline-formula id="j_infor644_ineq_016"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$s{k_{id}}$]]></tex-math></alternatives></inline-formula>, and <inline-formula id="j_infor644_ineq_017"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$p{k_{i{d^{\prime }}}}$]]></tex-math></alternatives></inline-formula>, output the re-encryption key <inline-formula id="j_infor644_ineq_018"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$s{k_{id\to i{d^{\prime }}}}$]]></tex-math></alternatives></inline-formula>: <inline-formula id="j_infor644_ineq_019"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true">[</mml:mo>
<mml:mtable equalrows="false" equalcolumns="false" columnalign="center">
<mml:mtr>
<mml:mtd class="array">
<mml:mi mathvariant="bold">sG</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="array">
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true">]</mml:mo>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>×</mml:mo>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[${\mathbf{P}_{id\to i{d^{\prime }}}}={\mathbf{A}_{i{d^{\prime }}}}{\mathbf{R}^{\prime }}+2{\mathbf{E}^{\prime }}+\Big[\begin{array}{c}\mathbf{sG}\\ {} \mathbf{0}\end{array}\Big]\in {\mathbb{Z}_{q}^{(2m+1)\times N}}$]]></tex-math></alternatives></inline-formula>.</p>
<p><italic><bold>ReEnc</bold></italic><inline-formula id="j_infor644_ineq_020"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(s{k_{id\to i{d^{\prime }}}},i{d^{\prime }},(id,\mathbf{C}))$]]></tex-math></alternatives></inline-formula>: Given <inline-formula id="j_infor644_ineq_021"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$s{k_{id\to i{d^{\prime }}}}$]]></tex-math></alternatives></inline-formula>, and <bold>C</bold>, output <inline-formula id="j_infor644_ineq_022"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msub>
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${\mathbf{C}_{id\to i{d^{\prime }}}}:={\mathbf{P}_{id\to i{d^{\prime }}}}{\mathbf{G}^{-1}}(\mathbf{C})$]]></tex-math></alternatives></inline-formula>.</p>
<p>The algorithm satisfies homomorphism, that is <italic><bold>Enc</bold></italic><inline-formula id="j_infor644_ineq_023"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo></mml:math><tex-math><![CDATA[$({\mu _{1}}+{\mu _{2}})=$]]></tex-math></alternatives></inline-formula> <italic><bold>Enc</bold></italic> <inline-formula id="j_infor644_ineq_024"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({\mu _{1}})$]]></tex-math></alternatives></inline-formula> + <italic><bold>Enc</bold></italic><inline-formula id="j_infor644_ineq_025"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({\mu _{2}})$]]></tex-math></alternatives></inline-formula> and <italic><bold>Enc</bold></italic><inline-formula id="j_infor644_ineq_026"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo></mml:math><tex-math><![CDATA[$({\mu _{1}}\cdot {\mu _{2}})=$]]></tex-math></alternatives></inline-formula> <italic><bold>Enc</bold></italic><inline-formula id="j_infor644_ineq_027"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>·</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[$({\mu _{1}})\cdot {\mathbf{G}^{-1}}$]]></tex-math></alternatives></inline-formula>(<italic><bold>Enc</bold></italic><inline-formula id="j_infor644_ineq_028"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({\mu _{2}})$]]></tex-math></alternatives></inline-formula>). Its correctness is shown in Luo <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_021">2020</xref>), Li <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>), which it has been proved that the algorithm meets CPA security in semantic security.</p>
</sec>
<sec id="j_infor644_s_004">
<label>2.2</label>
<title>Lattice-Based Homomorphic Signature Scheme</title>
<p>Lattice-based homomorphic signatures scheme (LHS) (Gorbunov <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_007">2015</xref>) includes four algorithms: <italic><bold>Setup</bold></italic>, <italic><bold>KeyGen</bold></italic>, <italic><bold>Sign</bold></italic>, <italic><bold>Verify</bold></italic>.</p>
<p><italic><bold>Setup</bold></italic><inline-formula id="j_infor644_ineq_029"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">λ</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({1^{\lambda }},{1^{N}})$]]></tex-math></alternatives></inline-formula>: Choose <inline-formula id="j_infor644_ineq_030"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">←</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[${\nu _{1}},{\nu _{2}},\dots ,{\nu _{N}}\gets {\mathbb{Z}_{q}^{n}}$]]></tex-math></alternatives></inline-formula>, output <inline-formula id="j_infor644_ineq_031"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$prms=({\nu _{1}},{\nu _{2}},\dots ,{\nu _{N}})$]]></tex-math></alternatives></inline-formula>.</p>
<p><italic><bold>KeyGen</bold></italic><inline-formula id="j_infor644_ineq_032"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(id)$]]></tex-math></alternatives></inline-formula>: Given identity <inline-formula id="j_infor644_ineq_033"><alternatives><mml:math>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi></mml:math><tex-math><![CDATA[$id$]]></tex-math></alternatives></inline-formula>, output the public and private keys <inline-formula id="j_infor644_ineq_034"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$p{k_{id,sig}}={\mathbf{A}_{id}}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_035"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">td</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">←</mml:mo>
<mml:mi mathvariant="normal">TrapGen</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$s{k_{id,sig}}={\mathrm{td}_{id}}\gets \mathrm{TrapGen}({1^{n}},{1^{m}},q)$]]></tex-math></alternatives></inline-formula>.</p>
<p><italic><bold>Sign</bold></italic><inline-formula id="j_infor644_ineq_036"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(id,p{k_{id,sig}})$]]></tex-math></alternatives></inline-formula>: Given identity <inline-formula id="j_infor644_ineq_037"><alternatives><mml:math>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi></mml:math><tex-math><![CDATA[$id$]]></tex-math></alternatives></inline-formula> and the public key <inline-formula id="j_infor644_ineq_038"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$p{k_{id,sig}}$]]></tex-math></alternatives></inline-formula>, output the signature <inline-formula id="j_infor644_ineq_039"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="normal">SamPre</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:mi mathvariant="italic">μ</mml:mi>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="bold">G</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">td</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${\boldsymbol{\sigma }_{i}}=\mathrm{SamPre}({\mathbf{A}_{i}},{\nu _{i}}-\mu \cdot \mathbf{G},{\mathrm{td}_{i}})$]]></tex-math></alternatives></inline-formula>.</p>
<p><italic><bold>Verify</bold></italic><inline-formula id="j_infor644_ineq_040"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(id,p{k_{id,sig}},{\boldsymbol{\sigma }_{i}})$]]></tex-math></alternatives></inline-formula>: Given identity <inline-formula id="j_infor644_ineq_041"><alternatives><mml:math>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi></mml:math><tex-math><![CDATA[$id$]]></tex-math></alternatives></inline-formula>, the public key <inline-formula id="j_infor644_ineq_042"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$p{k_{id,sig}}$]]></tex-math></alternatives></inline-formula> and the signature <inline-formula id="j_infor644_ineq_043"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{\sigma }_{i}}$]]></tex-math></alternatives></inline-formula>, output accept or reject by checking <inline-formula id="j_infor644_ineq_044"><alternatives><mml:math>
<mml:mi mathvariant="italic">f</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="normal">Process</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold">G</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$f({\boldsymbol{\sigma }_{i}})=\mathrm{Process}(\mathbf{G})$]]></tex-math></alternatives></inline-formula> or not.</p>
<p>The algorithm also satisfies homomorphism: <italic><bold>Sign</bold></italic><inline-formula id="j_infor644_ineq_045"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo></mml:math><tex-math><![CDATA[$({\mu _{1}}+{\mu _{2}})=$]]></tex-math></alternatives></inline-formula> <italic><bold>Sign</bold></italic><inline-formula id="j_infor644_ineq_046"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({\mu _{1}})$]]></tex-math></alternatives></inline-formula> + <italic><bold>Sign</bold></italic><inline-formula id="j_infor644_ineq_047"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({\mu _{2}})$]]></tex-math></alternatives></inline-formula>. Its correctness is shown in Gorbunov <italic>et al.</italic> (<xref ref-type="bibr" rid="j_infor644_ref_007">2015</xref>), which has proved that the algorithm meets semantic security in LWE assumption.</p>
</sec>
<sec id="j_infor644_s_005">
<label>2.3</label>
<title>Cosine Similarity Measures</title>
<p>Evaluate the similarity between two vectors by calculating the cosine value of their included angle (Ye, <xref ref-type="bibr" rid="j_infor644_ref_035">2011</xref>). Cosine similarity draws vectors into vector space based on coordinate values, such as the most common two-dimensional space. Cosine similarity focuses on the angular relationship between vectors, not on their absolute size. The range of values is <inline-formula id="j_infor644_ineq_048"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$[-1,1]$]]></tex-math></alternatives></inline-formula>. When measuring the similarity of a pair of texts, when the text content is similar, if word frequency or word vectors are used as features, their Euclidean distance in the feature space may be large. However, the angle between them may be small, resulting in high similarity. Here, this article only focuses on the direction between vectors, and the direction is one direction, so the value range is <inline-formula id="j_infor644_ineq_049"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$[0,1]$]]></tex-math></alternatives></inline-formula>. The closer it is to 1, the more similar the feature vectors of the two parameters are, and vice versa, the less similar they are.</p>
</sec>
</sec>
<sec id="j_infor644_s_006">
<label>3</label>
<title>Model and Design Goal</title>
<p>In this section, we formalize the data trading architecture, system model, security model and design goal. The parameters and explanations used in this paper are shown in the Table <xref rid="j_infor644_tab_001">1</xref> below.</p>
<table-wrap id="j_infor644_tab_001">
<label>Table 1</label>
<caption>
<p>Some used symbols and explanations.</p>
</caption>
<table>
<thead>
<tr>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Parameters</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Description</td>
</tr>
</thead>
<tbody>
<tr>
<td style="vertical-align: top; text-align: left"><italic>λ</italic></td>
<td style="vertical-align: top; text-align: left">Security parameter.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><italic>DTP</italic></td>
<td style="vertical-align: top; text-align: left">Data trading platform.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><italic>IPFS</italic></td>
<td style="vertical-align: top; text-align: left">InterPlanetary File System.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_050"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">B</mml:mi></mml:math><tex-math><![CDATA[$DB$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left">Data buyer.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_051"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">S</mml:mi></mml:math><tex-math><![CDATA[$DS$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left">Data seller.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_052"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">p</mml:mi></mml:math><tex-math><![CDATA[$pp$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left">System public parameters.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><italic>pid</italic></td>
<td style="vertical-align: top; text-align: left">User unique pseudonym identifier.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_053"><alternatives><mml:math>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi></mml:math><tex-math><![CDATA[$mpk$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left">Master public key.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_054"><alternatives><mml:math>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi></mml:math><tex-math><![CDATA[$msk$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left">Master private key.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">C</td>
<td style="vertical-align: top; text-align: left">Ciphertext.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><italic>σ</italic></td>
<td style="vertical-align: top; text-align: left">Signature.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_055"><alternatives><mml:math>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mi mathvariant="italic">w</mml:mi></mml:math><tex-math><![CDATA[$kw$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left">Trading data keyword tag.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><bold>A</bold>, <bold>R</bold>, <bold>E</bold></td>
<td style="vertical-align: top; text-align: left">Lattice public matrix, random blinding matrix, noise matrix.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_056"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi></mml:math><tex-math><![CDATA[$pk$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_057"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi></mml:math><tex-math><![CDATA[$sk$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left">Public and private key.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_058"><alternatives><mml:math>
<mml:mi mathvariant="bold-italic">s</mml:mi></mml:math><tex-math><![CDATA[$\boldsymbol{s}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_059"><alternatives><mml:math>
<mml:mi mathvariant="bold-italic">z</mml:mi></mml:math><tex-math><![CDATA[$\boldsymbol{z}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left">User secret vector, auxiliary random vector.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><italic>q</italic></td>
<td style="vertical-align: top; text-align: left">Lattice prime modulus (scalar).</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left"><italic>m,n,H</italic></td>
<td style="vertical-align: top; text-align: left">Lattice dimension parameters.</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><italic>H</italic>, <inline-formula id="j_infor644_ineq_060"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${H_{1}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Security hash function.</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>All abbreviations defined in this table are the exclusive standard notation adopted across the full manuscript; alternate variant shorthands are prohibited.</p>
<sec id="j_infor644_s_007">
<label>3.1</label>
<title>Data Trading Architecture and System Model</title>
<p>There are many ways to trade data now. In particular, this article focuses on the data trading platform model, whose advantage is that buyers and sellers can conduct open and free transactions bilaterally, and the platform manages their data transaction processes and related assets. This article designs a smart logistics data trading platform architecture, including five layers: trading data perception layer, trading data generation layer, network layer, data trading platform layer, data trading application layer, as shown in the Fig. <xref rid="j_infor644_fig_001">1</xref>.</p>
<list>
<list-item id="j_infor644_li_010">
<label>•</label>
<p><bold>Trading data perception layer</bold>: This layer contains many sensors or terminal devices in the logistics field (such as position sensors, RFID, radar, GPS, temperature sensors, etc.) and is mainly used to collect raw data.</p>
<p>
<fig id="j_infor644_fig_001">
<label>Fig. 1</label>
<caption>
<p>Data trading architecture in smart logistics.</p>
</caption>
<graphic xlink:href="infor644_g001.jpg"/>
</fig>
</p>
</list-item>
<list-item id="j_infor644_li_011">
<label>•</label>
<p><bold>Trading data generation layer</bold>: This layer mainly processes raw data and generates transaction data, such as training the original data set to obtain AI models or model parameters.</p>
</list-item>
<list-item id="j_infor644_li_012">
<label>•</label>
<p><bold>Network layer</bold>: This layer mainly provides network connection services. The connection methods can be wireless LAN, WSN, WPAN, GPRS, 3G, 4G, 5G, 6G, satellite network, quantum network, ISDN, PSIN, etc.</p>
</list-item>
<list-item id="j_infor644_li_013">
<label>•</label>
<p><bold>Data trading platform layer</bold>: This layer is the trading platform layer, which is based on the alliance chain and smart contracts and provides trading platform services to buyers and sellers. Buyers or sellers can find potential customers on the platform and benefit from it.</p>
</list-item>
<list-item id="j_infor644_li_014">
<label>•</label>
<p><bold>Data trading application layer</bold>: This layer has a large number of smart logistics scenarios and their applications, including freight Internet of Things data transactions, smart warehousing site selection data transactions, smart warehousing management data transactions, smart distribution data transactions, smart park freight management data transactions, etc.</p>
</list-item>
</list>
<p>Based on this architecture, a flexible and dynamic privacy-preserving data trading scheme with lattice homomorphism and federated learning in blockchain-enhanced smart logistics is designed, whose system model is shown in Fig. <xref rid="j_infor644_fig_002">2</xref>. In the model, there are four entities: data trading platform, InterPlanetary File System (IPFS), data buyer, data seller. 
<list>
<list-item id="j_infor644_li_015">
<label>•</label>
<p><bold>Data trading platform (DTP)</bold>: The <italic>DTP</italic> is responsible for providing data transaction services to registered users. Users with data selling needs and data buying needs can find potential customers on this platform. The platform has an administrator who is responsible for user registration, key generation and distribution, smooth transaction process, data quality measurement and negotiated pricing, model parameter aggregation and re-encryption, incentive calculation and issuance, feedback adjustment operations. It is worth noting that dynamic access control and authentication are also completed here.</p>
<p>
<fig id="j_infor644_fig_002">
<label>Fig. 2</label>
<caption>
<p>System model.</p>
</caption>
<graphic xlink:href="infor644_g002.jpg"/>
</fig>
</p>
</list-item>
<list-item id="j_infor644_li_016">
<label>•</label>
<p><bold>InterPlanetary File System (IPFS)</bold>: The IPFS, as a distributed storage system, provides storage functions. Both blockchain data and user data can be stored here.</p>
</list-item>
<list-item id="j_infor644_li_017">
<label>•</label>
<p><bold>Data buyer (DB)</bold>: The DB has the need to buy data and can find the required data on the data trading platform and conduct transactions.</p>
</list-item>
<list-item id="j_infor644_li_018">
<label>•</label>
<p><bold>Data seller (DS)</bold>: The DS has the need to sell data and can find potential customers on the data trading platform and conduct transactions to obtain profits. Data sellers have a series of terminal devices that can sense and collect large amounts of data in real time.</p>
</list-item>
</list>
</p>
</sec>
<sec id="j_infor644_s_008">
<label>3.2</label>
<title>Formal Trust and Threat Model</title>
<p>This article proposes a privacy-preserving logistics data transaction scheme, setting the DTP to be credible and other participants to be semi-credible (honest but curious). In addition, it is assumed that there is a malicious attacker outside the system, hoping to obtain some useful information through open eavesdropping, interception and retransmission, conspiracy attacks and other attack methods. 
<list>
<list-item id="j_infor644_li_019">
<label>(1)</label>
<p>Entity Trust Classification. We first strictly define the trust level of each participant in the consortium blockchain logistics data trading system:</p>
<list>
<list-item id="j_infor644_li_020">
<label>1)</label>
<p>Data Trading Platform (DTP): Regulated trusted participant under consortium multi-party governance (core trust assumption with industrial &amp; cryptographic justifications provided below).</p>
</list-item>
<list-item id="j_infor644_li_021">
<label>2)</label>
<p>Data Seller (DS, logistics merchants/warehouses) &amp; Data Buyer (DB, logistics demand parties): Honest-but-curious (HbC, semi-trusted). They strictly follow protocol workflows but passively attempt to infer others’ private model data from ciphertext transcripts.</p>
</list-item>
<list-item id="j_infor644_li_022">
<label>3)</label>
<p>External Active Adversary <inline-formula id="j_infor644_ineq_061"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">e</mml:mi>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathcal{A}_{ext}}$]]></tex-math></alternatives></inline-formula>: Fully malicious untrusted attacker. Controls public communication channels, executes eavesdropping, replay, man-in-the-middle transmission attacks, but cannot break LWE lattice hardness assumptions.</p>
</list-item>
</list>
<p>Justification for Trusted DTP Assumption in Consortium Blockchain Logistics Scenarios. The DTP is designated as a trusted node only for permissioned Hyperledger Fabric consortium deployments, supported by two layers of guarantees: Institutional consortium governance constraint and Built-in cryptographic safeguards limiting DTP data leakage capability. The DTP operator is jointly nominated and supervised by multiple independent logistics enterprises, third-party regulatory auditors and equipment manufacturers that form the consortium committee. All core platform logic (user registration, re-encryption, pricing, incentive settlement) is hard-coded into open-source, auditable Fabric chaincode. Any platform operation record is timestamped and aggregated to multi-peer blocks; the consortium can launch joint arbitration and suspend DTP permissions if abnormal behaviours are detected. There is no single organization controlling the platform independently, eliminating unilateral malicious operation incentives. Even if the DTP is honest-but-curious or partially compromised, a series of hard-coded chain rules and lattice cryptographic restrictions prevent it from extracting plaintext private logistics data or tampering trading parameters arbitrarily, as detailed in Section <xref rid="j_infor644_s_002">2</xref> below. The trusted assumption only means the DTP will not actively launch large-scale malicious attacks; it does not grant the platform unrestricted access to plaintext sensitive information.</p>
</list-item>
<list-item id="j_infor644_li_023">
<label>(2)</label>
<p>Technical Safeguards Against Curious / Compromised DTP. To eliminate single-point risks caused by DTP’s multi-core administrative authorities (registration, key generation, proxy re-encryption, quality scoring, incentive allocation), we embed five mandatory protection mechanisms into the smart contract and lattice cryptography workflow:</p>
<p><bold>Safeguard 1:</bold> Distributed master key split for lattice cryptography. The global lattice master public key $mpk$ is jointly generated via multi-peer distributed setup across consortium nodes, not solely produced by DTP. All user individual trapdoor secret keys <inline-formula id="j_infor644_ineq_062"><alternatives><mml:math>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$t{d_{id}}$]]></tex-math></alternatives></inline-formula> are locally derived by each DS/DB after receiving shared public parameters; the DTP never stores or accesses any user’s complete private trapdoor. Even if DTP is compromised, it cannot obtain the decryption secret required to recover plaintext FL model parameters from ciphertexts.</p>
<p><bold>Safeguard 2:</bold> Verifiable cosine similarity quality evaluation chaincode. All gradient feature vector extraction and cosine similarity <inline-formula id="j_infor644_ineq_063"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$C{S_{i}}$]]></tex-math></alternatives></inline-formula> calculation logic is deployed as open, deterministic on-chain smart contracts. The DTP only triggers the computation task and cannot modify the feature extraction algorithm or similarity formula. Any DS can upload test benchmark model parameters to the chain and verify the DTP’s quality scoring result against the fixed algorithm; tampered quality scores will be identified and logged as arbitration evidence.</p>
<p><bold>Safeguard 3:</bold> Zero-plaintext proxy re-encryption constraint. The LHPRE re-encryption key <inline-formula id="j_infor644_ineq_064"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">B</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$s{k_{DTP\to DB}}$]]></tex-math></alternatives></inline-formula> is generated by combining DB’s public lattice key, without exposing DS’s original plaintext model data to DTP. The DTP only manipulates blinded LWE ciphertext groups during re-encryption, and the lattice noise term permanently masks plaintext information. Even a curious DTP cannot strip LWE noise to recover raw logistics model values during re-encryption processing.</p>
<p><bold>Safeguard 4:</bold> Multi-party arbitration for incentive &amp; pricing parameters. The weight coefficients <inline-formula id="j_infor644_ineq_065"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.6</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}=0.6$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_066"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.4</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}=0.4$]]></tex-math></alternatives></inline-formula> of the incentive formula, as well as unit data pricing rules, are written into immutable genesis block chaincode. The DTP cannot unilaterally adjust reward distribution standards; any parameter modification requires multi-consortium peer voting with majority signature approval. All historical settlement records are archived for audit to prevent DTP’s malicious profit manipulation.</p>
<p><bold>Safeguard 5:</bold> Separation of oracle write &amp; read authority. The oracle module responsible for IPFS on/off-chain synchronization runs on independent Fabric peer nodes isolated from the DTP service backend. DTP only sends ciphertext upload requests to the oracle, and cannot directly modify or delete off-chain IPFS storage files or tamper with the on-chain hash binding records. All synchronization logs are independently stored by oracle nodes for cross-checking against DTP operation traces.</p>
</list-item>
<list-item id="j_infor644_li_024">
<label>(3)</label>
<p>Formal Threat Capability Bound Definition. 1) HbC DS/DB: Can store all received ciphertext, signature and transaction metadata; cannot forge valid lattice signatures or modify on-chain records without BLS/LHS signature failure; cannot reconstruct plaintext even by collating multiple transaction transcripts (proven in Theorem <xref rid="j_infor644_stat_005">3</xref>). 2) Curious/compromised DTP: Can execute all authorized platform workflow operations, but is blocked by the five above safeguards from recovering user plaintext data or arbitrarily altering trading calculation parameters. 3) External Adversary <inline-formula id="j_infor644_ineq_067"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">e</mml:mi>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathcal{A}_{ext}}$]]></tex-math></alternatives></inline-formula>: Can intercept all public channel ciphertext packets, replay old transactions, inject forged transmission requests; cannot solve LWE lattice problems to break ciphertext semantic security.</p>
</list-item>
<list-item id="j_infor644_li_025">
<label>(4)</label>
<p>Design Goal Supplement. Based on the clarified trust model, we add a targeted design goal: The system shall resist privacy leakage and parameter tampering risks even when the DTP node is honest-but-curious or partially compromised, via distributed key generation, verifiable on-chain algorithms and multi-party consortium arbitration mechanisms.</p>
</list-item>
</list>
</p>
</sec>
<sec id="j_infor644_s_009">
<label>3.3</label>
<title>Design Goal</title>
<p>Based on the data trading platform model, this paper designs a privacy protection model suitable for smart logistics data transactions. Based on this, the goals to be achieved by this plan are as follows: 
<list>
<list-item id="j_infor644_li_026">
<label>(1)</label>
<p><bold>Privacy protection</bold>. The private data involved in this solution includes original data, transaction data, user identity information, etc. One of our purposes is to protect these private data from being leaked.</p>
</list-item>
<list-item id="j_infor644_li_027">
<label>(2)</label>
<p><bold>Flexible and dynamic authentication and transactions</bold>. This solution needs to achieve flexible and dynamic data transactions, especially for flexible re-encryption and dynamic updating of the ciphertext of transaction data.</p>
</list-item>
<list-item id="j_infor644_li_028">
<label>(3)</label>
<p><bold>Feasible incentive mechanism and reliable data quality assessment</bold>. This solution is designed based on the trading platform. Implementing a feasible incentive mechanism to stimulate user enthusiasm for participation and reliable data evaluation methods need to be considered.</p>
</list-item>
</list>
</p>
</sec>
</sec>
<sec id="j_infor644_s_010">
<label>4</label>
<title>Privacy-Preserving Data Trading Scheme</title>
<sec id="j_infor644_s_011">
<label>4.1</label>
<title>Design Rationale</title>
<p>Logistics data generally refers to the general term for knowledge, materials, images, data, and files of various logistics activities. It has the characteristics of various types, complex sources, large amount of information, and fast update speed. Data trading can not only better leverage the value of the data itself, but also better predict market demands and changes, optimize transportation routes, and improve warehousing efficiency. Most of the current smart logistics data transaction architecture is based on blockchain platforms, and shared privacy protection research is mostly based on cryptography and privacy computing technology. However, problems such as the uneven quality of transaction data, imperfect incentive mechanisms, inconsistencies on and off the chain, and quantum computer attacks have still not been solved well. Based on this, this article considers that the above problems can be solved well based on the lattice homomorphic proxy encryption algorithm, blockchain and privacy computing.</p>
<p>This article hopes to build an open, secure, and incentive-based data transaction paradigm. Different from traditional data transactions, the transaction data in this article is logistics data, and the embodied form of transaction data is the model or parameters after model training, rather than the original data or data set. On the one hand, this can improve the efficiency and accuracy of data sharing, and on the other hand, it can also protect the identity privacy of data users to the greatest extent. The specific structure and detailed description of the scheme are as follows.</p>
</sec>
<sec id="j_infor644_s_012">
<label>4.2</label>
<title>Detailed Construction</title>
<p>The proposed privacy-preserving data trading scheme with lattice homomorphism and federated learning in blockchain-enhanced smart logistics in this article contains four phases: initialization phase, model training, parameter upload and parameter quality assessment phase, model parameter data transaction phase, trading data update and tracking phase. 
<list>
<list-item id="j_infor644_li_029">
<label>(1)</label>
<p><bold>Initialization phase</bold>: The initialization phase consists of two parts: public parameters generation, user registration and key generation.</p>
<list>
<list-item id="j_infor644_li_030">
<label>1)</label>
<p><bold>Public parameters generation</bold>. The <italic>DTP</italic> randomly chooses <inline-formula id="j_infor644_ineq_068"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">←</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[${\nu _{1}},{\nu _{2}},\dots ,{\nu _{N}}\gets {\mathbb{Z}_{q}^{n}}$]]></tex-math></alternatives></inline-formula> for the signature algorithm <inline-formula id="j_infor644_ineq_069"><alternatives><mml:math>
<mml:mi mathvariant="normal">LHS</mml:mi></mml:math><tex-math><![CDATA[$\mathrm{LHS}$]]></tex-math></alternatives></inline-formula> and inputs the security parameter <italic>λ</italic> to the <inline-formula id="j_infor644_ineq_070"><alternatives><mml:math>
<mml:mi mathvariant="normal">LHPRE</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi mathvariant="normal">Setup</mml:mi></mml:math><tex-math><![CDATA[$\mathrm{LHPRE}.\mathrm{Setup}$]]></tex-math></alternatives></inline-formula> algorithm, outputs <inline-formula id="j_infor644_ineq_071"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">N</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">χ</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$pp:=(n,m,q,N,\chi ,\sigma ,{\nu _{1}},{\nu _{2}},\dots ,{\nu _{N}})$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_072"><alternatives><mml:math>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn mathvariant="bold">1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="bold">B</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$mpk:=(\mathbf{A},{\mathbf{A}_{\mathbf{1}}},\mathbf{B},\mathbf{u})$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_073"><alternatives><mml:math>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold">S</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$msk:=(\mathbf{S})$]]></tex-math></alternatives></inline-formula>.</p>
</list-item>
<list-item id="j_infor644_li_031">
<label>2)</label>
<p><bold>User registration and key generation</bold>. Each user (<inline-formula id="j_infor644_ineq_074"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">B</mml:mi></mml:math><tex-math><![CDATA[$DB$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_075"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">S</mml:mi></mml:math><tex-math><![CDATA[$DS$]]></tex-math></alternatives></inline-formula>) with <inline-formula id="j_infor644_ineq_076"><alternatives><mml:math>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi></mml:math><tex-math><![CDATA[$id$]]></tex-math></alternatives></inline-formula> needs to register and obtains pseudonym <inline-formula id="j_infor644_ineq_077"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi></mml:math><tex-math><![CDATA[$pid$]]></tex-math></alternatives></inline-formula>, executes the <inline-formula id="j_infor644_ineq_078"><alternatives><mml:math>
<mml:mi mathvariant="normal">LHPRE</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi mathvariant="normal">KeyGen</mml:mi></mml:math><tex-math><![CDATA[$\mathrm{LHPRE}.\mathrm{KeyGen}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_079"><alternatives><mml:math>
<mml:mi mathvariant="normal">LHS</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi mathvariant="normal">KeyGen</mml:mi></mml:math><tex-math><![CDATA[$\mathrm{LHS}.\mathrm{KeyGen}$]]></tex-math></alternatives></inline-formula> algorithms. Given <inline-formula id="j_infor644_ineq_080"><alternatives><mml:math>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>×</mml:mo>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[$\mathbf{A}\in {\mathbb{Z}_{q}^{n\times m}}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_081"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn mathvariant="bold">1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mi mathvariant="bold">B</mml:mi>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>×</mml:mo>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[${\mathbf{A}_{\mathbf{1}}}+H(id)\mathbf{B}\in {\mathbb{Z}_{q}^{n\times m}}$]]></tex-math></alternatives></inline-formula>, a basis <bold>S</bold> for lattice <inline-formula id="j_infor644_ineq_082"><alternatives><mml:math>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">Λ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">⊥</mml:mo>
</mml:mrow>
</mml:msubsup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${\Lambda _{q}^{\perp }}(\mathbf{A})$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_083"><alternatives><mml:math>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[$\mathbf{u}\in {\mathbb{Z}_{q}^{n}}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_084"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">td</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">←</mml:mo>
<mml:mi mathvariant="normal">TrapGen</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${\mathrm{td}_{id}}\gets \mathrm{TrapGen}({1^{n}},{1^{m}},q)$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_085"><alternatives><mml:math>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo mathvariant="normal">&gt;</mml:mo>
<mml:mi mathvariant="italic">O</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:mo movablelimits="false">log</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msqrt>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="italic">ω</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:mo movablelimits="false">log</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:msqrt>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$\sigma \gt O(\sqrt{\log n})\cdot \omega (\sqrt{\log (2m)})$]]></tex-math></alternatives></inline-formula>, output a secret key <inline-formula id="j_infor644_ineq_086"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$s{k_{id}}$]]></tex-math></alternatives></inline-formula>: <inline-formula id="j_infor644_ineq_087"><alternatives><mml:math>
<mml:mi mathvariant="bold">s</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[$\mathbf{s}=(1,-{\mathbf{z}^{t}})\in {\mathbb{Z}^{2m+1}}$]]></tex-math></alternatives></inline-formula> and the corresponding public key <inline-formula id="j_infor644_ineq_088"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$p{k_{id}}$]]></tex-math></alternatives></inline-formula>: <inline-formula id="j_infor644_ineq_089"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo stretchy="false">∥</mml:mo>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mo fence="true" stretchy="false">]</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>×</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[${\mathbf{A}_{id}}={[\mathbf{u}\parallel \mathbf{H}]^{t}}\in {\mathbb{Z}_{q}^{(2m+1)\times n}}$]]></tex-math></alternatives></inline-formula>, and the public and private keys of signature algorithm: <inline-formula id="j_infor644_ineq_090"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$p{k_{id,sig}}={\mathbf{A}_{id}}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_091"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">td</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$s{k_{id,sig}}={\mathrm{td}_{id}}$]]></tex-math></alternatives></inline-formula> for identity <inline-formula id="j_infor644_ineq_092"><alternatives><mml:math>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi></mml:math><tex-math><![CDATA[$id$]]></tex-math></alternatives></inline-formula>.</p>
</list-item>
</list>
</list-item>
<list-item id="j_infor644_li_032">
<label>(2)</label>
<p><bold>Model training, parameter upload and parameter quality assessment phase</bold>: This phase mainly includes the collection of original data, model training, encrypted upload of model parameters, verification, model quality assessment and off-chain batch storage.</p>
<list>
<list-item id="j_infor644_li_033">
<label>1)</label>
<p><bold>Collection of raw data</bold>. Within a local domain, raw data is collected by the associated data seller (usually the data owner). These data may involve different aspects, and data sellers need to classify, preprocess and clean these data.</p>
</list-item>
<list-item id="j_infor644_li_034">
<label>2)</label>
<p><bold>Model training</bold>. The data seller <inline-formula id="j_infor644_ineq_093"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{S_{i}}$]]></tex-math></alternatives></inline-formula> performs the federated learning model training operation and obtains the transaction data, that is, the model parameter <inline-formula id="j_infor644_ineq_094"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$M{P_{i}}$]]></tex-math></alternatives></inline-formula>. The <inline-formula id="j_infor644_ineq_095"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{S_{i}}$]]></tex-math></alternatives></inline-formula> can collaborate with other participants for training, or they can perform federated collaboration with the <italic>DTP</italic> administrator to finally obtain transaction data. Note that the transaction data (model parameters) here are parameters of the federated model <inline-formula id="j_infor644_ineq_096"><alternatives><mml:math>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:mi mathvariant="italic">e</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi></mml:math><tex-math><![CDATA[$FedM$]]></tex-math></alternatives></inline-formula>.</p>
</list-item>
<list-item id="j_infor644_li_035">
<label>3)</label>
<p><bold>Encrypted upload of model parameters</bold>. The <inline-formula id="j_infor644_ineq_097"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{S_{i}}$]]></tex-math></alternatives></inline-formula> encrypts <inline-formula id="j_infor644_ineq_098"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$M{P_{i}}$]]></tex-math></alternatives></inline-formula> by <inline-formula id="j_infor644_ineq_099"><alternatives><mml:math>
<mml:mi mathvariant="normal">LHPRE</mml:mi>
<mml:mo>.</mml:mo>
<mml:mi mathvariant="normal">Enc</mml:mi></mml:math><tex-math><![CDATA[$\mathrm{LHPRE}.\mathrm{Enc}$]]></tex-math></alternatives></inline-formula> algorithm with the <italic>DTP</italic>’s public key to obtain <inline-formula id="j_infor644_ineq_100"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="bold">G</mml:mi></mml:math><tex-math><![CDATA[${\mathbf{C}_{i}}={\mathbf{A}_{DTP}}{\mathbf{R}_{i}}+2{\mathbf{E}_{i}}+M{P_{i}}\cdot \mathbf{G}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_101"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="normal">SamPre</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="bold">G</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">td</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${\boldsymbol{\sigma }_{i}}=\mathrm{SamPre}({\mathbf{A}_{i}},{\nu _{i}}-{\mathbf{C}_{i}}\cdot \mathbf{G},{\mathrm{td}_{i}})$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_102"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${M_{i}}=({\mathbf{C}_{i}},{\boldsymbol{\sigma }_{i}},pi{d_{i}},k{w_{i}},{t_{i}})$]]></tex-math></alternatives></inline-formula>, where <inline-formula id="j_infor644_ineq_103"><alternatives><mml:math>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$k{w_{i}}$]]></tex-math></alternatives></inline-formula> denotes the keywords of the model parameter and <inline-formula id="j_infor644_ineq_104"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${t_{i}}$]]></tex-math></alternatives></inline-formula> represents the timestamp, which is used to resist replay attacks. Then, the <inline-formula id="j_infor644_ineq_105"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{S_{i}}$]]></tex-math></alternatives></inline-formula> sends <inline-formula id="j_infor644_ineq_106"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${M_{i}}$]]></tex-math></alternatives></inline-formula> to the <italic>DTP</italic>.</p>
</list-item>
<list-item id="j_infor644_li_036">
<label>4)</label>
<p><bold>Verification</bold>. After receiving the message, the <italic>DTP</italic> needs to verify the legitimacy of the identity. In order to improve efficiency, multiple signatures are aggregated on the same stage and then verified as a whole.</p>
</list-item>
<list-item id="j_infor644_li_037">
<label>5)</label>
<p><bold>Model quality assessment</bold>. Assessment of data quality is an important task, especially for transactional data. This article uses the cosine similarity measurement method to evaluate the similarity between model parameters, and then obtain the quality <inline-formula id="j_infor644_ineq_107"><alternatives><mml:math>
<mml:mtext mathvariant="italic">quali</mml:mtext>
<mml:mtext>_</mml:mtext>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi></mml:math><tex-math><![CDATA[$\textit{quali}\text{\_}td$]]></tex-math></alternatives></inline-formula> of transaction data. For a more detailed introduction, see Section <xref rid="j_infor644_s_013">4.3</xref>.</p>
</list-item>
<list-item id="j_infor644_li_038">
<label>6)</label>
<p><bold>Off-chain batch storage &amp; Oracle bidirectional synchronization mechanism</bold>. The DTP is stored off-chain in IPFS based on the type and quality classification of transaction data. Note that the data stored here is still in ciphertext state. Finally, the hash address <inline-formula id="j_infor644_ineq_108"><alternatives><mml:math>
<mml:mtext mathvariant="italic">Torrent. hash</mml:mtext></mml:math><tex-math><![CDATA[$\textit{Torrent. hash}$]]></tex-math></alternatives></inline-formula> returned by IPFS together with <inline-formula id="j_infor644_ineq_109"><alternatives><mml:math>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mi mathvariant="italic">w</mml:mi></mml:math><tex-math><![CDATA[$kw$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_110"><alternatives><mml:math>
<mml:mtext mathvariant="italic">price</mml:mtext></mml:math><tex-math><![CDATA[$\textit{price}$]]></tex-math></alternatives></inline-formula> are stored in the blockchain in the form of transaction records, where <inline-formula id="j_infor644_ineq_111"><alternatives><mml:math>
<mml:mtext mathvariant="italic">price</mml:mtext></mml:math><tex-math><![CDATA[$\textit{price}$]]></tex-math></alternatives></inline-formula> is the price of the data, determined by the platform based on data quality and demand. Blockchain oracle technology (Meng <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_023">2021</xref>) is used here to preserve consistent information on and off the chain. For a more detailed introduction, see Section <xref rid="j_infor644_s_013">4.3</xref>. After passing signature verification and quality scoring, the DTP invokes a dedicated logistics data blockchain oracle to complete bidirectional data synchronization between off-chain IPFS distributed storage and consortium blockchain ledger, realizing persistent consistency of ciphertext storage addresses and on-chain transaction records. The custom logistics oracle deployed on Fabric peers contains two core sub-modules: Write Synchronization Submodule: Responsible for pushing uploaded ciphertext batches to IPFS, computing unique content hash, and writing hash metadata to on-chain blocks; Consistency Check &amp; Error Correction Submodule: Periodically pulls IPFS file metadata and cross-compares with on-chain stored hash values; triggers automatic repair when hash mismatch or file missing anomalies are detected.</p>
</list-item>
</list>
<p>Complete Real-Time Synchronization Workflow (Executed after DS cipher submission)}. Step 1: The oracle receives validated ciphertext batch <inline-formula id="j_infor644_ineq_112"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${M_{i}}=({C_{i}},{\sigma _{i}},pi{d_{i}},k{w_{i}},{t_{i}})$]]></tex-math></alternatives></inline-formula> from DTP smart contract. Step 2: Oracle calls IPFS client API to batch store ciphertext tuples into distributed off-chain storage, and returns immutable IPFS content-addressable hash <inline-formula id="j_infor644_ineq_113"><alternatives><mml:math>
<mml:mtext mathvariant="italic">Torrent.hash</mml:mtext></mml:math><tex-math><![CDATA[$\textit{Torrent.hash}$]]></tex-math></alternatives></inline-formula> after upload completion. Step 3: The oracle packages a standardized on-chain synchronization transaction, which includes: DS pseudonym <inline-formula id="j_infor644_ineq_114"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$pi{d_{i}}$]]></tex-math></alternatives></inline-formula>, data keyword <inline-formula id="j_infor644_ineq_115"><alternatives><mml:math>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$k{w_{i}}$]]></tex-math></alternatives></inline-formula>, transaction timestamp <inline-formula id="j_infor644_ineq_116"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${t_{i}}$]]></tex-math></alternatives></inline-formula>, quality score <inline-formula id="j_infor644_ineq_117"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mtext mathvariant="italic">quali</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\textit{quali}_{td}}$]]></tex-math></alternatives></inline-formula>, IPFS storage hash <inline-formula id="j_infor644_ineq_118"><alternatives><mml:math>
<mml:mtext mathvariant="italic">Torrent.hash</mml:mtext></mml:math><tex-math><![CDATA[$\textit{Torrent.hash}$]]></tex-math></alternatives></inline-formula>, negotiated transaction price <inline-formula id="j_infor644_ineq_119"><alternatives><mml:math>
<mml:mtext mathvariant="italic">price</mml:mtext></mml:math><tex-math><![CDATA[$\textit{price}$]]></tex-math></alternatives></inline-formula>. Step 4: The synchronization transaction is broadcast to Fabric Raft consensus peers, packed into blocks and permanently written to the on-chain transaction ledger. Only lightweight metadata (hash, identity, price) is recorded on-chain; heavy ciphertext raw data is fully stored off-chain on IPFS to reduce blockchain storage overhead. Step 5: After block confirmation, the oracle writes a synchronization success flag back to the IPFS file’s extended metadata, marking the ciphertext batch as “on-chain bound” to complete one round of consistent write synchronization.</p>
<p>The oracle executes a background consistency polling task every 300 seconds to eliminate storage inconsistency risks caused by network jitter, IPFS node downtime, or incomplete uploads. Three typical fault handling rules are defined: IPFS file loss anomaly: When the oracle cannot retrieve the ciphertext file corresponding to an on-chain recorded <inline-formula id="j_infor644_ineq_120"><alternatives><mml:math>
<mml:mtext mathvariant="italic">Torrent.hash</mml:mtext></mml:math><tex-math><![CDATA[$\textit{Torrent.hash}$]]></tex-math></alternatives></inline-formula> from the IPFS cluster, it automatically pulls the backup ciphertext copy cached temporarily by DTP, re-uploads to IPFS, updates the new hash value to a supplementary on-chain correction transaction, and logs the repair event in the oracle audit table. Hash mismatch anomaly: If the ciphertext file read from IPFS generates a hash value inconsistent with the on-chain recorded <inline-formula id="j_infor644_ineq_121"><alternatives><mml:math>
<mml:mtext mathvariant="italic">Torrent.hash</mml:mtext></mml:math><tex-math><![CDATA[$\textit{Torrent.hash}$]]></tex-math></alternatives></inline-formula>, the oracle determines the ciphertext has been tampered off-chain; it triggers a transaction invalidation notification on-chain, freezes the corresponding data seller’s transaction qualification, and retransmits the original verified ciphertext batch to regenerate a valid IPFS hash for ledger alignment. Asynchronous upload delay anomaly: If the oracle fails to receive the IPFS upload completion callback within a 10-second timeout window, it suspends the on-chain record writing process, retries the IPFS storage interface three times sequentially, and only commits the synchronization transaction after obtaining a valid hash to avoid empty invalid ledger entries.</p>
</list-item>
<list-item id="j_infor644_li_039">
<label>(3)</label>
<p><bold>Model parameter data trading phase</bold>: This phase mainly includes the transaction requests, confirmation and payment, re-encryption and distribution, data reading, and income distribution.</p>
<list>
<list-item id="j_infor644_li_040">
<label>1)</label>
<p><bold>Transaction requests</bold>. The <inline-formula id="j_infor644_ineq_122"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{B_{j}}$]]></tex-math></alternatives></inline-formula> hopes to purchase some high-quality federated learning model parameters, taking smart logistics address recognition as an example. The <inline-formula id="j_infor644_ineq_123"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{B_{j}}$]]></tex-math></alternatives></inline-formula> retrieves relevant records on the platform, selects the data who wish to purchase based on keyword descriptions, prices, etc., and sends a purchase request to the <italic>DTP</italic>.</p>
<p>
<fig id="j_infor644_fig_003">
<label>Algorithm 1</label><graphic xlink:href="infor644_g003.jpg"/>
</fig>
</p>
</list-item>
<list-item id="j_infor644_li_041">
<label>2)</label>
<p><bold>Dynamic authentication.</bold> After receiving a dynamic model transaction request, the DTP performs dynamic authentication operations. This authentication adopts a role-based access control strategy and dynamically authenticates based on dynamic transaction requests, using a one-time authentication approach.</p>
<p>This scheme adopts one-time session dynamic authentication with role-based access control (RBAC). Each data trading session generates an exclusive short-lived authentication credential bound to the user pseudonym, trading keyword and time window. We formalize the full lifecycle including credential generation, verification, policy update, expiration revocation and failure handling as Algorithm <xref rid="j_infor644_fig_003">1</xref>. 1) Credential lifetime: 1 trading hour (3600s); after expiration, the credential is automatically invalid and cannot pass verification. 2) Static base access policy: DS credentials allow data upload; DB credentials only allow data download requests; cross-role operation triggers authentication failure. 3) Revocation ledger: A dedicated on-chain ‘AuthRevokeList’ world state table records all invalidated pseudonym IDs and expired credential timestamps.</p>
</list-item>
<list-item id="j_infor644_li_042">
<label>3)</label>
<p><bold>Confirmation and payment</bold>. The DTP confirms the data that needs to be purchased and sends a payment request to the <inline-formula id="j_infor644_ineq_124"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{B_{j}}$]]></tex-math></alternatives></inline-formula>. The <inline-formula id="j_infor644_ineq_125"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{B_{j}}$]]></tex-math></alternatives></inline-formula> completes confirmation and payment, and returns completed payment information.</p>
</list-item>
<list-item id="j_infor644_li_043">
<label>4)</label>
<p><bold>Re-encryption and distribution</bold>. Once the <inline-formula id="j_infor644_ineq_126"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{B_{j}}$]]></tex-math></alternatives></inline-formula> completes the payment, the <italic>DTP</italic> generates the re-encryption key <inline-formula id="j_infor644_ineq_127"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$s{k_{DTP\to j}}$]]></tex-math></alternatives></inline-formula>: <inline-formula id="j_infor644_ineq_128"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true">[</mml:mo>
<mml:mtable equalrows="false" equalcolumns="false" columnalign="center">
<mml:mtr>
<mml:mtd class="array">
<mml:mi mathvariant="bold">sG</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="array">
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true">]</mml:mo>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>×</mml:mo>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[${\mathbf{P}_{DTP\to j}}={\mathbf{A}_{j}}{\mathbf{R}_{j}}+2{\mathbf{E}_{j}}+\Big[\begin{array}{c}\mathbf{sG}\\ {} \mathbf{0}\end{array}\Big]\in {\mathbb{Z}_{q}^{(2m+1)\times N}}$]]></tex-math></alternatives></inline-formula>, executes aggregation operation <inline-formula id="j_infor644_ineq_129"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">y</mml:mi>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">e</mml:mi>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbf{C}_{agg}}={\textstyle\sum _{payment}}{\mathbf{C}_{i}}$]]></tex-math></alternatives></inline-formula>, re-encryption operation <inline-formula id="j_infor644_ineq_130"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${\mathbf{C}_{DTP\to j}}:={\mathbf{P}_{DTP\to j}}{\mathbf{G}^{-1}}({\mathbf{C}_{agg}})$]]></tex-math></alternatives></inline-formula> and signature operation <inline-formula id="j_infor644_ineq_131"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="normal">SamPre</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ν</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="bold">G</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">td</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${\boldsymbol{\sigma }_{DTP}}=\mathrm{SamPre}({\mathbf{A}_{DTP}},{\nu _{DTP}}-{\mathbf{C}_{DTP\to j}}\cdot \mathbf{G},{\mathrm{td}_{DTP}})$]]></tex-math></alternatives></inline-formula>, generates <inline-formula id="j_infor644_ineq_132"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${M_{DTP}}=({\mathbf{C}_{DTP\to j}},{\boldsymbol{\sigma }_{DTP}},{t_{DTP}})$]]></tex-math></alternatives></inline-formula> and sends to the <inline-formula id="j_infor644_ineq_133"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{B_{j}}$]]></tex-math></alternatives></inline-formula>. 
<disp-formula id="j_infor644_eq_001">
<label>(1)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="right left" columnspacing="0pt">
<mml:mtr>
<mml:mtd class="align-odd">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd class="align-even">
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true" mathvariant="normal">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true">[</mml:mo>
<mml:mtable equalrows="false" equalcolumns="false" columnalign="center">
<mml:mtr>
<mml:mtd class="array">
<mml:mi mathvariant="bold">sG</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="array">
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true">]</mml:mo>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true" mathvariant="normal">)</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mo>:</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">sC</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[\begin{aligned}{}{\mathbf{C}_{DTP\to j}}& :={\mathbf{P}_{DTP\to j}}{\mathbf{G}^{-1}}({\mathbf{C}_{agg}})\\ {} & :=\Big({\mathbf{A}_{j}}{\mathbf{R}_{j}}+2{\mathbf{E}_{j}}+\Big[\begin{array}{c}\mathbf{sG}\\ {} \mathbf{0}\end{array}\Big]\Big){\mathbf{G}^{-1}}({\mathbf{C}_{agg}})\\ {} & :={\mathbf{A}_{j}}{\mathbf{R}_{j}}{\mathbf{G}^{-1}}({\mathbf{C}_{agg}})+2{\mathbf{E}_{j}}{\mathbf{G}^{-1}}({\mathbf{C}_{agg}})+{\mathbf{sC}_{agg}}.\end{aligned}\]]]></tex-math></alternatives>
</disp-formula>
</p>
</list-item>
<list-item id="j_infor644_li_044">
<label>5)</label>
<p><bold>Data reading</bold>. The <inline-formula id="j_infor644_ineq_134"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{B_{j}}$]]></tex-math></alternatives></inline-formula> first verifies the correctness of the signature and timestamp, and then decrypts the aggregated data <inline-formula id="j_infor644_ineq_135"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo fence="true" stretchy="false">⟨</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mo fence="true" stretchy="false">⟩</mml:mo>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mn>2</mml:mn></mml:math><tex-math><![CDATA[$M{P_{agg}}=\langle {\mathrm{s}^{\prime }},\mathrm{c}\rangle \hspace{2.5pt}\text{mod}\hspace{2.5pt}q\hspace{2.5pt}\text{mod}\hspace{2.5pt}2$]]></tex-math></alternatives></inline-formula>, where c be the first column of <inline-formula id="j_infor644_ineq_136"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathrm{C}_{DTP\to j}}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_137"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${\mathrm{s}^{\prime }}$]]></tex-math></alternatives></inline-formula> be the secret key of the <inline-formula id="j_infor644_ineq_138"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{B_{j}}$]]></tex-math></alternatives></inline-formula>. Similarly, dynamic authentication operations are still required before executing transactions. Similar to the previous, this dynamic authentication still adopts a role-based access control strategy. <disp-formula-group id="j_infor644_dg_001">
<disp-formula id="j_infor644_eq_002">
<label>(2)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="right left" columnspacing="0pt">
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo fence="true" maxsize="1.19em" minsize="1.19em">⟨</mml:mo><mml:mstyle mathvariant="bold">
<mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup></mml:mstyle>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo fence="true" maxsize="1.19em" minsize="1.19em">⟩</mml:mo>
<mml:mspace width="2.5pt"/>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mspace width="2.5pt"/>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mn>2</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mphantom>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub></mml:mphantom>
<mml:mo>=</mml:mo><mml:mstyle mathvariant="bold">
<mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup></mml:mstyle>
<mml:mo>·</mml:mo>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">sC</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">)</mml:mo>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mn>2</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mphantom>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub></mml:mphantom>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">(</mml:mo>
<mml:mn>2</mml:mn><mml:mstyle mathvariant="bold">
<mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup></mml:mstyle>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo><mml:mstyle mathvariant="bold">
<mml:mi mathvariant="bold">s</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup></mml:mstyle>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">)</mml:mo>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mn>2</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mphantom>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub></mml:mphantom>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">(</mml:mo>
<mml:mn>2</mml:mn><mml:mstyle mathvariant="bold">
<mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup></mml:mstyle>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo><mml:mstyle mathvariant="bold">
<mml:mi mathvariant="bold">s</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup></mml:mstyle>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">)</mml:mo>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mn>2</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mphantom>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub></mml:mphantom>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="bold">e</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="bold">sG</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mspace width="2.5pt"/>
<mml:mtext>mod</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mn>2</mml:mn>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[\begin{aligned}{}& M{P_{agg}}=\big\langle \mathbf{{s^{\prime }}},\mathbf{c}\big\rangle \hspace{2.5pt}\hspace{2.5pt}\text{mod}\hspace{2.5pt}q\hspace{2.5pt}\hspace{2.5pt}\text{mod}\hspace{2.5pt}2\\ {} & \phantom{M{P_{agg}}}=\mathbf{{s^{\prime }}}\cdot \big({\mathbf{A}_{j}}{\mathbf{R}_{j}}{\mathbf{G}^{-1}}({\mathbf{C}_{agg}})+2{\mathbf{E}_{j}}{\mathbf{G}^{-1}}({\mathbf{C}_{agg}})+{\mathbf{sC}_{agg}}\big)\hspace{2.5pt}\text{mod}\hspace{2.5pt}q\hspace{2.5pt}\text{mod}\hspace{2.5pt}2\\ {} & \phantom{M{P_{agg}}}=\big(2\mathbf{{s^{\prime }}}{\mathbf{E}_{j}}{\mathbf{G}^{-1}}({\mathbf{C}_{agg}})+\mathbf{\mathbf{s}{s^{\prime }}}{\mathbf{C}_{agg}}\big)\hspace{2.5pt}\text{mod}\hspace{2.5pt}q\hspace{2.5pt}\text{mod}\hspace{2.5pt}2\\ {} & \phantom{M{P_{agg}}}=\big(2\mathbf{{s^{\prime }}}{\mathbf{E}_{j}}{\mathbf{G}^{-1}}({\mathbf{C}_{agg}})+\mathbf{\mathbf{s}{s^{\prime }}}{\mathbf{C}_{agg}}\big)\hspace{2.5pt}\text{mod}\hspace{2.5pt}q\hspace{2.5pt}\text{mod}\hspace{2.5pt}2\\ {} & \phantom{M{P_{agg}}}=(2\mathbf{e}+M{P_{agg}}\cdot \mathbf{sG})\hspace{2.5pt}\text{mod}\hspace{2.5pt}q\hspace{2.5pt}\text{mod}\hspace{2.5pt}2=M{P_{agg}}.\end{aligned}\]]]></tex-math></alternatives>
</disp-formula>
<disp-formula id="j_infor644_eq_003">
<label>(3)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="right left" columnspacing="0pt">
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mi mathvariant="bold">e</mml:mi>
<mml:mo>=</mml:mo><mml:mstyle mathvariant="bold">
<mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup></mml:mstyle>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold">G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[\begin{aligned}{}& \mathbf{e}=\mathbf{{s^{\prime }}}{\mathbf{E}_{j}}{\mathbf{G}^{-1}}({\mathbf{C}_{agg}}).\end{aligned}\]]]></tex-math></alternatives>
</disp-formula>
</disp-formula-group></p>
</list-item>
<list-item id="j_infor644_li_045">
<label>6)</label>
<p><bold>Income distribution</bold>. The <italic>DTP</italic> distributes the proceeds from this transaction equally after deducting certain management fees. For a more detailed introduction, see Section <xref rid="j_infor644_s_013">4.3</xref>.</p>
</list-item>
</list>
</list-item>
<list-item id="j_infor644_li_046">
<label>(4)</label>
<p><bold>Trading data update and tracking phase</bold>: The update of transaction data is carried out with the help of blockchain smart contracts. In order to safeguard the legitimate rights and interests of data sellers and promote the normal and smooth progress of data transactions, data dynamic watermark traceability technology (Zhang <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_036">2023</xref>) is specially used to track data flow. Any non-compliant data transfer will be discovered and timely reminders and warnings will be issued.</p>
</list-item>
</list>
</p>
</sec>
<sec id="j_infor644_s_013">
<label>4.3</label>
<title>Data Quality Measurement Algorithm with Cosine Similarity</title>
<p>This subsection fully elaborates the complete pipeline of the proposed model quality evaluation method, including gradient feature extraction, vector normalization, benchmark reference vector generation, cosine similarity calculation, and standardized quality grading rules. We further provide theoretical analysis on feature selection, threshold rationality, and robustness against varying model scales and non-IID logistics data, together with executable formal pseudocode.</p>
<p>After local federated training via FedAvg, we extract the gradient vector of the first fully-connected layer of each local model as the feature vector <inline-formula id="j_infor644_ineq_139"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{raw}}$]]></tex-math></alternatives></inline-formula> for quality assessment. The theoretical rationality is as follows: The first layer undertakes mapping of heterogeneous raw logistics sensing data (order information, temperature, vehicle trajectory, warehouse occupancy), and its gradient distribution directly reflects the fitting degree of local data to global business rules. Deep hidden layers only perform secondary feature recombination, which cannot intuitively distinguish the noise bias of original fragmented logistics datasets. Only adopting the first-layer gradient avoids redundant multi-layer vector computation, reducing the on-chain calculation overhead of the quality evaluation smart contract.</p>
<p>Raw gradient vectors have inconsistent dimensions and magnitudes under different FL model sizes (32/64/128/256 hidden units). We apply L2 normalization to eliminate the interference of vector length on similarity results: <inline-formula id="j_infor644_ineq_140"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">norm</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo><mml:mstyle displaystyle="false">
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">‖</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mo stretchy="false">‖</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mstyle></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{norm}}}=\frac{{\boldsymbol{F}\boldsymbol{V}_{raw}}}{\| {\boldsymbol{F}\boldsymbol{V}_{raw}}{\| _{2}}}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_141"><alternatives><mml:math>
<mml:mo stretchy="false">‖</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mo stretchy="false">‖</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">o</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">w</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">o</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:msqrt></mml:math><tex-math><![CDATA[$\| {\boldsymbol{F}\boldsymbol{V}_{raw}}{\| _{2}}=\sqrt{{\textstyle\sum _{o=1}^{k}}F{V_{raw,o}^{2}}}$]]></tex-math></alternatives></inline-formula>, where <italic>k</italic> denotes the dimension of the raw gradient vector. After normalization, all feature vectors are projected onto a unit hypersphere; cosine similarity only depends on the included angle between vectors, independent of model parameter scale.</p>
<p>Two standard reference vectors <inline-formula id="j_infor644_ineq_142"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">upper</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{upper}}}$]]></tex-math></alternatives></inline-formula> (optimal benchmark) and <inline-formula id="j_infor644_ineq_143"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">lower</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{lower}}}$]]></tex-math></alternatives></inline-formula> (noisy lower bound) are maintained on the consortium blockchain ledger, constructed from historical verified high-quality logistics model samples: Construction of upper reference vector <inline-formula id="j_infor644_ineq_144"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">upper</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{upper}}}$]]></tex-math></alternatives></inline-formula>. Collect all normalized feature vectors <inline-formula id="j_infor644_ineq_145"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo fence="true" stretchy="false">}</mml:mo></mml:math><tex-math><![CDATA[$\{{\boldsymbol{F}\boldsymbol{V}_{1}},{\boldsymbol{F}\boldsymbol{V}_{2}},\dots ,{\boldsymbol{F}\boldsymbol{V}_{T}}\}$]]></tex-math></alternatives></inline-formula> of historically certified high-quality DS from on-chain storage, compute element-wise average as the global optimal gradient benchmark <inline-formula id="j_infor644_ineq_146"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">upper</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo><mml:mstyle displaystyle="false">
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{upper}}}=\frac{1}{T}{\textstyle\sum _{t=1}^{T}}{\boldsymbol{F}\boldsymbol{V}_{t}}$]]></tex-math></alternatives></inline-formula>$. Then execute L2 normalization on <inline-formula id="j_infor644_ineq_147"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">upper</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{upper}}}$]]></tex-math></alternatives></inline-formula> to keep unit length consistent with local feature vectors. Construction of lower reference vector <inline-formula id="j_infor644_ineq_148"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">lower</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{lower}}}$]]></tex-math></alternatives></inline-formula>. Add zero-mean Gaussian noise <inline-formula id="j_infor644_ineq_149"><alternatives><mml:math>
<mml:mi mathvariant="italic">ϵ</mml:mi>
<mml:mo stretchy="false">∼</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="script">N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$\epsilon \sim {\mathcal{N}^{k}}(0,0.2)$]]></tex-math></alternatives></inline-formula> to <inline-formula id="j_infor644_ineq_150"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">upper</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{upper}}}$]]></tex-math></alternatives></inline-formula> to simulate gradient distribution of noisy low-quality logistics data <inline-formula id="j_infor644_ineq_151"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">lower</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">upper</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">ϵ</mml:mi></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{lower}}}={\boldsymbol{F}\boldsymbol{V}_{\textit{upper}}}+\epsilon $]]></tex-math></alternatives></inline-formula>. Normalize <inline-formula id="j_infor644_ineq_152"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">F</mml:mi>
<mml:mi mathvariant="bold-italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">lower</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{F}\boldsymbol{V}_{\textit{lower}}}$]]></tex-math></alternatives></inline-formula> via L2 norm to unify vector scale.</p>
<p>We conduct threshold sensitivity tests across four heterogeneous logistics datasets (express, warehousing, cold chain, transportation) to determine stable classification boundaries for normalized cosine similarity <inline-formula id="j_infor644_ineq_153"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$C{S_{i}}\in [0,1]$]]></tex-math></alternatives></inline-formula>: High-quality model: <inline-formula id="j_infor644_ineq_154"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0.8</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$C{S_{i}}\in [0.8,1.0]$]]></tex-math></alternatives></inline-formula>, Medium-quality model: <inline-formula id="j_infor644_ineq_155"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0.4</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>0.8</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$C{S_{i}}\in [0.4,0.8]$]]></tex-math></alternatives></inline-formula>, Low-quality model: <inline-formula id="j_infor644_ineq_156"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>0.4</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$C{S_{i}}\in [0,0.4]$]]></tex-math></alternatives></inline-formula>. When shifting high/medium threshold within <inline-formula id="j_infor644_ineq_157"><alternatives><mml:math>
<mml:mn>0.7</mml:mn>
<mml:mo stretchy="false">∼</mml:mo>
<mml:mn>0.9</mml:mn></mml:math><tex-math><![CDATA[$0.7\sim 0.9$]]></tex-math></alternatives></inline-formula> and medium/low threshold within <inline-formula id="j_infor644_ineq_158"><alternatives><mml:math>
<mml:mn>0.3</mml:mn>
<mml:mo stretchy="false">∼</mml:mo>
<mml:mn>0.5</mml:mn></mml:math><tex-math><![CDATA[$0.3\sim 0.5$]]></tex-math></alternatives></inline-formula>, the proportion change of each quality group in all datasets is controlled within 4.3%. The threshold partition has strong stability and generalization for diversified logistics business data.</p>
<fig id="j_infor644_fig_004">
<label>Algorithm 2</label><graphic xlink:href="infor644_g004.jpg"/>
</fig>
<p>L2 normalization eliminates magnitude interference of gradient vectors. Experiments prove that model hidden dimensions ranging from 32 to 256 will not cause obvious deviation of similarity grading results. Robustness against non-IID logistics data: Logistics data naturally presents non-independent identical distribution characteristics (cold chain temperature data vs express order data have completely different feature spaces). Our gradient feature extraction focuses on the fitting trend of local data to global business rules rather than raw feature values. Even severely skewed non-IID samples can generate obviously deviated gradient vectors, and cosine similarity can stably quantify data quality gaps.</p>
<p>High-quality logistics datasets generate gradient vectors close to the global optimal convergence direction; noisy, sparse, non-IID local data produce deviated gradient distributions, which can be quantitatively distinguished by cosine similarity metrics as Algorithm <xref rid="j_infor644_fig_004">2</xref>.</p>
<p>The general process includes the following four steps: model parameter acquisition, feature vector extraction, cosine similarity calculation and model parameter quality assessment.</p>
<list>
<list-item id="j_infor644_li_047">
<label>(1)</label>
<p><bold>Model parameter acquisition</bold>: Once federated learning (using FedAvg) is completed, the model parameter <inline-formula id="j_infor644_ineq_159"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$M{P_{i}}$]]></tex-math></alternatives></inline-formula> can be obtained. During the request phase, dynamic authentication or access control remains a necessary step.</p>
</list-item>
<list-item id="j_infor644_li_048">
<label>(2)</label>
<p><bold>Feature vector extraction</bold>: <inline-formula id="j_infor644_ineq_160"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$M{P_{i}}$]]></tex-math></alternatives></inline-formula> is a dictionary format, and it is crucial to extract feature vectors <inline-formula id="j_infor644_ineq_161"><alternatives><mml:math>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$F{V_{i}}$]]></tex-math></alternatives></inline-formula>. Here, the principle of extracting feature vectors is based on the local parameter gradient extraction method, and the extracted feature vectors must be able to reflect the gradient monotonic characteristics of the parameters.</p>
</list-item>
<list-item id="j_infor644_li_049">
<label>(3)</label>
<p><bold>Cosine similarity calculation</bold>: For two feature vectors <inline-formula id="j_infor644_ineq_162"><alternatives><mml:math>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$F{V_{i}}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_163"><alternatives><mml:math>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$F{V_{k}}$]]></tex-math></alternatives></inline-formula>, the cosine distance <inline-formula id="j_infor644_ineq_164"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo><mml:mstyle displaystyle="false">
<mml:mfrac>
<mml:mrow>
<mml:mo fence="true" stretchy="false">⟨</mml:mo>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo fence="true" stretchy="false">⟩</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">‖</mml:mo>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">‖</mml:mo>
<mml:mo stretchy="false">‖</mml:mo>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">‖</mml:mo>
</mml:mrow>
</mml:mfrac>
</mml:mstyle></mml:math><tex-math><![CDATA[$C{D_{i,k}}=\frac{\langle F{V_{i}},F{V_{k}}\rangle }{\| F{V_{i}}\| \| F{V_{k}}\| }$]]></tex-math></alternatives></inline-formula>. In order to measure the similarity, a reference value needs to be given. What is given here is the upper <inline-formula id="j_infor644_ineq_165"><alternatives><mml:math>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi></mml:math><tex-math><![CDATA[$FV$]]></tex-math></alternatives></inline-formula> and lower <inline-formula id="j_infor644_ineq_166"><alternatives><mml:math>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">lower</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$F{V_{\textit{lower}}}$]]></tex-math></alternatives></inline-formula> of the feature vector. The upper session <inline-formula id="j_infor644_ineq_167"><alternatives><mml:math>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">upper</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$F{V_{\textit{upper}}}$]]></tex-math></alternatives></inline-formula> is the critical vector where the feature vector is closest to the optimal performance, and the lower session <inline-formula id="j_infor644_ineq_168"><alternatives><mml:math>
<mml:mi mathvariant="italic">F</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">lower</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$F{V_{\textit{lower}}}$]]></tex-math></alternatives></inline-formula> is the critical vector close to the worst performance. Two cosine distances <inline-formula id="j_infor644_ineq_169"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">lower</mml:mtext>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mtext mathvariant="italic">upper</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo fence="true" stretchy="false">}</mml:mo></mml:math><tex-math><![CDATA[$\{C{D_{\textit{lower},i}},C{D_{i,\textit{upper}}}\}$]]></tex-math></alternatives></inline-formula> here are a measure of cosine similarity <inline-formula id="j_infor644_ineq_170"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$C{S_{i}}\in [0,1]$]]></tex-math></alternatives></inline-formula>.</p>
</list-item>
<list-item id="j_infor644_li_050">
<label>(4)</label>
<p><bold>Model parameter quality assessment</bold>: In order to facilitate the measurement of data quality and pricing, this article provides a simple evaluation method, as shown in Fig. <xref rid="j_infor644_fig_005">3</xref>. In Fig. <xref rid="j_infor644_fig_005">3</xref>, the standard for data quality is given, which is based on the numerical value of cosine similarity to evaluate data quality.</p>
</list-item>
</list>
<fig id="j_infor644_fig_005">
<label>Figure 3</label>
<caption>
<p>Model parameter quality assessment method.</p>
</caption>
<graphic xlink:href="infor644_g005.jpg"/>
</fig>
</sec>
<sec id="j_infor644_s_014">
<label>4.4</label>
<title>Incentive Algorithm Based on Data Quality and Time</title>
<p>In order to maximize participation enthusiasm, this article designs an incentive mechanism based on data quality and participation time, mainly including income calculation and income distribution. 
<list>
<list-item id="j_infor644_li_051">
<label>(1)</label>
<p><bold>Income calculation</bold>. For a data seller <inline-formula id="j_infor644_ineq_171"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{S_{i}}$]]></tex-math></alternatives></inline-formula>, the transaction revenue allocated to the seller is calculated as: 
<disp-formula id="j_infor644_eq_004">
<label>(4)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mrow>
<mml:mtext mathvariant="italic">income</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mtext mathvariant="italic">Total</mml:mtext>
<mml:mo>·</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:mo stretchy="false">|</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">|</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo stretchy="false">⊆</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">|</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {\textit{income}_{i}}=\textit{Total}\cdot \frac{|{w_{1}}|C{S_{i}}+|{w_{2}}|{T_{i}}}{{\textstyle\sum _{i\subseteq n}}(|{w_{1}}|C{S_{i}}+|{w_{2}}|{T_{i}})},\]]]></tex-math></alternatives>
</disp-formula> 
where <inline-formula id="j_infor644_ineq_172"><alternatives><mml:math>
<mml:mtext mathvariant="italic">Total</mml:mtext></mml:math><tex-math><![CDATA[$\textit{Total}$]]></tex-math></alternatives></inline-formula> denotes total transaction revenue generated from this batch of model parameter trading, <inline-formula id="j_infor644_ineq_173"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$C{S_{i}}\in [0,1]$]]></tex-math></alternatives></inline-formula> is the cosine similarity quality score of <inline-formula id="j_infor644_ineq_174"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{S_{i}}$]]></tex-math></alternatives></inline-formula>’s local model, and <inline-formula id="j_infor644_ineq_175"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[${T_{i}}\in [0,1]$]]></tex-math></alternatives></inline-formula> is normalized continuous participation time of the seller on the platform. The constraint <inline-formula id="j_infor644_ineq_176"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[$|{w_{1}}|+|{w_{2}}|=1$]]></tex-math></alternatives></inline-formula> guarantees the sum of weighted contribution terms of all sellers equals the total revenue.</p>
</list-item>
<list-item id="j_infor644_li_052">
<label>(2)</label>
<p><bold>Income distribution</bold>. Once the amount of revenue for each seller is determined, the DTP will distribute the revenue in a timely manner and record the distribution record in the blockchain.</p>
</list-item>
<list-item id="j_infor644_li_053">
<label>(3)</label>
<p>Parameter Selection Principle Oriented to Practical Logistics Platform Operations. Logistics data trading platforms have two core operational objectives: 1) Prioritize high-value heterogeneous logistics model parameters to improve the overall utility of data transactions. High-quality FL models with high cosine similarity can generate more accurate warehouse scheduling, route optimization and cold chain risk prediction results, which are the core commodity value of the trading market. Thus the weight <inline-formula id="j_infor644_ineq_177"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${w_{1}}$]]></tex-math></alternatives></inline-formula> corresponding to data quality should be assigned a larger proportion to form market guidance for merchants to provide high-precision sensing data. 2) Maintain long-term platform activity by rewarding stable, continuous participants. Newly joined small logistics couriers and regional warehouses require moderate revenue compensation based on their participation duration to avoid rapid churn even if their initial model quality is average. The time weight <inline-formula id="j_infor644_ineq_178"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${w_{2}}$]]></tex-math></alternatives></inline-formula> serves as auxiliary retention incentive and is set as the secondary coefficient. Based on the above dual operational demands, we design the weight assignment rule: the quality weight <inline-formula id="j_infor644_ineq_179"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">&gt;</mml:mo></mml:math><tex-math><![CDATA[${w_{1}}\gt $]]></tex-math></alternatives></inline-formula> participation time weight <inline-formula id="j_infor644_ineq_180"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${w_{2}}$]]></tex-math></alternatives></inline-formula>, with both coefficients non-negative (absolute value symbols can be simplified to <inline-formula id="j_infor644_ineq_181"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>⩾</mml:mo>
<mml:mn>0</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}\geqslant 0$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_182"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>⩾</mml:mo>
<mml:mn>0</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}\geqslant 0$]]></tex-math></alternatives></inline-formula>, satisfying <inline-formula id="j_infor644_ineq_183"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}+{w_{2}}=1$]]></tex-math></alternatives></inline-formula>).</p>
</list-item>
<list-item id="j_infor644_li_054">
<label>(4)</label>
<p>Empirical Weight Values Used in All Simulation Experiments. Throughout all multi-scenario experiments (express delivery, warehousing, cold chain, transportation scheduling) in Section <xref rid="j_infor644_s_017">5</xref>, we adopt fixed normalized weight values: <inline-formula id="j_infor644_ineq_184"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.6</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}=0.6$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_185"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.4</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}=0.4$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_186"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}+{w_{2}}=1$]]></tex-math></alternatives></inline-formula>. All calculation of seller revenue distribution in Table <xref rid="j_infor644_tab_005">5</xref> and cross-scenario comparison charts strictly follows this group of parameters without dynamic adjustment.</p>
</list-item>
<list-item id="j_infor644_li_055">
<label>(5)</label>
<p>Rationality Analysis of the 0.6/0.4 Weight Configuration. We compare three extreme weight combinations to verify the superiority of our parameter setting for logistics trading scenarios: Case 1: <inline-formula id="j_infor644_ineq_187"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}=1$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_188"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}=0$]]></tex-math></alternatives></inline-formula> (quality-only incentive). The platform fully rewards high-quality models, but new small merchants with average initial quality receive almost zero revenue, leading to massive loss of scattered logistics terminal participants and insufficient data supply on the market. Case 2: <inline-formula id="j_infor644_ineq_189"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}=0$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_190"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}=1$]]></tex-math></alternatives></inline-formula> (time-only incentive). Platform revenue only depends on service duration; low-quality noisy logistics models from inactive outlets gain equal income as high-precision cold chain/route models, which cannot reflect commodity value and reduces overall trading efficiency. Case 3: Our setting <inline-formula id="j_infor644_ineq_191"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.6</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}=0.6$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_192"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.4</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}=0.4$]]></tex-math></alternatives></inline-formula>. The dominant 60% weight on data quality ensures high-value heterogeneous logistics models obtain matching revenue to guide market data quality improvement; the auxiliary 40% time weight provides basic income guarantee for long-term stable small merchants, balancing high-value data output and platform user retention simultaneously. This split perfectly matches the dual operation demands of real smart logistics data trading platforms, so the configuration is practically reasonable. Once each seller’s individual transaction income is calculated via Formula (<xref rid="j_infor644_eq_004">4</xref>) with fixed <inline-formula id="j_infor644_ineq_193"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.6</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}=0.6$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_194"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.4</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}=0.4$]]></tex-math></alternatives></inline-formula>, the DTP platform completes automated profit settlement and records all distribution records into the consortium blockchain ledger for immutable traceability.</p>
</list-item>
</list>
</p>
</sec>
<sec id="j_infor644_s_015">
<label>4.5</label>
<title>Blockchain Transactions and Records</title>
<p>The data trading platform designed in this article is based on the consortium blockchain. A total of three types of transactions (publickeyTransaction, tradingdataTransact ion and datatradingTransaction, as shown in Fig. <xref rid="j_infor644_fig_006">4</xref>) are involved, and their records will be recorded in the blockchain in real time. The blockchain platform used in this article is HyperLeger Fabric, and the consensus algorithms involved are mainly Solo, Kafka, and SBFT (Androulaki <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_002">2018</xref>).</p>
<fig id="j_infor644_fig_006">
<label>Figure 4</label>
<caption>
<p>Blockchain transactions and block structure.</p>
</caption>
<graphic xlink:href="infor644_g006.jpg"/>
</fig>
</sec>
<sec id="j_infor644_s_016">
<label>4.6</label>
<title>Blockchain Oracle Module for On-Chain/Off-Chain Consistency</title>
<p>We deploy a dedicated logistics consortium oracle as an independent Fabric peer service, serving as the trusted bidirectional relay between DTP trading backend, off-chain IPFS distributed storage, and consortium blockchain ledger. This subsection elaborates the oracle’s trust assumption, data source, synchronization frequency, full workflow, failure handling, and manipulation resistance mechanism.</p>
<p>(1) Oracle Trust Assumption. The oracle node is operated and jointly supervised by multiple independent logistics enterprises and regulatory auditors in the Fabric consortium, not controlled solely by the DTP.</p>
<p>Trust premise: The oracle follows hard-coded chaincode logic and does not actively forge hash mapping data.</p>
<p>Mitigation against curious/compromised oracle: All IPFS file hash binding transactions require multi-peer aggregate signature before being written to blocks; any single compromised oracle cannot tamper with global synchronization records unilaterally.</p>
<p>The oracle does not hold user lattice private keys or plaintext logistics model parameters, so oracle compromise cannot lead to leakage of private trading data.</p>
<p>(2) Data Source Definition. The oracle only accepts three standardized input data sources, rejecting arbitrary unstructured payloads: Validated ciphertext batch tuples forwarded by DTP after signature &amp; quality verification; Immutable IPFS content-addressable hash returned by official IPFS cluster API; On-chain historical synchronization records stored in Fabric world state for periodic cross-check. The oracle never reads raw plaintext logistics data; all transmitted payloads are encrypted Paillier/LWE ciphertexts or fixed-size hash digests.</p>
<p>(3) Synchronization Update Frequency. Two independent update cycles are configured in oracle chaincode: Immediately executed once DTP submits a validated cipher batch, no artificial delay; background consistency polling (periodic fixed cycle): Full cross-check of all on-chain hash records and corresponding IPFS files every 300 seconds (5 minutes), used to detect offline file loss or hash mismatch faults.</p>
<p>(4) Complete Bidirectional Synchronization Workflow. DTP forwards fully verified ciphertext batch <inline-formula id="j_infor644_ineq_195"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${M_{i}}$]]></tex-math></alternatives></inline-formula> to the oracle’s dedicated data interface; Oracle invokes official IPFS client API to batch store ciphertexts and obtain unique content hash <inline-formula id="j_infor644_ineq_196"><alternatives><mml:math>
<mml:mtext mathvariant="italic">Torrent.hash</mml:mtext></mml:math><tex-math><![CDATA[$\textit{Torrent.hash}$]]></tex-math></alternatives></inline-formula>; Oracle packages synchronization metadata <inline-formula id="j_infor644_ineq_197"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mi mathvariant="italic">w</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mtext mathvariant="italic">quali</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mtext mathvariant="italic">Torrent.hash</mml:mtext>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mtext mathvariant="italic">price</mml:mtext>
<mml:mo fence="true" stretchy="false">}</mml:mo></mml:math><tex-math><![CDATA[$\{pid,kw,{t_{i}},{\textit{quali}_{td}},\textit{Torrent.hash},\textit{price}\}$]]></tex-math></alternatives></inline-formula>; Metadata transaction is broadcast to consortium peers and requires ⩾2/3 aggregate signature confirmation before block packaging; After block confirmation, the oracle writes a synchronization success flag into IPFS file extended metadata for subsequent polling check.</p>
<p>Read Consistency Polling (Oracle Cross-Check). Every 300s, the oracle traverses all hash records stored on the blockchain; For each recorded <inline-formula id="j_infor644_ineq_198"><alternatives><mml:math>
<mml:mtext mathvariant="italic">Torrent.hash</mml:mtext></mml:math><tex-math><![CDATA[$\textit{Torrent.hash}$]]></tex-math></alternatives></inline-formula>, send a file retrieval request to the IPFS cluster; Compare the newly recalculated file hash with the on-chain stored value to judge consistency.</p>
<p>(5) Classification of Failure Modes &amp; Automatic Remediation. The oracle predefines three typical inconsistency faults and corresponding auto-repair logic: IPFS File Loss Failure: IPFS cannot locate the file matching the on-chain hash. Oracle pulls temporary cipher backup cached by DTP, re-uploads to IPFS, generates a new hash, and submits a supplementary correction transaction to the blockchain for record update. Hash Mismatch Failure: Retrieved IPFS file hash conflicts with the on-chain stored digest (indicating off-chain tampering). Oracle logs tampering evidence on-chain, freezes the corresponding DS’s trading qualification, and triggers manual arbitration by consortium auditors. Network Timeout Failure: IPFS API no response within 10s during write synchronization. The oracle executes 3 sequential retries; if all fail, suspend transaction submission and push fault alarm to consortium administrators to avoid invalid empty ledger entries.</p>
<p>(6) Manipulation Resistance Mechanism. Multi-layer anti-tampering design prevents single-point or collusive oracle manipulation: Any oracle synchronization metadata cannot be written to blocks without aggregate signatures from more than two-thirds of consortium peers; a single malicious oracle cannot alter hash mapping records independently. The oracle’s IPFS upload and hash calculation logic is solidified in open-source chaincode, which all consortium participants can audit; there is no customizable hidden variable to modify hash values arbitrarily. All oracle operation logs (upload requests, polling records, fault repair transactions) are timestamped and permanently recorded on the blockchain; any abnormal oracle behaviour can be traced via historical blocks for accountability. Oracle storage interface and DTP business backend are deployed on isolated peer nodes; DTP cannot directly access or modify IPFS file storage bypassing the oracle’s standardized interface.</p>
</sec>
</sec>
<sec id="j_infor644_s_017">
<label>5</label>
<title> Scheme Performance Analysis</title>
<sec id="j_infor644_s_018">
<label>5.1</label>
<title> Security Analysis</title>
<p>Before formal privacy and collusion resistance proofs, we first state the core LWE hardness assumption supporting our lattice cryptosystem (LHPRE proxy re-encryption and LHS lattice signature).</p>
<p><bold>LWE Hardness Assumption</bold>. Let <inline-formula id="j_infor644_ineq_199"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">χ</mml:mi></mml:math><tex-math><![CDATA[$n,q,\chi $]]></tex-math></alternatives></inline-formula> be lattice security parameters: <italic>n</italic> lattice dimension, prime modulus <italic>q</italic>, discrete Gaussian error distribution <italic>χ</italic> over <inline-formula id="j_infor644_ineq_200"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbb{Z}_{q}}$]]></tex-math></alternatives></inline-formula>.</p>
<p><bold>Decision LWE Assumption</bold>: Given a matrix <inline-formula id="j_infor644_ineq_201"><alternatives><mml:math>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mo stretchy="false">∈</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo>×</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[$\mathbf{A}\in {\mathbb{Z}_{q}^{m\times n}}$]]></tex-math></alternatives></inline-formula> and two distribution samples:</p>
<p>1) Valid LWE sample: (<bold>A</bold>, <inline-formula id="j_infor644_ineq_202"><alternatives><mml:math>
<mml:mi mathvariant="bold">As</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="bold">e</mml:mi></mml:math><tex-math><![CDATA[$\mathbf{As}+\mathbf{e}$]]></tex-math></alternatives></inline-formula>), where secret <inline-formula id="j_infor644_ineq_203"><alternatives><mml:math>
<mml:mi mathvariant="bold">s</mml:mi>
<mml:mo stretchy="false">←</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[$\mathbf{s}\gets {\mathbb{Z}_{q}^{n}}$]]></tex-math></alternatives></inline-formula>, noise <inline-formula id="j_infor644_ineq_204"><alternatives><mml:math>
<mml:mi mathvariant="bold">e</mml:mi>
<mml:mo stretchy="false">←</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">χ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[$\mathbf{e}\gets {\chi ^{m}}$]]></tex-math></alternatives></inline-formula>;</p>
<p>2) Uniform random sample: (<inline-formula id="j_infor644_ineq_205"><alternatives><mml:math>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi></mml:math><tex-math><![CDATA[$\mathbf{A},\mathbf{u}$]]></tex-math></alternatives></inline-formula>), where <inline-formula id="j_infor644_ineq_206"><alternatives><mml:math>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo stretchy="false">←</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[$\mathbf{u}\gets {\mathbb{Z}_{q}^{m}}$]]></tex-math></alternatives></inline-formula> uniform.</p>
<p>No probabilistic polynomial-time (PPT) adversary can distinguish the two distributions with non-negligible advantage over the security parameter <italic>λ</italic>.</p>
<p>All ciphertexts and signatures in our scheme are constructed over LWE instances; recovering plaintext model parameters requires solving the corresponding LWE problem, which is computationally infeasible for PPT adversaries under standard lattice hardness. <statement id="j_infor644_stat_001"><label>Theorem 1.</label>
<p><italic>The proposed scheme meets the privacy protection requirements.</italic></p></statement><statement id="j_infor644_stat_002"><label>Proof.</label>
<p>The private data involved in this solution includes raw data, transaction data, user identity information, etc. Generally, privacy leaks may occur during data transfer. In this scheme, there are two situations of data flow: the process of uploading transaction data to the <italic>DTP</italic> platform through the public network and the process of the <italic>DTP</italic> sending the re-encrypted cipher-text to the <inline-formula id="j_infor644_ineq_207"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">B</mml:mi></mml:math><tex-math><![CDATA[$DB$]]></tex-math></alternatives></inline-formula> through the public channel. For the former, the <inline-formula id="j_infor644_ineq_208"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{S_{i}}$]]></tex-math></alternatives></inline-formula> sends <inline-formula id="j_infor644_ineq_209"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${M_{i}}=({\mathbf{C}_{i}},{\boldsymbol{\sigma }_{i}},pi{d_{i}},k{w_{i}},{t_{i}})$]]></tex-math></alternatives></inline-formula> to the <italic>DTP</italic>. The privacy information involved in this message string is <inline-formula id="j_infor644_ineq_210"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbf{C}_{i}}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_211"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{\sigma }_{i}}$]]></tex-math></alternatives></inline-formula>. Once the <inline-formula id="j_infor644_ineq_212"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbf{C}_{i}}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_213"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\boldsymbol{\sigma }_{i}}$]]></tex-math></alternatives></inline-formula> is obtained by the attacker, it will attempt to crack the password algorithm within the PPT. And we know that this cryptographic algorithm is CPA secure under the LWE assumption (Luo <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_021">2020</xref>; Li <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>; Gorbunov <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_007">2015</xref>), which means that attackers do not have an undeniable advantage within the PPT to solve the LWE problem. For the latter, the <italic>DTP</italic> sends <inline-formula id="j_infor644_ineq_214"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${M_{DTP}}=({\mathbf{C}_{DTP\to j}},{\boldsymbol{\sigma }_{DTP}},{t_{DTP}})$]]></tex-math></alternatives></inline-formula> to the <inline-formula id="j_infor644_ineq_215"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">B</mml:mi></mml:math><tex-math><![CDATA[$DB$]]></tex-math></alternatives></inline-formula>. Similarly, private information is still cipher-text and signature, and its security depends on the LWE assumption, which has been proven to be semantically secure (Luo <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_021">2020</xref>; Li <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>; Gorbunov <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_007">2015</xref>). In summary, the proposed solution meets the privacy protection requirements.  □</p></statement><statement id="j_infor644_stat_003"><label>Theorem 2.</label>
<p><italic>All logistics model parameter ciphertexts and lattice signatures transmitted on public channels satisfy semantic privacy</italic>; <italic>a single honest-but-curious or malicious participant cannot recover plaintext model data from isolated ciphertexts.</italic></p></statement><statement id="j_infor644_stat_004"><label>Proof.</label>
<p>Model parameter ciphertext is generated by <inline-formula id="j_infor644_ineq_216"><alternatives><mml:math>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi mathvariant="bold">R</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="bold">E</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="bold">G</mml:mi></mml:math><tex-math><![CDATA[$\mathbf{C}={\mathbf{A}_{id}}\mathbf{R}+2\mathbf{E}+MP\cdot \mathbf{G}$]]></tex-math></alternatives></inline-formula> under <inline-formula id="j_infor644_ineq_217"><alternatives><mml:math>
<mml:mtext mathvariant="italic">LHPRE</mml:mtext></mml:math><tex-math><![CDATA[$\textit{LHPRE}$]]></tex-math></alternatives></inline-formula>. Here, <bold>R</bold> is a random blinding matrix, <inline-formula id="j_infor644_ineq_218"><alternatives><mml:math>
<mml:mi mathvariant="bold">E</mml:mi>
<mml:mo stretchy="false">←</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">χ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>×</mml:mo>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[$\mathbf{E}\gets {\chi ^{(2m+1)\times N}}$]]></tex-math></alternatives></inline-formula> is LWE noise vector, <inline-formula id="j_infor644_ineq_219"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi></mml:math><tex-math><![CDATA[$MP$]]></tex-math></alternatives></inline-formula> is a plaintext model parameter embedded as a constant term.</p>
<p>For any single party holding only <bold>C</bold> without identity trapdoor <inline-formula id="j_infor644_ineq_220"><alternatives><mml:math>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$t{d_{id}}$]]></tex-math></alternatives></inline-formula> (the lattice short basis secret key from KeyGen), the equation transforms to <inline-formula id="j_infor644_ineq_221"><alternatives><mml:math>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo>−</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="bold">G</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi mathvariant="bold">R</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="bold">E</mml:mi></mml:math><tex-math><![CDATA[$\mathbf{C}-MP\cdot \mathbf{G}={\mathbf{A}_{id}}\mathbf{R}+2\mathbf{E}$]]></tex-math></alternatives></inline-formula>, which is a standard LWE sample (<inline-formula id="j_infor644_ineq_222"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi mathvariant="bold">R</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="bold">E</mml:mi></mml:math><tex-math><![CDATA[${\mathbf{A}_{id}},{\mathbf{A}_{id}}\mathbf{R}+2\mathbf{E}$]]></tex-math></alternatives></inline-formula>).</p>
<p>By Decision LWE assumption, PPT adversaries cannot separate the secret random matrix <bold>R</bold> and noise <bold>E</bold> to extract the plaintext <inline-formula id="j_infor644_ineq_223"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi></mml:math><tex-math><![CDATA[$MP$]]></tex-math></alternatives></inline-formula>. The lattice signature <italic>σ</italic> is also constructed via LWE trapdoor sampling; without matching user trapdoor, the adversary only obtains random group elements carrying no plaintext information.</p>
<p>Thus individual participants cannot infer private logistics model parameters from standalone ciphertext/signature transcripts.  □</p></statement><statement id="j_infor644_stat_005"><label>Theorem 3.</label>
<p><italic>Any coalition of arbitrarily many colluding data buyers</italic> <inline-formula id="j_infor644_ineq_224"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">B</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(DB)$]]></tex-math></alternatives></inline-formula><italic>, data sellers</italic> <inline-formula id="j_infor644_ineq_225"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">S</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(DS)$]]></tex-math></alternatives></inline-formula> <italic>or untrusted DTP platform nodes cannot jointly recover plaintext logistics model parameters by combining all their collected ciphertext and signature transcripts.</italic></p></statement><statement id="j_infor644_stat_006"><label>Proof.</label>
<p>We split the mathematical deduction into three sequential steps to prove collusion fails:</p>
<p><bold>Step 1:</bold> Characterize information held by colluding coalition <inline-formula id="j_infor644_ineq_226"><alternatives><mml:math>
<mml:mi mathvariant="script">S</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo fence="true" stretchy="false">}</mml:mo></mml:math><tex-math><![CDATA[$\mathcal{S}=\{{P_{1}},{P_{2}},\dots ,{P_{k}}\}$]]></tex-math></alternatives></inline-formula>. Each colluding party <inline-formula id="j_infor644_ineq_227"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mi mathvariant="script">S</mml:mi></mml:math><tex-math><![CDATA[${P_{t}}\in \mathcal{S}$]]></tex-math></alternatives></inline-formula> only holds re-encrypted ciphertexts <inline-formula id="j_infor644_ineq_228"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbf{C}_{DTP\to t}}$]]></tex-math></alternatives></inline-formula> generated via independent re-encryption keys <inline-formula id="j_infor644_ineq_229"><alternatives><mml:math>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$s{k_{DTP\to t}}$]]></tex-math></alternatives></inline-formula>, and aggregate lattice signatures <inline-formula id="j_infor644_ineq_230"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\sigma _{t}}$]]></tex-math></alternatives></inline-formula>. All user trapdoor secret keys <inline-formula id="j_infor644_ineq_231"><alternatives><mml:math>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$t{d_{id}}$]]></tex-math></alternatives></inline-formula> are independently generated during registration and never transmitted, shared or stored on DTP/other participants. No colluder owns any short lattice basis required to invert LWE samples.</p>
<p><bold>Step 2:</bold> Mathematic fusion of multiple colluders’ ciphertexts. Suppose colluders combine their respective ciphertexts <inline-formula id="j_infor644_ineq_232"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo fence="true" stretchy="false">}</mml:mo></mml:math><tex-math><![CDATA[$\{{\mathbf{C}_{1}},{\mathbf{C}_{2}},\dots ,{\mathbf{C}_{k}}\}$]]></tex-math></alternatives></inline-formula> corresponding to the same original model parameter <inline-formula id="j_infor644_ineq_233"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi></mml:math><tex-math><![CDATA[$MP$]]></tex-math></alternatives></inline-formula>. Each ciphertext satisfies: <inline-formula id="j_infor644_ineq_234"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="bold">G</mml:mi></mml:math><tex-math><![CDATA[${\mathbf{C}_{t}}={\mathbf{A}_{t}}{\mathbf{R}_{t}}+2{\mathbf{E}_{t}}+MP\cdot \mathbf{G}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_235"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">←</mml:mo>
<mml:mi mathvariant="italic">χ</mml:mi></mml:math><tex-math><![CDATA[${\mathbf{E}_{t}}\gets \chi $]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_236"><alternatives><mml:math>
<mml:mo>∀</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$\forall t\in [1,k]$]]></tex-math></alternatives></inline-formula>. When colluders perform linear fusion over their collected ciphertexts: <inline-formula id="j_infor644_ineq_237"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">fusion</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="bold">G</mml:mi></mml:math><tex-math><![CDATA[${\mathbf{C}_{\textit{fusion}}}={\textstyle\sum _{t=1}^{k}}{\mathbf{C}_{t}}=({\textstyle\sum _{t=1}^{k}}{\mathbf{A}_{t}}{\mathbf{R}_{t}})+2{\textstyle\sum _{t=1}^{k}}{\mathbf{E}_{t}}+k\cdot MP\cdot \mathbf{G}$]]></tex-math></alternatives></inline-formula>. The fused noise term <inline-formula id="j_infor644_ineq_238"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">fusion</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbf{E}_{\textit{fusion}}}=2{\textstyle\sum _{t=1}^{k}}{\mathbf{E}_{t}}$]]></tex-math></alternatives></inline-formula> still follows a discrete Gaussian distribution scaled by constant <italic>k</italic>, which remains a valid LWE noise sample over <inline-formula id="j_infor644_ineq_239"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbb{Z}_{q}}$]]></tex-math></alternatives></inline-formula>. The combined matrix term <inline-formula id="j_infor644_ineq_240"><alternatives><mml:math>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$\textstyle\sum {\mathbf{A}_{t}}{\mathbf{R}_{t}}$]]></tex-math></alternatives></inline-formula> is another uniformly random matrix product over the lattice ring.</p>
<p><bold>Step 3:</bold> Hardness deduction for fused LWE instance. The fused transcript <inline-formula id="j_infor644_ineq_241"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">fusion</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbf{C}_{\textit{fusion}}}$]]></tex-math></alternatives></inline-formula> still constitutes a valid Decision LWE sample (<inline-formula id="j_infor644_ineq_242"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">fusion</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbf{A}_{\textit{fusion}}}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_243"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">fusion</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">fusion</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">fusion</mml:mtext>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\mathbf{A}_{\textit{fusion}}}{\mathbf{R}_{\textit{fusion}}}+{\mathbf{E}_{\textit{fusion}}}$]]></tex-math></alternatives></inline-formula>). Solving this fused instance to extract $MP$ is equivalent to breaking the standard LWE hardness assumption.</p>
<p>The fusion operation does not reduce the computational difficulty of the lattice problem; it only generates a larger-dimension LWE instance with equivalent or higher solving complexity. Since no colluding participant holds any trapdoor short basis to run the lattice inversion algorithm, even merging all ciphertext transcripts cannot eliminate the LWE noise blinding term to isolate plaintext model parameters. Aggregate lattice signatures held by colluders are additive in group space, but each signature embeds independent user trapdoor randomness. Summing multiple signatures only produces a new random group element without exposing the plaintext message vector, so signatures cannot be used to assist plaintext recovery during collusion attacks.</p>
<p>In conclusion, arbitrary multi-party collusion cannot break the LWE-based lattice privacy mechanism, and private logistics model parameters remain secure.  □</p></statement><statement id="j_infor644_stat_007"><label>Theorem 4.</label>
<p><italic>The proposed one-time dynamic authentication scheme resists credential replay, identity forgery and unauthorized cross-role access attacks.</italic></p></statement><statement id="j_infor644_stat_008"><label>Proof.</label>
<p>Each credential embeds unique random nonce and 1-hour limited lifetime; expired credentials are automatically rejected, eliminating long-term replay risks. Valid authentication can only be generated by the user’s exclusive lattice trapdoor secret key; adversaries cannot forge valid <inline-formula id="j_infor644_ineq_244"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">u</mml:mi>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\sigma _{auth}}$]]></tex-math></alternatives></inline-formula> under LWE hardness. On-chain <inline-formula id="j_infor644_ineq_245"><alternatives><mml:math>
<mml:mtext mathvariant="italic">PolicyTable</mml:mtext></mml:math><tex-math><![CDATA[$\textit{PolicyTable}$]]></tex-math></alternatives></inline-formula> and revocation ledger enforce role separation and permanent invalidation of compromised user credentials, blocking cross-role illegal data access.  □</p></statement></p>
</sec>
<sec id="j_infor644_s_019">
<label>5.2</label>
<title>Computational Costs</title>
<p>In order to comprehensively evaluate the performance of the proposed solution, we designed simulation experiments. This experiment focuses on evaluating the computational and communication costs of cryptography algorithms from both theoretical analysis and experimental evaluation perspectives. The key evaluation algorithm for computational cost focuses on the time consumption of various operations during the calculation process, including multiplication, exponentiation, logarithm, and other operations. The communication cost mainly evaluates the time and amount of information transmitted between nodes, including the time required to transmit a unit of information between nodes and the total amount of information that needs to be transmitted. The specific design is as follows.</p>
<p>Here, theoretical analysis and experimental verification are conducted on the computational cost of the proposed solution. The experimental environment is: Laptops 13th Gen Intel(R) Core(TM) i5-13500H 2.60 GHz RAM 32.0 GB and using PyCharm software platform in python language. Assuming <inline-formula id="j_infor644_ineq_246"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{a}}$]]></tex-math></alternatives></inline-formula> represents the time to perform an addition operation on <inline-formula id="j_infor644_ineq_247"><alternatives><mml:math>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>∗</mml:mo>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[${\mathbb{Z}_{q}^{\ast }}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_248"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{m}}$]]></tex-math></alternatives></inline-formula> represents the time to perform a multiplying operation on <inline-formula id="j_infor644_ineq_249"><alternatives><mml:math>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="double-struck">Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">q</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>∗</mml:mo>
</mml:mrow>
</mml:msubsup></mml:math><tex-math><![CDATA[${\mathbb{Z}_{q}^{\ast }}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_250"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{mVN}}$]]></tex-math></alternatives></inline-formula> represents the time to perform an multiplying operation for a vector and a number, <inline-formula id="j_infor644_ineq_251"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{mVV}}$]]></tex-math></alternatives></inline-formula> represents the time to perform a multiplying operation for two vectors, <inline-formula id="j_infor644_ineq_252"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{mMN}}$]]></tex-math></alternatives></inline-formula> represents the time to perform a multiplying operation for a matrix and a number, <inline-formula id="j_infor644_ineq_253"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{mMM}}$]]></tex-math></alternatives></inline-formula> represents the time to perform a multiplying operation for two matrices, <inline-formula id="j_infor644_ineq_254"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{aMM}}$]]></tex-math></alternatives></inline-formula> represents the time to perform an addition operation for two matrices. The addition operation of the two numbers here can be ignored and will not be considered in this paper. To eliminate random errors, each result is repeated 100 times to take the average, as shown in Table <xref rid="j_infor644_tab_002">2</xref>.</p>
<table-wrap id="j_infor644_tab_002">
<label>Table 2</label>
<caption>
<p>Theoretical analysis comparison (millisecond).</p>
</caption>
<table>
<tbody>
<tr>
<td style="vertical-align: top; text-align: left; border-top: solid thin"><inline-formula id="j_infor644_ineq_255"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{m}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-top: solid thin">0.000698</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin"><inline-formula id="j_infor644_ineq_256"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{mVN}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-top: solid thin">0.001228</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin"><inline-formula id="j_infor644_ineq_257"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{mVV}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-top: solid thin">0.000842</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_258"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{mMN}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">0.001347</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_259"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{mMM}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">0.001451</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_260"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{aMM}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">0.000427</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="j_infor644_tab_003">
<label>Table 3</label>
<caption>
<p>Simulation result.</p>
</caption>
<table>
<thead>
<tr>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Scheme</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Data encryption</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Data aggregation</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Data decryption</td>
</tr>
</thead>
<tbody>
<tr>
<td style="vertical-align: top; text-align: left">LBHP (Abdallah and Shen, <xref ref-type="bibr" rid="j_infor644_ref_001">2016</xref>)</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_261"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$n({T_{aMM}}+{T_{mMN}})+{n^{2}}{T_{mMN}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_262"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${n^{2}}{T_{mMN}}+n(2{T_{aMM}}+{T_{mMN}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_263"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>3</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$n({T_{m}}+3{T_{mMN}}+{T_{aMM}})$]]></tex-math></alternatives></inline-formula></td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">ELDG (Qian <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_025">2020</xref>)</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_264"><alternatives><mml:math>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$2{n^{2}}{T_{mMN}}+n{T_{aMM}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_265"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$n({T_{aMM}}+{T_{m}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_266"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$n({T_{aMM}}+{T_{mMN}})$]]></tex-math></alternatives></inline-formula></td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">LBDG (Qian <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_026">2021</xref>)</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_267"><alternatives><mml:math>
<mml:mn>5</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$5n{T_{aMM}}-2{T_{aMM}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_268"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>−</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$({n^{2}}-n){T_{aMM}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_269"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$({n^{2}}-2n-1){T_{aMM}}$]]></tex-math></alternatives></inline-formula></td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">DRQP (Li <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>)</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_270"><alternatives><mml:math>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$2n({T_{aMM}}+{T_{mMN}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_271"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>3</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$n(2{T_{aMM}}+3{T_{mMM}})-2{T_{aMM}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_272"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$n{T_{mVV}}$]]></tex-math></alternatives></inline-formula></td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Ours</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_273"><alternatives><mml:math>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$2n({T_{aMM}}+{T_{mMN}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_274"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$(n+1){T_{aMM}}+2{T_{mMN}}$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_275"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{mVV}}$]]></tex-math></alternatives></inline-formula></td>
</tr>
</tbody>
</table>
</table-wrap>
<fig id="j_infor644_fig_007">
<label>Figure 5</label>
<caption>
<p>The calculation time cost comparison results.</p>
</caption>
<graphic xlink:href="infor644_g007.jpg"/>
</fig>
<p>Firstly, we conduct a theoretical analysis of the proposed scheme in this paper, which includes data encryption, data aggregation and data decryption three phases. In the data encryption phase, the <inline-formula id="j_infor644_ineq_276"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">S</mml:mi></mml:math><tex-math><![CDATA[$DS$]]></tex-math></alternatives></inline-formula> needs to perform an encryption operation and a signature operation for each transaction data and the time cost is <inline-formula id="j_infor644_ineq_277"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>·</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>·</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${T_{1}}=n\cdot (2{T_{aMM}}+2{T_{mMN}})=2n\cdot ({T_{aMM}}+{T_{mMN}})$]]></tex-math></alternatives></inline-formula>. In the data aggregation phase, the <italic>DTP</italic> performs an aggregation operation, re-encryption operation, and signature operation, and the time cost is <inline-formula id="j_infor644_ineq_278"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>·</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>·</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{2}}=(n-1)\cdot {T_{aMM}}+2{T_{aMM}}+2{T_{mMN}}=(n+1)\cdot {T_{aMM}}+2{T_{mMN}}$]]></tex-math></alternatives></inline-formula>. In the data decryption phase, the <inline-formula id="j_infor644_ineq_279"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">B</mml:mi></mml:math><tex-math><![CDATA[$DB$]]></tex-math></alternatives></inline-formula> performs a decryption operation and the time cost is <inline-formula id="j_infor644_ineq_280"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
<mml:mi mathvariant="italic">V</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{3}}={T_{mVV}}$]]></tex-math></alternatives></inline-formula>. Similarly, we conducted the same analysis on DRQP (Li <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>), LBHP (Abdallah and Shen, <xref ref-type="bibr" rid="j_infor644_ref_001">2016</xref>), ELDG (Qian <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_025">2020</xref>) and LBDG (Qian <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_026">2021</xref>) four schemes, and the results are shown in the Table <xref rid="j_infor644_tab_003">3</xref>.</p>
<p>Then, the calculation time cost comparison results of these five schemes are shown in the Fig. <xref rid="j_infor644_fig_007">5</xref>. Figure <xref rid="j_infor644_fig_007">5</xref>(a) represents a comparison of the calculation time and cost during the data encryption phase; 5(b) represents a comparison of the calculation time and cost during the data aggregation and re-encryption phase, as shown in Fig. <xref rid="j_infor644_fig_007">5</xref>(c), which represents a comparison of the calculation time cost during the data decryption phase. Through observation and analysis, it can be seen that the proposed scheme in this article has obvious advantages in the data encryption, data aggregation and data decryption phases. When the data volume reaches 100 levels, the computational time consumed is still within 1 second, which is completely acceptable in the industry. This standard also meets the design objectives of this article and satisfies the requirements of efficiency.</p>
<p>Before presenting computational overhead comparison (Table <xref rid="j_infor644_tab_003">3</xref>), we standardize four core equalization rules to guarantee fair horizontal evaluation among our scheme, LBHP (Abdallah and Shen, <xref ref-type="bibr" rid="j_infor644_ref_001">2016</xref>), ELDG (Qian <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_025">2020</xref>), LBDG (Qian <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_026">2021</xref>), DRQP (Li <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>). All lattice primitives across five schemes are instantiated under NIST PQC Security Level 1 (128-bit quantum/classical security), based on identical standard LWE hardness assumption with fixed lattice parameter set <inline-formula id="j_infor644_ineq_281"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>512</mml:mn></mml:math><tex-math><![CDATA[$n=512$]]></tex-math></alternatives></inline-formula>, prime modulus <inline-formula id="j_infor644_ineq_282"><alternatives><mml:math>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>14</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[$q={2^{14}}-1$]]></tex-math></alternatives></inline-formula>, centred binomial noise distribution <italic>χ</italic> with parameter <inline-formula id="j_infor644_ineq_283"><alternatives><mml:math>
<mml:mi mathvariant="italic">η</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[$\eta =1$]]></tex-math></alternatives></inline-formula>. No scheme uses weaker small lattices or lower security moduli to artificially reduce computation cost. For all lattice encryption/signature modules in comparison groups, we fix standardized payload sizes <inline-formula id="j_infor644_ineq_284"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>120</mml:mn></mml:math><tex-math><![CDATA[$|c|=120$]]></tex-math></alternatives></inline-formula> bits per single homomorphic ciphertext, <inline-formula id="j_infor644_ineq_285"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>100</mml:mn></mml:math><tex-math><![CDATA[$|\sigma |=100$]]></tex-math></alternatives></inline-formula> bits per lattice aggregate signature. This sizing follows lightweight LWE homomorphic proxy re-encryption literature [28, 29], optimized for small-valued logistics model gradient plaintexts (single normalized similarity values within <inline-formula id="j_infor644_ineq_286"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$[0,1]$]]></tex-math></alternatives></inline-formula>). Only shared core logistics data aggregation cryptographic operations are counted for fair comparison: local encryption, batch aggregation, single decryption. Exclusive functional modules unique to our scheme (oracle synchronization, cosine similarity quality assessment, dynamic one-time authentication, multi-weight incentive settlement) are excluded from the theoretical complexity formulas of Table <xref rid="j_infor644_tab_003">3</xref>, as baseline LBHP/ELDG/LBDG/DRQP lack these trading-system subroutines and including them would create unfair overhead bias. The variable <italic>n</italic> uniformly denotes the count of independent data sellers submitting model batches across all five complexity formulas, eliminating inconsistent variable semantics across different literature.</p>
<p>Our LHPRE homomorphic ciphertext and LHS lattice signature lengths are chosen to match lightweight lattice privacy-preserving aggregation schemes targeting IoT/logistics low-value numerical plaintexts (Luo <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_021">2020</xref>; Li <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>; Abdallah and Shen, <xref ref-type="bibr" rid="j_infor644_ref_001">2016</xref>), complying with NIST Level 1 post-quantum security without redundant large vector overhead: Ciphertext <inline-formula id="j_infor644_ineq_287"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>120</mml:mn></mml:math><tex-math><![CDATA[$|c|=120$]]></tex-math></alternatives></inline-formula> bits rationale. The plaintext space only stores normalized floating-point model quality values mapped to discrete 16-bit integer representations for lattice embedding. Under our fixed LWE parameter group (<inline-formula id="j_infor644_ineq_288"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>512</mml:mn></mml:math><tex-math><![CDATA[$n=512$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_289"><alternatives><mml:math>
<mml:mi mathvariant="italic">q</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>16383</mml:mn></mml:math><tex-math><![CDATA[$q=16383$]]></tex-math></alternatives></inline-formula>), a compact single-row LWE ciphertext vector with additive homomorphism only requires 120 bits to embed plaintext and bounded Gaussian noise term, consistent with DRQP (Li <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>) lightweight grid lattice ciphertext design. Larger multi-kilobyte ML-KEM-style ciphertexts are unnecessary here because we only encrypt scalar similarity/timestamp values instead of long arbitrary byte strings. Using 120-bit ciphertexts keeps communication overhead low for edge logistics terminals while maintaining full 128-bit post-quantum semantic security under LWE.</p>
<p>Signature <inline-formula id="j_infor644_ineq_290"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>100</mml:mn></mml:math><tex-math><![CDATA[$|\sigma |=100$]]></tex-math></alternatives></inline-formula> bits rationale. The lattice aggregate signature LHS adopts GPV trapdoor sampling optimized for short message digests (<inline-formula id="j_infor644_ineq_291"><alternatives><mml:math>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$H(Ctx)$]]></tex-math></alternatives></inline-formula> truncated to 80-bit hash). The rejection-sampled signature vector is compressed to 100 bits after coordinate modulo reduction, matching the lightweight lattice aggregate signature construction in LBHP (Abdallah and Shen, <xref ref-type="bibr" rid="j_infor644_ref_001">2016</xref>). This avoids the multi-kilobyte overhead of full Dilithium/ML-DSA signatures designed for general-purpose public key systems; our logistics trading scenario only requires short transaction hash authentication, so 100-bit signatures suffice for existential unforgeability under LWE-MLIS hard problem. All four baseline works (LBHP, ELDG, LBDG, DRQP) adopt equivalent compact lattice ciphertext/signature sizing for small numerical IoT plaintexts in their original simulations. We strictly follow their lightweight parameter conventions instead of heavy general PQC standards to maintain identical overhead measurement baselines.</p>
</sec>
<sec id="j_infor644_s_020">
<label>5.3</label>
<title> Communication Costs</title>
<p>Next is the analysis of communication costs from both theoretical and experimental perspectives. Assuming <inline-formula id="j_infor644_ineq_292"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo></mml:math><tex-math><![CDATA[$|c|$]]></tex-math></alternatives></inline-formula> represents the length of a ciphertext, <inline-formula id="j_infor644_ineq_293"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo></mml:math><tex-math><![CDATA[$|\sigma |$]]></tex-math></alternatives></inline-formula> represents the length of a signature and <inline-formula id="j_infor644_ineq_294"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo></mml:math><tex-math><![CDATA[$|t|$]]></tex-math></alternatives></inline-formula> represents the length of a timestamp. In this paper, the process involving information transmission includes a <inline-formula id="j_infor644_ineq_295"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">S</mml:mi></mml:math><tex-math><![CDATA[$DS$]]></tex-math></alternatives></inline-formula> encrypting the transmission of transaction data to the <italic>DTP</italic> and the <italic>DTP</italic> sending re-encrypted ciphertext and signing to the <inline-formula id="j_infor644_ineq_296"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">B</mml:mi></mml:math><tex-math><![CDATA[$DB$]]></tex-math></alternatives></inline-formula>. For the former, the <inline-formula id="j_infor644_ineq_297"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$D{S_{i}}$]]></tex-math></alternatives></inline-formula> sends <inline-formula id="j_infor644_ineq_298"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${M_{i}}=({\mathbf{C}_{i}},{\boldsymbol{\sigma }_{i}},pi{d_{i}},k{w_{i}},{t_{i}})$]]></tex-math></alternatives></inline-formula> to the <italic>DTP</italic>. For the latter, the <italic>DTP</italic> sends <inline-formula id="j_infor644_ineq_299"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
<mml:mo stretchy="false">→</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold-italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${M_{DTP}}=({\mathbf{C}_{DTP\to j}},{\boldsymbol{\sigma }_{DTP}},{t_{DTP}})$]]></tex-math></alternatives></inline-formula> and sends to the <inline-formula id="j_infor644_ineq_300"><alternatives><mml:math>
<mml:mi mathvariant="italic">D</mml:mi>
<mml:mi mathvariant="italic">B</mml:mi></mml:math><tex-math><![CDATA[$DB$]]></tex-math></alternatives></inline-formula>. So, the communication cost of our scheme is <inline-formula id="j_infor644_ineq_301"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>·</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(n+1)\cdot (|c|+|\sigma |+|t|)$]]></tex-math></alternatives></inline-formula>. Here, due to the lack of keyword settings in other literature, for the sake of fairness, pseudonym and keywords are not included. Using the same analysis method, the comparison results of communication costs among LBHP, ELDG, LBDG DRQP and ours are shown in the Table <xref rid="j_infor644_tab_004">4</xref>.</p>
<table-wrap id="j_infor644_tab_004">
<label>Table 4</label>
<caption>
<p>The comparison results of communication costs.</p>
</caption>
<table>
<thead>
<tr>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Scheme</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Communication costs</td>
</tr>
</thead>
<tbody>
<tr>
<td style="vertical-align: top; text-align: left">LBHP</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_302"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>·</mml:mo>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true" mathvariant="normal">(</mml:mo>
<mml:mn>3</mml:mn>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true" mathvariant="normal">)</mml:mo></mml:math><tex-math><![CDATA[$n\cdot \big(3|c|+2|\sigma |+|t|\big)$]]></tex-math></alternatives></inline-formula></td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">ELDG</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_303"><alternatives><mml:math>
<mml:mn>4</mml:mn>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>·</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo></mml:math><tex-math><![CDATA[$4n\cdot |c|$]]></tex-math></alternatives></inline-formula></td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">LBDG</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_304"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>·</mml:mo>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true" mathvariant="normal">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true" mathvariant="normal">)</mml:mo></mml:math><tex-math><![CDATA[$n\cdot \big(2|c|+2|\sigma |+|t|\big)$]]></tex-math></alternatives></inline-formula></td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">DRQP</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_305"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>·</mml:mo>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true" mathvariant="normal">(</mml:mo>
<mml:mn>3</mml:mn>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true" mathvariant="normal">)</mml:mo></mml:math><tex-math><![CDATA[$n\cdot \big(3|c|+|\sigma |+|t|\big)$]]></tex-math></alternatives></inline-formula></td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Ours</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_306"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>·</mml:mo>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true" mathvariant="normal">(</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true" mathvariant="normal">)</mml:mo></mml:math><tex-math><![CDATA[$(n+1)\cdot \big(|c|+|\sigma |+|t|\big)$]]></tex-math></alternatives></inline-formula></td>
</tr>
</tbody>
</table>
</table-wrap>
<fig id="j_infor644_fig_008">
<label>Figure 6</label>
<caption>
<p>The comparison of communication costs.</p>
</caption>
<graphic xlink:href="infor644_g008.jpg"/>
</fig>
<p>Set <inline-formula id="j_infor644_ineq_307"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>120</mml:mn>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="normal">bits</mml:mi></mml:math><tex-math><![CDATA[$|\mathrm{c}|=120\hspace{2.5pt}\mathrm{bits}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_308"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>100</mml:mn>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="normal">bits</mml:mi></mml:math><tex-math><![CDATA[$|\sigma |=100\hspace{2.5pt}\mathrm{bits}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_309"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>60</mml:mn>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="normal">bits</mml:mi></mml:math><tex-math><![CDATA[$|\mathrm{t}|=60\hspace{2.5pt}\mathrm{bits}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_infor644_ineq_310"><alternatives><mml:math>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mo stretchy="false">⊆</mml:mo>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>10</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>20</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>30</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>40</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>50</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>60</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>70</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>80</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>90</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo fence="true" stretchy="false">}</mml:mo></mml:math><tex-math><![CDATA[$\mathrm{n}\subseteq \{0,10,20,30,40,50,60,70,80,90,100\}$]]></tex-math></alternatives></inline-formula>. The comparison of communication costs among this scheme and the other four schemes is shown in Fig. <xref rid="j_infor644_fig_008">6</xref>. From the comparison results, it is clear that the communication cost (referring to the amount of communication data) of the proposed solution in this article has always been at a relatively low level and has obvious advantages. From the current industrial level, the communication volume of the proposed solution in this article is fully applicable and meets the requirements.</p>
<p>Before communication overhead analysis (Table <xref rid="j_infor644_tab_004">4</xref>), we reference the identical fairness constraints defined in Section <xref rid="j_infor644_s_019">5.2</xref>, including unified NIST Level 1 LWE post-quantum security, consistent <inline-formula id="j_infor644_ineq_311"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>120</mml:mn></mml:math><tex-math><![CDATA[$|c|=120$]]></tex-math></alternatives></inline-formula> bit ciphertext and <inline-formula id="j_infor644_ineq_312"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>100</mml:mn></mml:math><tex-math><![CDATA[$|\sigma |=100$]]></tex-math></alternatives></inline-formula> bit signature sizing across LBHP/ELDG/LBDG/DRQP and our lattice suite. Again, only shared upload/download cipher/sign payloads are calculated for fair comparison; auxiliary metadata unique to our trading platform (oracle hash, quality score fields) is excluded from the communication cost formulas in Table <xref rid="j_infor644_tab_004">4</xref> to match baseline schemes’ payload structure. Set single ciphertext payload <inline-formula id="j_infor644_ineq_313"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>120</mml:mn></mml:math><tex-math><![CDATA[$|c|=120$]]></tex-math></alternatives></inline-formula> bits, lattice aggregate signature <inline-formula id="j_infor644_ineq_314"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>100</mml:mn></mml:math><tex-math><![CDATA[$|\sigma |=100$]]></tex-math></alternatives></inline-formula> bits, transaction timestamp <inline-formula id="j_infor644_ineq_315"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>60</mml:mn></mml:math><tex-math><![CDATA[$|t|=60$]]></tex-math></alternatives></inline-formula> bits as standardized lightweight lattice sizing justified in <xref rid="j_infor644_s_019">5.2</xref>, consistent with all compared IoT/lattice baseline literature. The theoretical communication cost formula of each scheme only accumulates core cipher/sign transmission payload without extra logistics trading metadata unique to our system for fair horizontal benchmarking.</p>
<p>After observation and analysis, it can be seen that the communication cost of the proposed solution in this article has obvious advantages, and when the user volume reaches 100, the communication cost is only 3.5 KB, which can fully meet the existing industrial needs. In addition to theoretical analysis, this article also simulates a transmission delay of 1024 bytes data on the ns-3 platform (Riley and Henderson, <xref ref-type="bibr" rid="j_infor644_ref_027">2010</xref>), which is 3.69 milliseconds. Based on the above simulation results, it can be deduced that the one-way latency for transmitting a 3.5 KB payload to the peer node solely at the network link layer is 12.915 ms. In comparison, the measured end-to-end total latency of the complete transaction prototype system, which covers IPFS storage, oracle interaction, Fabric signature verification and block consensus, is approximately 103.32 ms, as shown in Fig. <xref rid="j_infor644_fig_009">7</xref>. The value of 12.915 ms is a theoretical estimation linearly converted from the test result of 1024-byte payload, rather than the direct output of ns-3 simulation. Perturbation factors such as network congestion and packet retransmission are not considered. This is very short in daily life, let alone in the industrial world with huge communication link capacity.</p>
<fig id="j_infor644_fig_009">
<label>Figure 7</label>
<caption>
<p>Experimental results of ns-3.</p>
</caption>
<graphic xlink:href="infor644_g009.jpg"/>
</fig>
<p>Next, we need to analyse communication costs from both theoretical derivation and ns-3 network simulation perspectives. Let <inline-formula id="j_infor644_ineq_316"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo></mml:math><tex-math><![CDATA[$|c|$]]></tex-math></alternatives></inline-formula> denote the bit length of a single ciphertext, <inline-formula id="j_infor644_ineq_317"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo></mml:math><tex-math><![CDATA[$|\sigma |$]]></tex-math></alternatives></inline-formula> the signature length, <inline-formula id="j_infor644_ineq_318"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo></mml:math><tex-math><![CDATA[$|t|$]]></tex-math></alternatives></inline-formula> the timestamp length. The data transmission processes in the scheme include DS uploading batches of ciphertexts to DTP, and DTP sending re-encrypted ciphertext packages to DB. For fairness, pseudonyms and keyword fields are excluded when comparing against baseline literature. The theoretical communication cost of our scheme is <inline-formula id="j_infor644_ineq_319"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>·</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(n+1)\cdot (|c|+|\sigma |+|t|)$]]></tex-math></alternatives></inline-formula>. We set single ciphertext payload <inline-formula id="j_infor644_ineq_320"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>120</mml:mn></mml:math><tex-math><![CDATA[$|c|=120$]]></tex-math></alternatives></inline-formula> bits, signature <inline-formula id="j_infor644_ineq_321"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>100</mml:mn></mml:math><tex-math><![CDATA[$|\sigma |=100$]]></tex-math></alternatives></inline-formula> bits, timestamp <inline-formula id="j_infor644_ineq_322"><alternatives><mml:math>
<mml:mo stretchy="false">|</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo stretchy="false">|</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>60</mml:mn></mml:math><tex-math><![CDATA[$|t|=60$]]></tex-math></alternatives></inline-formula> bits, and test <inline-formula id="j_infor644_ineq_323"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>10</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>20</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo fence="true" stretchy="false">}</mml:mo></mml:math><tex-math><![CDATA[$n\in \{0,10,20,\dots ,100\}$]]></tex-math></alternatives></inline-formula> data sellers. The communication volume comparison results against LBHP, ELDG, LBDG, DRQP are listed in Table <xref rid="j_infor644_tab_004">4</xref> and visualized in Fig. <xref rid="j_infor644_fig_008">6</xref>. The proposed scheme maintains low transmission data volume across all participant scales; when <inline-formula id="j_infor644_ineq_324"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>100</mml:mn></mml:math><tex-math><![CDATA[$n=100$]]></tex-math></alternatives></inline-formula>, the total payload size is only around 3.5 KB.</p>
<p>We construct a standard urban logistics 5G network topology in ns-3 to obtain the baseline one-way transmission latency. The measured one-way transmission latency for a 1024-byte pure payload is 3.69 ms. Linear scaling is performed for a total payload size of 3.5 KB: total bytes = 3.5 KB = 3584 Bytes, scaling factor = 3584/1024 = 3.5, which yields a pure-payload one-way transmission latency of 3.5 × 3.69 = 12.915 ms. This work explicitly distinguishes three mutually independent latency metrics: (1) pure payload one-way network latency (only physical-layer packet forwarding, measured via ns-3 link simulation), which equals 12.915 ms for a 3.5 KB payload; (2) full round-trip network latency (request packet plus ACK reply transmission, excluding blockchain business logic), approximately 25.83 ms; and (3) full end-to-end transaction latency (round-trip network latency + IPFS upload + oracle synchronization + Fabric batch signature verification + block consensus), approximately 103.32 ms.</p>
<p>From the ns-3 experimental results in Fig. <xref rid="j_infor644_fig_009">7</xref>, the raw network forwarding overhead of 3.5 KB ciphertext batches is only ∼12.9 ms, which is negligible for logistics data trading systems. The dominant latency source comes from consortium blockchain consensus and oracle IPFS storage synchronization operations rather than physical network transmission, which matches industrial deployment characteristics of permissioned vehicle logistics blockchains.</p>
</sec>
<sec id="j_infor644_s_021">
<label>5.4</label>
<title>Federal Learning Training Results</title>
<p>This article aims to extract key information from express delivery orders and uses public datasets for federated learning training. In order to differentiate the quality of the model, we divided the dataset unevenly into three sub-datasets, with two of them being relatively close. The loss, F1, and training time of the trained model are shown in Fig. <xref rid="j_infor644_fig_010">8</xref>(a)–(c). After analysis, it can be seen that the federated model obtained through model parameter aggregation has obvious advantages. Specifically, it is characterized by minimal loss, fastest convergence, highest accuracy, highest F1 value, and minimum average training.</p>
<fig id="j_infor644_fig_010">
<label>Figure 8</label>
<caption>
<p>The loss, F1, and training time of the trained model.</p>
</caption>
<graphic xlink:href="infor644_g010.jpg"/>
</fig>
</sec>
<sec id="j_infor644_s_022">
<label>5.5</label>
<title>Evaluation and Analysis of Transaction Data Quality</title>
<p>After the federated learning training process in Section <xref rid="j_infor644_s_021">5.4</xref>, each of the three datasets generates a sub-model from which system parameters can be extracted, and then integrated to obtain the parameters of the federated model and the federated model. By extracting the first feature vector of each model parameter and performing cosine similarity measurement, cosine distances {<inline-formula id="j_infor644_ineq_325"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:mi mathvariant="italic">D</mml:mi></mml:math><tex-math><![CDATA[$CD$]]></tex-math></alternatives></inline-formula><sub>m1, m2</sub> = 0.094437396429111, <inline-formula id="j_infor644_ineq_326"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:mi mathvariant="italic">D</mml:mi></mml:math><tex-math><![CDATA[$CD$]]></tex-math></alternatives></inline-formula><sub>m1, m3</sub> = 0.11295942078994292, <inline-formula id="j_infor644_ineq_327"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:mi mathvariant="italic">D</mml:mi></mml:math><tex-math><![CDATA[$CD$]]></tex-math></alternatives></inline-formula><sub>m2, m3</sub> = 0.11139562839435492, <inline-formula id="j_infor644_ineq_328"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:mi mathvariant="italic">D</mml:mi></mml:math><tex-math><![CDATA[$CD$]]></tex-math></alternatives></inline-formula><sub>m1, fem</sub> = 0.13955981594752434, <inline-formula id="j_infor644_ineq_329"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:mi mathvariant="italic">D</mml:mi></mml:math><tex-math><![CDATA[$CD$]]></tex-math></alternatives></inline-formula><sub>m2, fem</sub> = 0.20707381409395367, <inline-formula id="j_infor644_ineq_330"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:mi mathvariant="italic">D</mml:mi></mml:math><tex-math><![CDATA[$CD$]]></tex-math></alternatives></inline-formula><sub>m3, fem</sub> = 0.13501420655496094} are obtained. After analysis, Data 2 and federated model are quite similar, and the cosine distance of their feature vectors is also relatively close, while the cosine distance of the feature vectors from Data 1 and Data 3 are relatively far. This is consistent with expectations and has good differentiation.</p>
<p>The original test only adopted a single express delivery order dataset to verify the model quality assessment algorithm and incentive mechanism. To fully verify the generalization and adaptability of the proposed method for diversified heterogeneous logistics data sources, we expand the experimental test set to cover three typical core logistics business scenarios: intelligent warehousing, cold chain cargo monitoring, long-distance transportation route scheduling, together with the original express delivery dataset as the baseline. All four datasets contain fragmented, heterogeneously distributed local FL model parameters trained by different logistics merchants, and we test the cosine similarity distribution and incentive income allocation performance separately for each scenario.</p>
<p><bold>Scenario 1 (Baseline):</bold> Express delivery order dataset. Feature dimensions: delivery distance, order weight, delivery time window, delivery fee; 120 local sub-models trained by scattered express outlets.</p>
<p><bold>Scenario 2:</bold> Intelligent warehousing dataset. Feature dimensions: goods inbound/outbound volume, shelf occupancy, storage duration, inventory turnover rate; 96 local sub-models from regional warehouse stations.</p>
<p><bold>Scenario 3:</bold> Cold chain logistics monitoring dataset. Feature dimensions: real-time temperature, humidity, transport duration, cargo loss risk; 84 local sub-models of refrigerated vehicle terminals.</p>
<p><bold>Scenario 4:</bold> Long-distance transportation route scheduling dataset. Feature dimensions: road congestion coefficient, fuel consumption, driving duration, cargo load; 112 local sub-models of freight carriers.</p>
<p>All datasets adopt FedAvg for local federated training, extract gradient feature vectors from each sub-model, and compute cosine similarity with the unified global benchmark model to quantify data quality; then calculate distributed revenue under the dual-weight incentive formula (<inline-formula id="j_infor644_ineq_331"><alternatives><mml:math>
<mml:mi mathvariant="italic">w</mml:mi>
<mml:mtext>_</mml:mtext>
<mml:mn>1</mml:mn>
<mml:mo>=</mml:mo>
<mml:mn>0.6</mml:mn></mml:math><tex-math><![CDATA[$w\text{\_}1=0.6$]]></tex-math></alternatives></inline-formula>, quality weight; <inline-formula id="j_infor644_ineq_332"><alternatives><mml:math>
<mml:mi mathvariant="italic">w</mml:mi>
<mml:mtext>_</mml:mtext>
<mml:mn>2</mml:mn>
<mml:mo>=</mml:mo>
<mml:mn>0.4</mml:mn></mml:math><tex-math><![CDATA[$w\text{\_}2=0.4$]]></tex-math></alternatives></inline-formula>, participation time weight).</p>
<p>We count the cosine similarity <inline-formula id="j_infor644_ineq_333"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:mi mathvariant="italic">S</mml:mi>
<mml:mtext>_</mml:mtext>
<mml:mi mathvariant="italic">i</mml:mi></mml:math><tex-math><![CDATA[$CS\text{\_}i$]]></tex-math></alternatives></inline-formula> distribution range of local sub-models in each logistics scenario, and divide data quality into three grades: High quality (<inline-formula id="j_infor644_ineq_334"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0.8</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$C{S_{i}}\in [0.8,1.0]$]]></tex-math></alternatives></inline-formula>), Medium quality (<inline-formula id="j_infor644_ineq_335"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0.4</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>0.8</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$C{S_{i}}\in [0.4,0.8]$]]></tex-math></alternatives></inline-formula>), Low quality (<inline-formula id="j_infor644_ineq_336"><alternatives><mml:math>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>0.4</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$C{S_{i}}\in [0,0.4]$]]></tex-math></alternatives></inline-formula>). The statistical distribution results of each scenario are as follows:</p>
<list>
<list-item id="j_infor644_li_056">
<label>1)</label>
<p>Express delivery dataset (baseline): High-quality sub-models account for 27.5%, medium-quality 54.2%, low-quality 18.3%. The similarity distribution is relatively scattered, matching the uneven data quality of express outlets with different daily order volumes.</p>
</list-item>
<list-item id="j_infor644_li_057">
<label>2)</label>
<p>Intelligent warehousing dataset: High-quality sub-models account for 31.2%, medium-quality 52.1%, low-quality 16.7%. Warehouse operation data has stable daily cycle characteristics, and most local models maintain medium-to-high similarity with the global benchmark.</p>
</list-item>
<list-item id="j_infor644_li_058">
<label>3)</label>
<p>Cold chain logistics dataset: High-quality sub-models account for 24.0%, medium-quality 49.4%, low-quality 26.6%. Temperature monitoring data is easily affected by abnormal environmental noise, so the proportion of low-quality noisy sub-models rises slightly, but the cosine similarity grading rule can still effectively distinguish model quality differences.</p>
</list-item>
<list-item id="j_infor644_li_059">
<label>4)</label>
<p>Transportation route scheduling dataset: High-quality sub-models account for 29.5%, medium-quality 51.8%, low-quality 18.7%. Route feature fluctuation is moderate, and the similarity distribution is close to the express baseline.</p>
</list-item>
</list>
<p>Across all four heterogeneous logistics datasets, our cosine similarity measurement method can stably generate continuous quality scoring values between 0 and 1, and clearly stratify high/medium/low-quality local models without failure of discrimination caused by inconsistent feature dimensions of different logistics businesses. It proves the quality assessment algorithm is not limited to single express data and has strong generalization for fragmented multi-source logistics data.</p>
<table-wrap id="j_infor644_tab_005">
<label>Table 5</label>
<caption>
<p>Incentive income allocation results across four logistics scenarios.</p>
</caption>
<table>
<thead>
<tr>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Logistics scenario</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">High-quality DS income</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Medium-quality DS income</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Low-quality DS income</td>
</tr>
</thead>
<tbody>
<tr>
<td style="vertical-align: top; text-align: left">Express delivery</td>
<td style="vertical-align: top; text-align: left">4268</td>
<td style="vertical-align: top; text-align: left">3152</td>
<td style="vertical-align: top; text-align: left">2580</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">Intelligent warehousing</td>
<td style="vertical-align: top; text-align: left">4391</td>
<td style="vertical-align: top; text-align: left">3087</td>
<td style="vertical-align: top; text-align: left">2522</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">Cold Chain logistics</td>
<td style="vertical-align: top; text-align: left">4135</td>
<td style="vertical-align: top; text-align: left">3216</td>
<td style="vertical-align: top; text-align: left">2649</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Transportation scheduling</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">4320</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">3105</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">2575</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>We fix the total transaction revenue <inline-formula id="j_infor644_ineq_337"><alternatives><mml:math>
<mml:mtext mathvariant="italic">Total</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mn>10000</mml:mn></mml:math><tex-math><![CDATA[$\textit{Total}=10000$]]></tex-math></alternatives></inline-formula> token in each scenario, and select three representative data sellers (high/medium/low quality, with equal participation service time) to compare the final allocated income calculated by our dual-weight incentive formula as shown in Table <xref rid="j_infor644_tab_005">5</xref>.</p>
<p>From the table above, under all four heterogeneous logistics datasets, the incentive mechanism maintains consistent differentiation logic: data sellers with higher model cosine similarity (higher data quality) obtain significantly higher transaction revenue, while low-quality noisy models get lower matching income. Even for cold chain datasets with more low-quality noisy sub-models, the dual-weight formula still effectively widens the income gap between high and low-quality participants, and the income proportion fluctuation of the same quality grade across different scenarios is controlled within 6.2%. The stable incentive differentiation performance verifies that the designed revenue distribution rule adapts to heterogeneous logistics data feature distributions from warehousing, cold chain and transportation businesses, and will not fail to reward high-value fragmented logistics data under diversified business environments.</p>
<p>By expanding experimental verification to intelligent warehousing, cold chain and transportation scheduling datasets besides the original express order data, we confirm two key generalization properties of the proposed quality assessment and incentive mechanism:</p>
<p>1) The cosine similarity feature vector extraction method can adapt to different feature dimensions and value distributions of heterogeneous logistics data, and stably realize quantitative grading of local FL model quality without scenario-specific parameter adjustment;</p>
<p>2) The dual-weight incentive formula based on quality and participation time maintains stable income differentiation ability across all mainstream logistics business scenarios, continuously motivating merchants to provide high-quality fragmented logistics model parameters regardless of data source types.</p>
<p>The multi-scenario test results fully eliminate the limitation of single-dataset verification and prove the strong environmental adaptability and generalization of the algorithm for diversified smart logistics data trading scenes.</p>
<p>To precisely clarify the novelty of our integrated logistics data trading scheme, we select eight highly representative SOTA works including blockchain-federated learning data trading architectures and lattice-based privacy-preserving cryptosystems for horizontal comparison. Table <xref rid="j_infor644_tab_006">6</xref> systematically evaluates all schemes from seven core functional dimensions required by the reviewer: post-quantum security, lattice proxy re-encryption, dynamic authentication, quantitative data quality evaluation, differentiated incentive allocation, oracle-based on/off-chain consistency, and comprehensive experimental performance analysis.</p>
<p>From Table <xref rid="j_infor644_tab_006">6</xref>, all existing SOTA schemes have obvious functional fragmentation defects, while our work is the first integrated logistics data trading system that realizes all seven core required functions simultaneously, which precisely reflects the three orthogonal innovations proposed in this paper: Most blockchain-federated learning trading works (Xu <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_032">2023</xref>; Tu <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_028">2022</xref>; Lu <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_020">2019</xref>; Li and Shi, <xref ref-type="bibr" rid="j_infor644_ref_013">2024</xref>) adopt pairing/Paillier classical cryptography without post-quantum lattice support, lacking dynamic cross-buyer proxy re-encryption and cannot resist quantum attacks. Our third core innovation fills this gap with complete LHPRE + lattice signature cryptographic suite. All FL-related SOTA literature ignores quantitative model data quality grading; their incentive mechanisms only adopt single participation-time weights without quality differentiation, which cannot adapt to fragmented heterogeneous logistics data.</p>
<table-wrap id="j_infor644_tab_006">
<label>Table 6</label>
<caption>
<p>Cross-scheme functional comparison of relevant blockchain-FL and lattice privacy works.</p>
</caption>
<table>
<thead>
<tr>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Scheme</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Post-quantum security</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Lattice proxy re-encryption</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Dynamic authentication</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Data quality quantification</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Quality-weighted incentives</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Oracle consistency</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Full performance evaluation</td>
</tr>
</thead>
<tbody>
<tr>
<td style="vertical-align: top; text-align: left">(Xu <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_032">2023</xref>)</td>
<td style="vertical-align: top; text-align: left">× Pairing Crypto</td>
<td style="vertical-align: top; text-align: left">× Static Encryption</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_338"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> Basic Auth</td>
<td style="vertical-align: top; text-align: left">× No Quality Metric</td>
<td style="vertical-align: top; text-align: left">× Fixed Reward</td>
<td style="vertical-align: top; text-align: left">× Separate Storage</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_339"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> Computational Cost</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">(Tu <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_028">2022</xref>)</td>
<td style="vertical-align: top; text-align: left">× Pairing Crypto</td>
<td style="vertical-align: top; text-align: left">× No Re-Encryption</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_340"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> Static Access</td>
<td style="vertical-align: top; text-align: left">× Unclassified Data</td>
<td style="vertical-align: top; text-align: left">Single Factor</td>
<td style="vertical-align: top; text-align: left">× No Sync Module</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_341"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula>Communication Overhead</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">(Lu <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_020">2019</xref>)</td>
<td style="vertical-align: top; text-align: left">× Pairing Crypto</td>
<td style="vertical-align: top; text-align: left">×Homomorphic Sum Only</td>
<td style="vertical-align: top; text-align: left">× Fixed Identity</td>
<td style="vertical-align: top; text-align: left">× No Quality Grading</td>
<td style="vertical-align: top; text-align: left">× No Revenue Distribution</td>
<td style="vertical-align: top; text-align: left">× Off-Chain Raw Data</td>
<td style="vertical-align: top; text-align: left">× No Multi-Scenario Test</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">(Li and Shi, <xref ref-type="bibr" rid="j_infor644_ref_013">2024</xref>)</td>
<td style="vertical-align: top; text-align: left">× Paillier</td>
<td style="vertical-align: top; text-align: left">× Static Cipher</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_342"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> Static Auth</td>
<td style="vertical-align: top; text-align: left">×Model Quality Absent</td>
<td style="vertical-align: top; text-align: left">× Uniform Payment</td>
<td style="vertical-align: top; text-align: left">×Independent DB</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_343"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> Single Dataset Test</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">(Luo <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_021">2020</xref>)</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_344"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> LWE-Based</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_345"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> Re-Enc Core</td>
<td style="vertical-align: top; text-align: left">× No Dynamic Access</td>
<td style="vertical-align: top; text-align: left">× Algorithm Only</td>
<td style="vertical-align: top; text-align: left">× No Trading Logic</td>
<td style="vertical-align: top; text-align: left">×Standalone Crypto</td>
<td style="vertical-align: top; text-align: left">× Pure Theory</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">(Li <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_018">2023</xref>)</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_346"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> LWE-Based</td>
<td style="vertical-align: top; text-align: left">× No Proxy Transfer</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_347"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> Query Auth</td>
<td style="vertical-align: top; text-align: left">× FL Model Evaluation</td>
<td style="vertical-align: top; text-align: left">× Incentive Design</td>
<td style="vertical-align: top; text-align: left">× Single-Chain Storage</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_348"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> Limited Simulation</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">(Abdallah and Shen, <xref ref-type="bibr" rid="j_infor644_ref_001">2016</xref>)</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_349"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> LWE-Based</td>
<td style="vertical-align: top; text-align: left">× Static Aggregate</td>
<td style="vertical-align: top; text-align: left">× User Dynamic Auth</td>
<td style="vertical-align: top; text-align: left">× Non-FL Data</td>
<td style="vertical-align: top; text-align: left">× Trading Mechanism</td>
<td style="vertical-align: top; text-align: left">× No Off-Chain DB</td>
<td style="vertical-align: top; text-align: left">× Only Encryption Cost</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">(Qian <italic>et al.</italic>, <xref ref-type="bibr" rid="j_infor644_ref_025">2020</xref>)</td>
<td style="vertical-align: top; text-align: left"><inline-formula id="j_infor644_ineq_350"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> LWE-Based</td>
<td style="vertical-align: top; text-align: left">× Cross-User ReEnc</td>
<td style="vertical-align: top; text-align: left">× Temporary Access</td>
<td style="vertical-align: top; text-align: left">× No Model Grading</td>
<td style="vertical-align: top; text-align: left">× Revenue Allocation</td>
<td style="vertical-align: top; text-align: left">× No Consistency Logic</td>
<td style="vertical-align: top; text-align: left">× Simplified Test</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Ours</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_351"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> <bold>LWE Full Suite</bold></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_352"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> <bold>LHPRE Dynamic Transfer</bold></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_353"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> <bold>Role-Based Dynamic Auth</bold></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_354"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> <bold>Cosine Similarity Quantification</bold></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_355"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> <bold>Dual-Weight Quality-Time Incentive</bold></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_356"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> <bold>Oracle Bidirectional Sync</bold></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><inline-formula id="j_infor644_ineq_357"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> <bold>Four Logistics Scenarios</bold></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p>Note: <inline-formula id="j_infor644_ineq_358"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow/>
</mml:msqrt></mml:math><tex-math><![CDATA[$\sqrt{}$]]></tex-math></alternatives></inline-formula> – Complete functional module implemented; × – Function missing or only partial/primitive support without complete trading workflow. Pairing cryptography – vulnerable to quantum computation; LWE lattice – post-quantum secure.</p>
</table-wrap-foot>
</table-wrap>
<p>Neither lattice cryptography primitives nor existing blockchain trading platforms design dedicated oracle synchronization modules to resolve on-chain ledger and off-chain IPFS storage inconsistency. Our five-layer decoupled architecture (first contribution) embeds a complete bidirectional oracle read/write and error correction mechanism, a function completely absent in all compared references.</p>
<p>Additionally, all contrast works only conduct simulation experiments on a single fixed dataset, while our performance evaluation covers four mainstream logistics business scenarios (express, warehousing, cold chain, transportation), with more comprehensive and convincing test results. The above cross-sheet comparison clearly distinguishes our integrated novelty from scattered partial improvements of previous studies, eliminating ambiguous generalized novelty descriptions.</p>
<p>To verify the stability of the quality classification thresholds and the adaptability of the feature extraction algorithm to different model architectures, we conduct supplementary comparative experiments on four logistics datasets: Threshold sensitivity test: Adjust the high-medium boundary from 0.7 to 0.9 and medium-low boundary from 0.3 to 0.5. The statistical proportion fluctuation of high/medium/low-quality sub-models in all datasets is less than 4.3%, which verifies that the selected 0.4/0.8 thresholds are insensitive to minor offset and suitable for multi-scenario logistics data. Variable model scale test: Train FL models with hidden layer dimensions 32, 64, 128, 256, respectively. After L2 normalization, the cosine similarity grading results have no obvious offset, proving the normalization step effectively eliminates the interference of model size difference. Non-IID adaptability test: Cold chain dataset contains massive abnormal temperature noise and highly skewed sample distribution. The proposed algorithm can still accurately distinguish low-quality noisy models from high-precision sensing models, showing strong robustness to non-uniform logistics data distribution. The above experimental results fully demonstrate that the gradient feature extraction + cosine similarity evaluation pipeline has stable generalization ability for diversified fragmented logistics business data sources.</p>
</sec>
<sec id="j_infor644_s_023">
<label>5.6</label>
<title>Hyperledger Fabric Implementation &amp; Measured Blockchain Performance</title>
<table-wrap id="j_infor644_tab_007">
<label>Table 7</label>
<caption>
<p>Fabric SBFT blockchain performance metrics.</p>
</caption>
<table>
<thead>
<tr>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Concurrent requests C</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Avg single Tx latency (ms)</td>
<td style="vertical-align: top; text-align: left; border-top: solid thin; border-bottom: solid thin">Steady throughput (TPS)</td>
</tr>
</thead>
<tbody>
<tr>
<td style="vertical-align: top; text-align: left">10</td>
<td style="vertical-align: top; text-align: left">2147</td>
<td style="vertical-align: top; text-align: left">46</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">100</td>
<td style="vertical-align: top; text-align: left">2306</td>
<td style="vertical-align: top; text-align: left">87</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">200</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">2682</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">74</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The Fabric network deployed for all experiments uses static unified parameters as follows (as shown in Table <xref rid="j_infor644_tab_007">7</xref>): 6 independent peer nodes (3 logistics merchants and 2 third-party auditors, and 1 DTP administrator node), SBFT (view change timeout = 4s, fault tolerance threshold <inline-formula id="j_infor644_ineq_359"><alternatives><mml:math>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn></mml:math><tex-math><![CDATA[$t=2$]]></tex-math></alternatives></inline-formula> malicious peers), 2000 ms (block is sealed after timeout or when transaction batch hits maximum size), 200 concurrent transactions, single dedicated logistics data trading channel (isolated from other business ledgers), LevelDB for on-chain world state storage, IPFS v0.18 for large ciphertext batches, connected via the custom logistics oracle chaincode.</p>
<p>We implement four isolated Go chaincode contracts deployed on the single trading channel, each responsible for a full sub-business process:</p>
<p>RegisterUser(pid, role, publicLatticeKey): Record pseudonym, DS/DB/DTP role and user public lattice key to world state; execute distributed master key fragment distribution logic.</p>
<p>RevokeAuthCredential(pid, revokeReason): Write permanent revocation record to $AuthRevokeList$ for dynamic authentication failure handling.</p>
<p>QueryUserPolicy(pid): Return pre-defined RBAC access policy for subsequent trading authentication checks.</p>
<p>BatchVerifySignature(cipherBatch, aggLatticeSig): Batch BLS aggregate signature verification for uploaded FL model ciphertexts.</p>
<p>TriggerTradeRequest(dbPid, keyword, queryWindow): Validate dynamic one-time authentication credential before opening trading pipeline.</p>
<p>ExecuteLHPREReEncMetaRecord(dsPid, dbPid, reEncCipherHash): Log re-encryption metadata after DTP proxy transformation.</p>
<p>SyncIPFSHash(pid, keyword, ipfsTorrentHash, qualityScore): Real-time write binding record between ciphertext batch and IPFS storage address.</p>
<p>PeriodicConsistencyCheck(): Background 300s polling logic to detect file loss/hash mismatch and trigger correction transactions.</p>
<p>GetStoredCipherHash(pid): Authorized auditor interface to retrieve historical storage audit records.</p>
<p>CalcSingleIncome(csScore, normT, totalRevenue): Implement the dual-weight incentive formula <inline-formula id="j_infor644_ineq_360"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mtext mathvariant="italic">income</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mtext mathvariant="italic">Total</mml:mtext>
<mml:mo>·</mml:mo><mml:mstyle displaystyle="false">
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mi mathvariant="italic">C</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mfrac>
</mml:mstyle></mml:math><tex-math><![CDATA[${\textit{income}_{i}}=\textit{Total}\cdot \frac{{w_{1}}C{S_{i}}+{w_{2}}{T_{i}}}{\textstyle\sum ({w_{1}}C{S_{k}}+{w_{2}}{T_{k}})}$]]></tex-math></alternatives></inline-formula> with fixed <inline-formula id="j_infor644_ineq_361"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.6</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}=0.6$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_362"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.4</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}=0.4$]]></tex-math></alternatives></inline-formula>.</p>
<p>BatchSettleAllSellers(participantList): Traverse all DS participants in one trading batch and write immutable settlement records to blocks.</p>
<p>QueryHistoricalSettlement(pid, timeRange): Audit interface for historical profit distribution traceability.</p>
<p>Latency is dominated by the fixed 2000 ms block batch sealing timeout, throughput limited by small transaction batches. Blocks fill up before timeout, throughput reaches peak 87 TPS, which is the stable operating point for normal logistics trading volume. SBFT consensus communication overhead rises, block sealing delay increases and throughput slightly drops to 74 TPS. All latency values only measure pure Fabric on-chain consensus and chaincode execution overhead; off-chain local encryption/IPFS upload delay is counted separately in Section V.C communication experiments and not included here.</p>
</sec>
</sec>
<sec id="j_infor644_s_024">
<label>6</label>
<title>Conclusion</title>
<p>This paper targets the three major pain points of existing blockchain-federated logistics data trading schemes: vulnerability to quantum attacks, lack of quantitative heterogeneous data quality metrics, and unaddressed on-chain/off-chain storage inconsistency. We construct an integrated post-quantum privacy-preserving dynamic authentication data trading system for smart logistics, with three orthogonal, fully implemented core innovations (distinct from fragmented partial functions of state-of-the-art schemes, see Table <xref rid="j_infor644_tab_006">6</xref>):</p>
<list>
<list-item id="j_infor644_li_060">
<label>(1)</label>
<p>A five-layer decoupled consortium blockchain logistics trading architecture with dedicated logistics oracle module. We formalize the oracle’s trust boundary, fixed synchronization frequency, bidirectional IPFS-blockchain synchronization workflow, multi-type fault auto-repair logic and multi-peer anti-manipulation constraints, fundamentally solving the on-chain ledger and off-chain ciphertext storage inconsistency ignored by prior monolithic platforms. The oracle module is fully embedded into the four-phase data trading pipeline and validated in multi-scenario simulations.</p>
</list-item>
<list-item id="j_infor644_li_061">
<label>(2)</label>
<p>A standardized cosine-similarity model quality assessment algorithm paired with dual-weight incentive distribution mechanism. We supplement complete gradient feature extraction, L2 normalization, upper/lower benchmark reference vector construction, and threshold sensitivity analysis to ensure the evaluation method is robust to variable model scales and highly non-IID logistics datasets. The incentive formula clearly defines normalized participation time <inline-formula id="j_infor644_ineq_363"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${T_{i}}$]]></tex-math></alternatives></inline-formula>, adopts balanced <inline-formula id="j_infor644_ineq_364"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.6</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}=0.6$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_365"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.4</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}=0.4$]]></tex-math></alternatives></inline-formula> weights, and provides game-theoretic incentive compatibility proof, with rigorous analysis proving resistance to free-riding, Sybil accounts and low-quality repeated submissions. Multi-logistics-scenario experiments verify stable revenue differentiation performance.</p>
</list-item>
<list-item id="j_infor644_li_062">
<label>(3)</label>
<p>A complete post-quantum lattice cryptographic suite integrated with full-lifecycle dynamic authentication. The LHPRE proxy re-encryption and LHS lattice signature primitives are built on LWE hardness to resist quantum computing threats, supporting flexible cross-buyer ciphertext transfer for frequent logistics transactions. Critically, dynamic one-time authentication with role-based access control is not a tentative idea or future direction of this paper: we formalize its full lifecycle via standalone Algorithm 6, covering local credential generation, on-chain lattice signature verification, multi-peer RBAC policy update, timed credential expiration, permanent on-chain revocation and multi-class authentication failure handling. The authentication module is tightly coupled with the trading phase and supported by a formal security corollary proving resistance to replay, forgery and cross-role access violations.</p>
</list-item>
</list>
<p>We complete a comprehensive theoretical and experimental validation for the proposed scheme: formal LWE-based privacy and multi-party collusion resistance proofs are provided; computational/communication overhead comparisons are conducted under unified post-quantum security and lattice parameter fairness constraints; ns-3 network delay tests and Hyperledger Fabric SBFT blockchain latency/throughput benchmarks are reported across express, warehousing, cold chain and transportation heterogeneous logistics datasets, verifying the efficiency and practical deployment feasibility of the integrated system.</p>
<p>Unlike dynamic authentication (fully realized in this manuscript), the following research problems remain unresolved and constitute our future extension directions:</p>
<list>
<list-item id="j_infor644_li_063">
<label>(1)</label>
<p>Optimized parallel oracle batch synchronization for ultra-large-scale logistics clusters. The current oracle processes cipher batches sequentially; future work will design parallel multi-oracle sharding architecture to reduce synchronization latency under thousands of concurrent data sellers.</p>
</list-item>
<list-item id="j_infor644_li_064">
<label>(2)</label>
<p>Adaptive dynamic weight self-learning incentive mechanism. The fixed <inline-formula id="j_infor644_ineq_366"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.6</mml:mn></mml:math><tex-math><![CDATA[${w_{1}}=0.6$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_infor644_ineq_367"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0.4</mml:mn></mml:math><tex-math><![CDATA[${w_{2}}=0.4$]]></tex-math></alternatives></inline-formula> weights suit general logistics platforms; we intend to design real-time weight adjustment logic based on market data supply-demand ratio via reinforcement learning to further optimize long-term market equilibrium.</p>
</list-item>
<list-item id="j_infor644_li_065">
<label>(3)</label>
<p>Fine-grained attribute-based encryption combined with threshold multi-authority authentication. The current RBAC dynamic authentication only supports coarse-grained DS/DB role division; follow-up work will integrate attribute lattice cryptography to realize granular permission control based on merchant scale, cargo type and geographic scope.</p>
</list-item>
<list-item id="j_infor644_li_066">
<label>(4)</label>
<p>Lightweight lattice primitives optimized for low-power logistics edge terminals. Existing LHPRE/LHS operations have certain computing overhead for embedded vehicle sensors; we plan to design compressed lattice sampling algorithms to reduce terminal cryptographic latency without sacrificing post-quantum security.</p>
</list-item>
<list-item id="j_infor644_li_067">
<label>(5)</label>
<p>Formal verification of smart contract logic. The four Fabric chaincode modules are functionally tested via simulation; future work will adopt formal verification tools to eliminate potential logic loopholes in registration, trading and incentive settlement chaincode.</p>
</list-item>
</list>
</sec>
</body>
<back>
<ref-list id="j_infor644_reflist_001">
<title>References</title>
<ref id="j_infor644_ref_001">
<mixed-citation publication-type="journal"><string-name><surname>Abdallah</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Shen</surname>, <given-names>X.S.</given-names></string-name> (<year>2016</year>). <article-title>A lightweight lattice-based homomorphic privacy-preserving data aggregation scheme for smart grid</article-title>. <source>IEEE Transactions on Smart Grid</source>, <volume>9</volume>(<issue>1</issue>), <fpage>396</fpage>–<lpage>405</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_002">
<mixed-citation publication-type="journal"><string-name><surname>Androulaki</surname>, <given-names>E.</given-names></string-name>, <string-name><surname>Barger</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Bortnikov</surname>, <given-names>V.</given-names></string-name>, <string-name><surname>Cachin</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Christidis</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>De Caro</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Enyeart</surname>, <given-names>D.</given-names></string-name>, <string-name><surname>Ferris</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Laventman</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Manevich</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Muralidharan</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Murthy</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Nguyen</surname>, <given-names>B.</given-names></string-name>, <string-name><surname>Sethi</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Singh</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Smith</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Sorniotti</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Stathakopoulou</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Vukolić</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Weed Cocco</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Yellick</surname>, <given-names>J.</given-names></string-name> (<year>2018</year>). <article-title>Hyperledger fabric: a distributed operating system for permissioned blockchains</article-title>. <source>Proceedings of the Thirteenth EuroSys Conference</source>, <volume>30</volume>, <fpage>1</fpage>–<lpage>15</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_003">
<mixed-citation publication-type="journal"><string-name><surname>Azcoitia</surname>, <given-names>S.A.</given-names></string-name>, <string-name><surname>Laoutaris</surname>, <given-names>N.</given-names></string-name> (<year>2022</year>). <article-title>A survey of data marketplaces and their business models</article-title>. <source>ACM SIGMOD Record</source>, <volume>51</volume>(<issue>3</issue>), <fpage>18</fpage>–<lpage>29</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_004">
<mixed-citation publication-type="journal"><string-name><surname>Chen</surname> <given-names>J.</given-names></string-name>, <string-name><surname>Xue</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Huang</surname>, <given-names>L.</given-names></string-name>, <string-name><surname>Baker</surname>, <given-names>T.</given-names></string-name>, <string-name><surname>Zhou</surname>, <given-names>Z.</given-names></string-name> (<year>2023</year>). <article-title>Privacy-preserving and traceable federated learning for data sharing in industrial IoT applications</article-title>. <source>Expert Systems with Applications</source>, <volume>213</volume>, <elocation-id>119036</elocation-id>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_005">
<mixed-citation publication-type="journal"><string-name><surname>Chen</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Mi</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Ping</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Yan</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Shen</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>N.</given-names></string-name>, <string-name><surname>Xia</surname>, <given-names>Q.</given-names></string-name>, <string-name><surname>Kang</surname>, <given-names>C.</given-names></string-name> (<year>2022</year>). <article-title>A blockchain consensus mechanism that uses proof of solution to optimize energy dispatch and trading</article-title>. <source>Nature Energy</source>, <volume>7</volume>, <fpage>495</fpage>–<lpage>502</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_006">
<mixed-citation publication-type="other"><string-name><surname>General Data Protection Regulation</surname></string-name> (<year>2016</year>). Regulation (EU) 2016/679 of the European Parliament and of the Council of 27 April 2016 on the protection of natural persons with regard to the processing of personal data and on the free movement of such data, and repealing Directive 95/46/EC [Online]. Available. <uri>https://eur-lex.europa.eu/legalcontent/EN/TXT/PDF/?uri=CELEX:32016R0679</uri>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_007">
<mixed-citation publication-type="chapter"><string-name><surname>Gorbunov</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Vaikuntanathan</surname>, <given-names>V.</given-names></string-name>, <string-name><surname>Wichs</surname>, <given-names>D.</given-names></string-name> (<year>2015</year>). <chapter-title>Leveled fully homomorphic signatures from standard lattices</chapter-title>. In: <source>Proceedings of the Forty-Seventh Annual ACM Symposium on Theory of Computing</source>, pp. <fpage>469</fpage>–<lpage>477</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_008">
<mixed-citation publication-type="journal"><string-name><surname>Hong</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Peng</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>L.</given-names></string-name> (<year>2022</year>). <article-title>Game analysis on the choice of emission trading among industrial enterprises driven by data</article-title>. <source>Energy</source>, <volume>239</volume>, <elocation-id>122447</elocation-id>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_009">
<mixed-citation publication-type="journal"><string-name><surname>Khezr</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Yassine</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Benlamri</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Hossain</surname>, <given-names>M.S.</given-names></string-name> (<year>2022</year>). <article-title>An edge intelligent blockchain-based reputation system for IIoT data ecosystem</article-title>. <source>IEEE Transactions on Industrial Informatics</source>, <volume>18</volume>(<issue>11</issue>), <fpage>8346</fpage>–<lpage>8355</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_010">
<mixed-citation publication-type="journal"><string-name><surname>Li</surname>, <given-names>K.</given-names></string-name> (<year>2024</year>a). <article-title>Privacy-preserving scheme with bidirectional option for blockchain-enhanced logistics internet of things</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>11</volume>(<issue>11</issue>), <fpage>20562</fpage>–<lpage>20574</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_011">
<mixed-citation publication-type="journal"><string-name><surname>Li</surname>, <given-names>K.</given-names></string-name> (<year>2024</year>b). <article-title>A novel privacy-preserving range query scheme with permissioned blockchain for smart grid</article-title>. <source>IEEE Transactions on Emerging Topics in Computing</source>, <volume>13</volume>(<issue>1</issue>), <fpage>105</fpage>–<lpage>118</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_012">
<mixed-citation publication-type="journal"><string-name><surname>Li</surname>, <given-names>K.</given-names></string-name> (<year>2025</year>). <article-title>Privacy-preserving scheme with smart contracts and quadtree in 5G for fog-enhanced smart logistics</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>15</volume>, <fpage>2101</fpage>–<lpage>2115</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_013">
<mixed-citation publication-type="journal"><string-name><surname>Li</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Shi</surname>, <given-names>Y.</given-names></string-name> (<year>2024</year>). <article-title>Toward incentive with privacy preserving machine learning as a service for crowdsensed data trading</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>11</volume>(<issue>22</issue>), <fpage>36494</fpage>–<lpage>36507</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_014">
<mixed-citation publication-type="journal"><string-name><surname>Li</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Yang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Shi</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Li</surname>, <given-names>J.</given-names></string-name> (<year>2021</year>). <article-title>A lightweight privacy-preserving and sharing scheme with dual-blockchain for intelligent pricing system of smart grid</article-title>. <source>Computers &amp; Security</source>, <volume>103</volume>, <elocation-id>102189</elocation-id>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_015">
<mixed-citation publication-type="journal"><string-name><surname>Li</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Shi</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Wu</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Li</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>X.</given-names></string-name> (<year>2022</year>a). <article-title>A novel privacy-preserving multi-level aggregate signcryption and query scheme for Smart Grid via mobile fog computing</article-title>. <source>Journal of Information Security and Applications</source>, <volume>67</volume>, <elocation-id>103214</elocation-id>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_016">
<mixed-citation publication-type="journal"><string-name><surname>Li</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Yang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>S.</given-names></string-name> (<year>2022</year>b). <article-title>Privacy-preserving aggregate signcryption scheme with allowing dynamic updating of pseudonyms for fog-based smart grids</article-title>. <source>Peer-to-Peer Networking and Applications</source>, <volume>15</volume>, <fpage>2101</fpage>–<lpage>2115</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_017">
<mixed-citation publication-type="journal"><string-name><surname>Li</surname>, <given-names>K.-C.</given-names></string-name>, <string-name><surname>Shi</surname>, <given-names>R.-H.</given-names></string-name> (<year>2022</year>). <article-title>A flexible and efficient privacy-preserving range query scheme for blockchain-enhanced IoT</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>10</volume>(<issue>1</issue>), <fpage>720</fpage>–<lpage>733</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_018">
<mixed-citation publication-type="journal"><string-name><surname>Li</surname>, <given-names>K.-C.</given-names></string-name>, <string-name><surname>Shi</surname>, <given-names>R.-H.</given-names></string-name>, <string-name><surname>Guo</surname>, <given-names>W.-P.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>P.-B.</given-names></string-name>, <string-name><surname>Shao</surname>, <given-names>B.-S.</given-names></string-name> (<year>2023</year>). <article-title>Dynamic range query privacy-preserving scheme for blockchain-enhanced smart grid based on lattice</article-title>. <source>IEEE Transactions on Dependable and Secure Computing</source>, <volume>21</volume>(<issue>4</issue>), <fpage>1652</fpage>–<lpage>1664</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_019">
<mixed-citation publication-type="journal"><string-name><surname>Lo</surname>, <given-names>S.K.</given-names></string-name> (<year>2022</year>). <article-title>Toward trustworthy AI: blockchain-based architecture design for accountability and fairness of federated learning systems</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>10</volume>(<issue>4</issue>), <fpage>3276</fpage>–<lpage>3284</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_020">
<mixed-citation publication-type="journal"><string-name><surname>Lu</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Huang</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Dai</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Maharjan</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>Y.</given-names></string-name> (<year>2019</year>). <article-title>Blockchain and federated learning for privacy-preserved data sharing in industrial IoT</article-title>. <source>IEEE Transactions on Industrial Informatics</source>, <volume>16</volume>(<issue>6</issue>), <fpage>4177</fpage>–<lpage>4186</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_021">
<mixed-citation publication-type="journal"><string-name><surname>Luo</surname>, <given-names>F.</given-names></string-name>, <string-name><surname>Al-Kuwari</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Susilo</surname>, <given-names>W.</given-names></string-name>, <string-name><surname>Duong</surname>, <given-names>D.H.</given-names></string-name> (<year>2020</year>). <article-title>Chosen-ciphertext secure homomorphic proxy re-encryption</article-title>. <source>IEEE Transactions on Cloud Computing</source>, <volume>10</volume>(<issue>4</issue>), <fpage>2398</fpage>–<lpage>2408</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_022">
<mixed-citation publication-type="journal"><string-name><surname>Mazzocca</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Romandini</surname>, <given-names>N.</given-names></string-name>, <string-name><surname>Mendula</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Montanari</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Bellavista</surname>, <given-names>P.</given-names></string-name> (<year>2023</year>). <article-title>TruFLaaS: trustworthy federated learning as a service</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>10</volume>(<issue>24</issue>), <fpage>21266</fpage>–<lpage>21281</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_023">
<mixed-citation publication-type="journal"><string-name><surname>Meng</surname>, <given-names>T.</given-names></string-name>, <string-name><surname>Zhao</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Wolter</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Xu</surname>, <given-names>C.-Z.</given-names></string-name> (<year>2021</year>). <article-title>On consortium blockchain consistency: a queueing network model approach</article-title>. <source>IEEE Transactions on Parallel and Distributed Systems</source>, <volume>32</volume>(<issue>6</issue>), <fpage>1369</fpage>–<lpage>1382</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_024">
<mixed-citation publication-type="journal"><string-name><surname>Qi</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Lin</surname>, <given-names>F.</given-names></string-name>, <string-name><surname>Chen</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Tang</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Jia</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Li</surname>, <given-names>M.</given-names></string-name> (<year>2022</year>). <article-title>High-quality model aggregation for blockchain-based federated learning via reputation-motivated task participation</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>9</volume>(<issue>19</issue>), <fpage>18378</fpage>–<lpage>18391</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_025">
<mixed-citation publication-type="journal"><string-name><surname>Qian</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Cao</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Dong</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Shen</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Ye</surname>, <given-names>Y.</given-names></string-name> (<year>2020</year>). <article-title>Two secure and efficient lightweight data aggregation schemes for smart grid</article-title>. <source>IEEE Transactions on Smart Grid</source>, <volume>12</volume>(<issue>3</issue>), <fpage>2625</fpage>–<lpage>2637</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_026">
<mixed-citation publication-type="journal"><string-name><surname>Qian</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Cao</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Lu</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Chen</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Shen</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>J.</given-names></string-name> (<year>2021</year>). <article-title>The secure lattice-based data aggregation scheme in residential networks for smart grid</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>9</volume>(<issue>3</issue>), <fpage>2153</fpage>–<lpage>2164</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_027">
<mixed-citation publication-type="chapter"><string-name><surname>Riley</surname>, <given-names>G.F.</given-names></string-name>, <string-name><surname>Henderson</surname>, <given-names>T.R.</given-names></string-name> (<year>2010</year>). <chapter-title>The ns-3 network simulator</chapter-title>. In: <source>Modeling and Tools for Network Simulation</source>, <publisher-name>Springer Berlin Heidelberg</publisher-name>, <publisher-loc>Berlin, Heidelberg</publisher-loc>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_028">
<mixed-citation publication-type="journal"><string-name><surname>Tu</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Zhu</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Cong Luong</surname>, <given-names>N.</given-names></string-name>, <string-name><surname>Niyato</surname>, <given-names>D.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Li</surname>, <given-names>J.</given-names></string-name> (<year>2022</year>). <article-title>Incentive mechanisms for federated learning: from economic and game theoretic perspective</article-title>. <source>IEEE Transactions on Cognitive Communications and Networking</source>, <volume>8</volume>(<issue>3</issue>), <fpage>1566</fpage>–<lpage>1593</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_029">
<mixed-citation publication-type="journal"><string-name><surname>Wang</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Zhao</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Qiu</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Nie</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Leung</surname>, <given-names>V.C.M.</given-names></string-name> (<year>2022</year>). <article-title>InFEDge: a blockchain-based incentive mechanism in hierarchical federated learning for end-edge-cloud communications</article-title>. <source>IEEE Journal on Selected Areas in Communications</source>, <volume>40</volume>(<issue>12</issue>), <fpage>3325</fpage>–<lpage>3342</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_030">
<mixed-citation publication-type="journal"><string-name><surname>Wang</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Peng</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Su</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Luan</surname>, <given-names>T.H.</given-names></string-name>, <string-name><surname>Benslimane</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Wu</surname>, <given-names>Y.</given-names></string-name> (<year>2022</year>). <article-title>A platform-free proof of federated learning consensus mechanism for sustainable blockchains</article-title>. <source>IEEE Journal on Selected Areas in Communications</source>, <volume>40</volume>(<issue>12</issue>), <fpage>3305</fpage>–<lpage>3324</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_031">
<mixed-citation publication-type="journal"><string-name><surname>Warnat-Herresthal</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Schultze</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Shastry</surname>, <given-names>K.L.</given-names></string-name>, <string-name><surname>Manamohan</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Mukherjee</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Garg</surname>, <given-names>V.</given-names></string-name>, <string-name><surname>Sarveswara</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Hándler</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Pickkers</surname>, <given-names>P.</given-names></string-name>, <string-name><surname>Ahmad Aziz</surname>, <given-names>N.</given-names></string-name>, <string-name><surname>Ktena</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Tran</surname>, <given-names>F.</given-names></string-name>, <string-name><surname>Bitzer</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Ossowski</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Casadei</surname>, <given-names>N.</given-names></string-name>, <string-name><surname>Herr</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Petersheim</surname>, <given-names>D.</given-names></string-name>, <string-name><surname>Behrends</surname>, <given-names>U.</given-names></string-name>, <string-name><surname>Kern</surname>, <given-names>F.</given-names></string-name>, <string-name><surname>Fehlmann</surname>, <given-names>T.</given-names></string-name>, <string-name><surname>Schommers</surname>, <given-names>P.</given-names></string-name>, <string-name><surname>Lehmann</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Augustin</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Rybniker</surname>, <given-names>J.</given-names></string-name> (<year>2021</year>). <article-title>Swarm learning for decentralized and confidential clinical machine learning</article-title>. <source>Nature</source>, <volume>594</volume>, <fpage>265</fpage>–<lpage>270</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_032">
<mixed-citation publication-type="journal"><string-name><surname>Xu</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Zhou</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Dong</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>L.</given-names></string-name>, <string-name><surname>Song</surname>, <given-names>X.</given-names></string-name> (<year>2023</year>). <article-title>A blockchain-based federated learning scheme for data sharing in industrial internet of things</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>10</volume>(<issue>24</issue>), <fpage>21467</fpage>–<lpage>21478</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_033">
<mixed-citation publication-type="journal"><string-name><surname>Yang</surname>, <given-names>F.</given-names></string-name>, <string-name><surname>Qiao</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Zoynul Abedin</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Huang</surname>, <given-names>C.</given-names></string-name> (<year>2022</year>). <article-title>Privacy-preserved credit data sharing integrating blockchain and federated learning for industrial 4.0</article-title>. <source>IEEE Transactions on Industrial Informatics</source>, <volume>18</volume>(<issue>12</issue>), <fpage>8755</fpage>–<lpage>8764</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_034">
<mixed-citation publication-type="journal"><string-name><surname>Yang</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Shi</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Zhou</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Yang</surname>, <given-names>K.</given-names></string-name> (<year>2022</year>). <article-title>Trustworthy federated learning via blockchain</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>10</volume>(<issue>1</issue>), <fpage>92</fpage>–<lpage>109</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_035">
<mixed-citation publication-type="journal"><string-name><surname>Ye</surname>, <given-names>J.</given-names></string-name> (<year>2011</year>). <article-title>Cosine similarity measures for intuitionistic fuzzy sets and their applications</article-title>. <source>Mathematical and Computer Modelling</source>, <volume>53</volume>, <fpage>91</fpage>–<lpage>97</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_036">
<mixed-citation publication-type="journal"><string-name><surname>Zhang</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Hua</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Wang</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Jiang</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Yang</surname>, <given-names>W.</given-names></string-name> (<year>2023</year>). <article-title>Categorical inference poisoning: verifiable defense against black-Box DNN model stealing without constraining surrogate data and query times</article-title>. <source>IEEE Transactions on Information Forensics and Security</source>, <volume>18</volume>, <fpage>1473</fpage>–<lpage>1486</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_037">
<mixed-citation publication-type="journal"><string-name><surname>Zhang</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Liu</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Qin</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Xu</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>P.</given-names></string-name> (<year>2023</year>). <article-title>Adaptive resource allocation for blockchain-based federated learning in internet of things</article-title>. <source>IEEE Internet of Things Journal</source>, <volume>10</volume>(<issue>12</issue>), <fpage>10621</fpage>–<lpage>10635</lpage>.</mixed-citation>
</ref>
<ref id="j_infor644_ref_038">
<mixed-citation publication-type="journal"><string-name><surname>Zhou</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Tian</surname>, <given-names>Y.</given-names></string-name>, <string-name><surname>Xiong</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Ma</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Peng</surname>, <given-names>C.</given-names></string-name> (<year>2022</year>). <article-title>Blockchain-enabled secure and trusted federated data sharing in IIoT</article-title>. <source>IEEE Transactions on Industrial Informatics</source>, <volume>19</volume>(<issue>5</issue>), <fpage>6669</fpage>–<lpage>6681</lpage>.</mixed-citation>
</ref>
</ref-list>
</back>
</article>
