Submitted:
26 July 2024
Posted:
30 July 2024
You are already at the latest version
Abstract
Keywords:
1. Introduction
2. Related Works
3. Military Internet of Things Environment
3.1. Environment Elements
3.2. System Requirements
- Each soldier is equipped with various health-monitoring sensors, including but not limited to heartbeat sensors and thermometers.
- Each sensor is seamlessly connected (paired) to an edge computing device integrated into the soldier’s equipment. These edge devices can perform basic cryptographic operations to ensure data security and integrity.
- A network infrastructure facilitates the communication between sensors, actuators, and central data centers.
- Special services are responsible for processing incoming data from sensors, analyzing health metrics, and issuing commands to actuators as necessary.
- Real-time tracking of soldier locations using GPS.
- Monitoring of vital signs such as body temperature, heart rate, and oxygen levels.
- Use of wireless body area sensor networks (WBASNs) for data collection.
- Integration with IoT platforms for data transmission to command centers.
- Potential incorporation of machine learning for data analysis and prediction.
- End-to-End Encryption: All communication channels between sensors, edge devices, and data centers must be encrypted with a security level sufficient for IoT purposes, ensuring that data is protected from unauthorized access or tampering throughout its transmission, safeguarding sensitive health information.
- Authentication and Access Control: Each device within the network must authenticate itself before participating in data exchange. Access control mechanisms should be enforced to restrict access based on roles and privileges, preventing unauthorized devices from accessing the network, while access control ensures that only authorized users or devices can interact with the system, reducing the risk of data breaches.
- Integrity Verification: Data integrity checks should be implemented at each stage of data transmission to detect and prevent tampering or alteration of sensor data, through integrity verification mechanisms, such as cryptographic hash functions, ensuring that data remains unchanged during transit, maintaining its reliability and trustworthiness.
- Interoperability in Federated Environments: Interoperability within systems, whether military or civilian, is essential for enhancing effectiveness and responsiveness. For instance, it allows health monitoring systems deployed by military units to share real-time health data with civilian healthcare providers, enabling timely medical interventions and resource allocation during joint operations or disaster response efforts. This aspect also gains significance in joint military operations conducted in federated environments involving allied forces. Interoperability extends beyond technical integration to encompass the harmonization of processes, standards, and protocols.
- Data-Centric Security: With the proliferation of IoT devices and sensors worn by individuals, the volume and variety of health data generated have increased exponentially. Data-centric security focuses on protecting the data rather than solely relying on perimeter defenses, acknowledging that traditional security measures may be insufficient in dynamic and distributed environments. Encryption ensures that data remains unintelligible to unauthorized entities during transmission over the network, mitigating the risk of interception or eavesdropping. Access controls enforce granular permissions, allowing only authorized personnel/systems to access/manipulate health data, reducing the likelihood of data disclosure or breaches.
4. Attribute-Based Encryption
4.1. Bilinear Pairings
- Bilinearity: for all and .
- Non-degeneracy: if g is a generator of .
- Computability: There exists an efficient algorithm to compute for all .
4.2. ABE Procedures
- 1.
-
Setup(): This procedure initializes the system.
- (a)
- Choose bilinear groups and of prime order p. These groups are fundamental to cryptographic operations.
- (b)
- Select a generator . This will be used to generate other group elements.
- (c)
- Choose random exponents . These serve as the core secrets of the system.
- (d)
-
Compute the public parameters:
- : This hides while allowing its use in computations.
- : This is used in encryption and decryption.
- : This is a pairing operation that hides .
- (e)
- Set as the public parameters.
- (f)
- Set as the master secret key.
- (g)
- Output and . is made public, while is kept secret.
- 2.
-
KeyGen(, S): This procedure generates a secret key for an attribute set S.
- (a)
- Choose a random . This randomizes the key for security.
- (b)
- Compute . This embeds the master secret into the key.
- (c)
-
For each attribute :
- Choose a random . This further randomizes each attribute component.
- Compute . is a hash function mapping attributes to group elements.
- Compute . This allows for cancellation in decryption.
- (d)
- Set as the secret key for attribute set S.
- (e)
- Output .
- 3.
-
Encrypt(, m, ): This procedure encrypts a message m under an access policy .
- (a)
- Choose a random . This randomizes the encryption.
- (b)
- Compute . This hides the message with the master secret.
- (c)
- Compute . This is used in decryption to recover the message.
- (d)
-
For each attribute i in the access structure :
- Choose a random . This randomizes each attribute in the policy.
- Compute .
- Compute . This embeds the policy into the ciphertext.
- (e)
- Set as the ciphertext.
- (f)
- Output .
- 4.
-
Decrypt(, , ): This procedure attempts to decrypt a ciphertext using a secret key.
- (a)
- First, check if the attribute set S satisfies the access policy . If not, output ⊥ (decryption failure).
- (b)
-
If S satisfies :
-
Compute using and :
- This involves pairing operations and computations based on the satisfying set of attributes.
- The computation cancels out randomizing factors, leaving only .
- Recover the message: .
- Output the decrypted message m.
-
5. Data Exchange System
5.1. Experimental Environment Architecture
- The Publisher’s Layer represents authenticated and authorized entities (sensors and actuators) that produce and secure messages through the sealing process. The device’s fingerprint (identity) is the key used for the sealing process.
- Subscribers Layer comprises authenticated and authorized entities that read available data from the Kafka Cluster layer.
- Kafka Cluster Layer is compromised of Apache Kafka message brokers that acquire, merge, store, and replicate data generated from the Publishers layer (producers) and make it available to the Subscribers layer (consumers). Apache Kafka operates on a producer-broker-consumer (publish-subscribe) model, facilitating the classification of messages based on their respective topics. The inherent synchronization mechanisms and distributed data replication among brokers ensure the continuous availability and reliability of data records. Furthermore, Kafka’s serialization and compression techniques (e.g., lz4, gzip) enable the system to remain agnostic to data formats and network protocols, thereby ensuring compatibility and robustness in heterogeneous environments.
- Streams Microservice Layer is primarily utilized to verify sealed messages. Additionally, it can be used to analyze, group, and share messages related to relevant entities and enrich them (e.g., by detecting objects during image processing). The system leverages the built-in primitives of the Kafka Cluster layer, such as failover and fault tolerance. Additionally, it employs a semantic guarantee pattern ensuring that each record (message) is processed exactly once end-to-end. Consequently, even in the event of a stream processor (microservice) failure, records are neither lost nor processed multiple times. In the proposed system, it is also utilized for ABE re-encryption.
- Device Maintain Layer manages (e.g., define, register, retire) device identity image stored in the distributed ledger. In the proposed system, it is also responsible for ABE attribute and device management.
- Communication Layer enables the Streams Microservice and the Device Maintain layer to communicate with the Distributed Ledger layer via a hardware-software IoT gateway. Moreover, a dynamic mode is proposed for the connection profile. This profile utilizes the ledger nodes’ built-in mechanism to continuously detect changes in network topology. Consequently, microservices will be able to operate reliably, even in the event of some node failures.
- The Distributed Ledger Layer redundantly stores the identities of devices belonging to organizations participating in the federation. A permissioned blockchain that employs the Practical Byzantine Fault Tolerance (PBFT) consensus protocol is proposed. In protocols of this nature, all participants must be mutually known, necessitating the use of a public key infrastructure (certificates) for identity verification. The execution of complex business logic, such as device registry, is facilitated by invoking multilingual chaincode (Go, Java, Node.js). Chaincode implements a collection of smart contracts (transaction steps) and defines an endorsement policy, specifying which organizations must authorize a transaction.
5.2. Authorization Challenges
- deploy an external server that associates users with roles and/or groups (e.g., LDAP server);
- define detailed ACL by specifying permission type for group, role, and user; (ACL stored in Kafka cluster layer);
- integrates a custom implementation of Authorizer with the user association server.
5.3. Attribute-Based Encryption Application
- Unbounded attribute sets and policies: The algorithms can handle attribute sets and policies of any size without predetermined limits.
- Support for negation and multi-use of attributes: This allows for more complex and expressive access control policies.
- Fast decryption: The schemes are designed to perform decryption operations quickly, enhancing overall system performance.
- Full security under standard assumptions: The algorithms provide strong security guarantees based on well-established cryptographic assumptions.
5.4. Design Proposition
5.4.1. General Overview
- Encrypted Data Segment: Encrypted with key derived from device fingerprint, consists of: 1. Encrypted Message; 2. Encrypted ABE policy; 3. Unencrypted Session GUID.
- Preamble: Used to authenticate message, consists of: 1. HMAC of Encrypted Data Segment (with key derived from fingerprint); 2. Device GUID; 3. Session GUID.
5.4.2. Attribute-Based Encryption Message Flow
- The sensor generates data; for example, a smartphone equipped with a heart rate sensor detects an anomaly in heart activity. This information is appended with an attribute logic sentence and encrypted using the device fingerprint. Let the logic sentence be MEDICAL and GRID28B, where GRID28B represents the sector number obtained from the location sensor, also associated with this smartphone. GUIDs and HMAC are further appended as delineated in the system overview.
- The sensor sends the data to a Kafka input topic, where processing is executed as described in the system overview.
- Devices subscribed to the MEDICAL topic receive the message. If they satisfy the attached attribute logic sentence, they decrypt the message using their current keys at the time of data transmission. The Kafka microservice preliminarily verifies the authenticity of the message.
5.4.3. Attribute-Based Encryption System Setup
- Establishment of ABE system parameters, including the master secret key.
- Pairing data recipients possessing limited computational capabilities with more robust devices by sharing a common symmetric key for communication, treating them as a unified entity.
- Loading ABE system parameters onto the designated devices intended for system operation.
- Associate private keys with device identifiers on devices designated for data reception. An identifier is any piece of information used to uniquely distinguish a device, such as a Device GUID generated in this step or a combination of type and number, e.g., UAV-1. These keys enable the distribution of attribute keys for specific devices when granting new permissions or authenticating attribute requests. This process is recorded in Hyperledger as Device Registration.
- Loading private keys corresponding to granted attributes onto the respective devices. This action is documented in Hyperledger as attribute granting.
5.4.4. Attribute and Device Revocation
- A specific attribute, such as MEDICAL, is granted to any number of devices, with each grant action recorded in Hyperledger.
- Upon revocation of the recipient attribute, this incident is documented in Hyperledger.
- New attributes associated with a revocation block number, e.g.,UAV-123, are issued to all other devices. Distribution occurs by encrypting new private keys with each device’s identity and publishing them to the Kafka device management topic.
- The microservice responsible for ABE re-encryption employs the new attribute public key.
5.4.5. Granting new permissions
- The recipient device sends a request to KGC signing it with its identifier.
- In KGC, after signature verification, a decision is made to grant a new key. It is reported on Hyperledger and sent back to the device, signed by KGC, and encrypted with the recipient identifier.
- After signature verification and decryption, if an attribute is of topic type, the device subscribes to the new topic in the Kafka broker.
6. Experimental Results
6.1. Experiments Objective
- Encryption and Decryption Time using ABE: Evaluates the time required to encrypt and decrypt data using ABE.
- Latency in Data Transmission via Kafka and Device Verification in Hyperledger: Measures the delay associated with transmitting data through the Kafka stream broker and the subsequent retrieval and verification of data within the Hyperledger framework.
- Key Generation Time: Examines the time taken to generate new encryption keys when new keys are issued or existing keys are revoked.
- Size of the Resulting Ciphertexts: Assesses the size of the encrypted data produced through the ABE processing.
6.2. MIoT Context
6.3. Implementation
6.4. Performance Evaluation
7. Conclusions
Author Contributions
Data Availability Statement
Conflicts of Interest
References
- Abdelzaher, T.; Ayanian, N.; Başar, T.; Diggavi, S.; Diesner, J.; Ganesan, D.; Govindan, R.; Jha, S.; Lepoint, T.; Marlin, B.; Nahrstedt, K.; Nicol, D.; Rajkumar, R.; Russell, S.; Seshia, S.; Sha, F.; Shenoy, P.; Srivastava, M.; Sukhatme, G.; Veeravalli, V. Will Distributed Computing Revolutionize Peace? The Emergence of Battlefield IoT. 2018, pp. 1129–1138. [CrossRef]
- Kanciak, K.; Jarosz, M.; Glebocki, P.; Wrona, K. Enabling civil-military information sharing in federated smart environments. 2021 IEEE 7th World Forum on Internet of Things (WF-IoT), 2021, pp. 897–902. [CrossRef]
- Pradhan, M.; Suri, N.; Zielinski, Z.; Tortonesi, M.; Fuchs, C.; Wrona, K.; Furtak, J.; Vasilache, D.; Street, M.; Pellegrini, V.; Benincasa, G.; Morelli, A.; Stefanelli, C.; Casini, E.; Dyk, M. Exploiting smart city IoT for disaster recovery operations. 2018. [CrossRef]
- Kanciak, K.; Wrona, K. Towards an Auditable Cryptographic Access Control to High-value Sensitive Data. International Journal of Electronics and Telecommunications 2020, 66, 449–458. [Google Scholar] [CrossRef]
- Sahai, A.; Waters, B. Fuzzy Identity-Based Encryption. In Advances in Cryptology – EUROCRYPT 2005; Cramer, R., Ed.; Springer Berlin Heidelberg: Berlin/Heidelberg, Germany, 2005; pp. 457–473. [Google Scholar]
- Johnsen, F.; Hauge, M. Interoperable, adaptable, information exchange in NATO coalition operations. Journal of Military Studies 2022, 11. [Google Scholar] [CrossRef]
- Jansen, N.; Manso, M.; Toth, A.; Chan, K.; Bloebaum, T.; Johnsen, F. NATO Core Services profiling for Hybrid Tactical Networks — Results and Recommendations. 2021, pp. 1–8. [CrossRef]
- Suri, N.; Fronteddu, R.; Cramer, E.; Breedy, M.; Marcus, K.; Velt, R.; Nilsson, J.; Mantovani, M.; Campioni, L.; Poltronieri, F.; Benincasa, G.; Ordway, B.; Peuhkuri, M.; Rautenberg, M. Experimental Evaluation of Group Communications Protocols for Tactical Data Dissemination. 2018, pp. 133–139. [CrossRef]
- De Rango, F.; Potrino, G.; Tropea, M.; Fazio, P. Energy-aware dynamic Internet of Things security system based on Elliptic Curve Cryptography and Message Queue Telemetry Transport protocol for mitigating Replay attacks. Pervasive and Mobile Computing 2019, 61, 101105. [Google Scholar] [CrossRef]
- Yang, M.; Margheri, A.; Hu, R.; Sassone, V. Differentially Private Data Sharing in a Cloud Federation with Blockchain. IEEE Cloud Computing 2017, 5. [Google Scholar] [CrossRef]
- Wang, X.; Zha, X.; Ni, W.; Liu, R.P.; Guo, Y.J.; Niu, X.; Zheng, K. Survey on blockchain for Internet of Things. Computer Communications 2019, 136, 10–29. [Google Scholar] [CrossRef]
- Guo, S.; Wang, F.; Zhang, N.; Qi, F.; Xuesong, Q. Master-slave chain based trusted cross-domain authentication mechanism in IoT. Journal of Network and Computer Applications 2020, 172, 102812. [Google Scholar] [CrossRef]
- Xu, L.; Chen, L.; Gao, Z.; Fan, X.; Suh, T.; Shi, W. DIoTA: Decentralized-Ledger-Based Framework for Data Authenticity Protection in IoT Systems. IEEE Network 2020, 34, 38–46. [Google Scholar] [CrossRef]
- Khalid, U.; Asim, M.; Baker, T.; Hung, P.; Tariq, M.A.; Rafferty, L. A decentralized lightweight blockchain-based authentication mechanism for IoT systems. Cluster Computing 2020, 23. [Google Scholar] [CrossRef]
- Müller, S.; Katzenbeisser, S.; Eckert, C. Distributed Attribute-Based Encryption. In Information Security and Cryptology – ICISC 2008; Lee, P.J., Cheon, J.H., Eds.; Springer Berlin Heidelberg: Berlin, Heidelberg, 2009; pp. 20–36. [Google Scholar]
- Jiang, J.; Gao, Y.; Gong, Y.; Jiang, Z. A Blockchain Copyright Protection Scheme Based on CP-ABE Scheme with Policy Update. Sensors 2024, 24. [Google Scholar] [CrossRef] [PubMed]
- Lu, Y.; Feng, T.; Liu, C.; Zhang, W. A Blockchain and CP-ABE Based Access Control Scheme with Fine-Grained Revocation of Attributes in Cloud Health. Computers, Materials & Continua 2024, 78, 2787–2811. [Google Scholar] [CrossRef]
- Gondalia, A.; Dixit, D.; Parashar, S.; Raghava, V.; Sengupta, A.; Sarobin, V. IoT-based Healthcare Monitoring System for War Soldiers using Machine Learning. Procedia Computer Science 2018, 133, 1005–1013. [Google Scholar] [CrossRef]
- Sujitha, V.; Aishwarya, B.; Vigneswari, P. IoT based Healthcare Monitoring and Tracking System for Soldiers using ESP32. 2022 6th International Conference on Computing Methodologies and Communication (ICCMC), 2022, pp. 377–381. [CrossRef]
- Wrona, K. Securing the Internet of Things a military perspective. 2015 IEEE 2nd World Forum on Internet of Things (WF-IoT), 2015, pp. 502–507. [CrossRef]
- Sueur, P.L. The Felin soldier system: a tailored solution for networked operations. SPIE Defense + Commercial Sensing, 2007. [CrossRef]
- Dietterle, R. The future combat systems (FCS) overview. 2005, pp. 3269 – 3273 Vol. 5. [CrossRef]
- Systems, P.M.G.S. Nett Warrior Interconnect Architecture White Paper. 2017.
- Kanciak, K.; Wrona, K.; Jarosz, M. Secure Onboarding and Key Management in Federated IoT Environments. 2022, pp. 627–634. [CrossRef]
- Sychowiec, J.; Zielinski, Z. An Experimental Framework for Secure and Reliable Data Streams Distribution in Federated IoT Environments. 2023, pp. 769–780. [CrossRef]
- Belguith, S.; Kaaniche, N.; Hammoudeh, M. Analysis of attribute based cryptographic techniques and their application to protect cloud services. Transactions on Emerging Telecommunications Technologies 2022, 33. [Google Scholar] [CrossRef]
- Tomida, J.; Kawahara, Y.; Nishimaki, R. Fast, Compact, and Expressive Attribute-Based Encryption. Cryptology ePrint Archive, Paper 2019/966, 2019. https://eprint.iacr.org/2019/966.
- Susan Symington, W. Polk, M.S. Trusted Internet of Things (IoT) Device Network-Layer Onboarding and Lifecycle Management, 2020. [CrossRef]
- Article code repository. Available online: https://github.com/mojitax/Application-of-Attribute-Based-Encryption-in-Military-Internet-of-Things-Environment (accessed on 19 July 2024).
- CIRCL github repository. Available online: https://github.com/cloudflare/circl (accessed on 14 April 2024).
- Barreto, P.; Lynn, B.; Scott, M. Constructing Elliptic Curves with Prescribed Embedding Degrees. 2002, Vol. 2576. [CrossRef]
- BLS12-381 Curve Description. Available online: https://electriccoin.co/blog/new-snark-curve/ (accessed on 17 April 2024).
- Guillevic, A.; Masson, S.; Thomé, E. Cocks–Pinch curves of embedding degrees five to eight and optimal ate pairing computation. Designs, Codes and Cryptography 2020, 88. [Google Scholar] [CrossRef]
- Boulogeorgos, A.A.A.; Bouzouita, M.; Ksentini, A.; Fossorier, M. Analysis of Web-Based IoT through Heterogeneous Networks. Sensors 2022, 22, 509. [Google Scholar] [CrossRef] [PubMed]









| Abe Encrypt | Abe Decrypt | |||||||
| Message length [bytes] |
Number of attributes |
Percentile 0.9 |
Percentile 0.95 |
Percentile 0.99 |
Ciphertext Length [bytes] |
Percentile 0.9 |
Percentile 0.95 |
Percentile 0.99 |
| 32 | 1 | 35.88ms | 35.85ms | 35.70ms | 2384 | 15.27ms | 15.35ms | 15.42ms |
| 32 | 2 | 43.50ms | 43.40ms | 43.80ms | 2744 | 18.49ms | 18.12ms | 17.87ms |
| 32 | 3 | 46.78ms | 46.64ms | 46.27ms | 3093 | 15.49ms | 15.57ms | 15.63ms |
| 32 | 5 | 73.70ms | 73.34ms | 72.91ms | 4567 | 20.42ms | 20.20ms | 20.26ms |
| 32 | 8 | 83.43ms | 83.72ms | 83.20ms | 4858 | 21.25ms | 21.29ms | 21.38ms |
| Abe Encrypt | Abe Decrypt | |||||||
| Message length [bytes] |
Number of attributes |
Percentile 0.9 |
Percentile 0.95 |
Percentile 0.99 |
Ciphertext Length [bytes] |
Percentile 0.9 |
Percentile 0.95 |
Percentile 0.99 |
| 32 | 1 | 736.44ms | 736.41ms | 736.34ms | 2384 | 281.45ms | 281.47ms | 281.58ms |
| 32 | 2 | 905.95ms | 906.01ms | 906.05ms | 2744 | 291.47ms | 291.42ms | 291.37ms |
| 32 | 3 | 1.0780s | 1.0791s | 1.0786s | 3093 | 301.55ms | 301.57ms | 301.52ms |
| 32 | 5 | 1.4257s | 1.4246s | 1.4251s | 4567 | 321.41ms | 321.49ms | 321.44ms |
| 32 | 8 | 1.9390s | 1.9387s | 1.9393s | 4858 | 351.69ms | 351.75ms | 351.73ms |
| Abe Encrypt | Abe Decrypt | |||||||
| Message length [bytes] |
Number of attributes |
Percentile 0.9 |
Percentile 0.95 |
Percentile 0.99 |
Ciphertext Length [bytes] |
Percentile 0.9 |
Percentile 0.95 |
Percentile 0.99 |
| 32 | 1 | 444.75ms | 443.71ms | 443.14ms | 2384 | 201.76ms | 201.76ms | 201.74ms |
| 32 | 2 | 550.68ms | 550.11ms | 549.76ms | 2744 | 213.71ms | 213.74ms | 213.73ms |
| 32 | 3 | 657.90ms | 657.52ms | 656.59ms | 3093 | 226.44ms | 226.43ms | 226.42ms |
| 32 | 5 | 862.46s | 861.99ms | 862.10ms | 4567 | 250.35ms | 250.35ms | 250.34ms |
| 32 | 8 | 1.1826s | 1.1817s | 1.1814s | 4858 | 287.00ms | 287.00ms | 286.99ms |
| Number of attributes |
Kafka and HL processing - Avg time |
ABE Encrypt - Avg time |
Kafka and ABE Encrypt - Avg time |
ABE Decrypt - Avg time |
Kafka and ABE Encrypt and Decrypt - Avg time |
||
| (a) | (a) | (b) | (a) | (b) | |||
| 1 | 48.6ms | 35.70ms | 84.30ms | 15.35ms | 281.58ms | 99.65ms | 365.88ms |
| 2 | 48.6ms | 43.80ms | 92.4ms | 18.12ms | 291.37ms | 110.52ms | 383.77ms |
| 3 | 48.6ms | 46.27ms | 94.87ms | 15.57ms | 301.52ms | 110.44ms | 396.39ms |
| 5 | 48.6ms | 72.91ms | 121.51ms | 20.20ms | 321.44ms | 141.71ms | 442.95ms |
| 8 | 48.6ms | 83.20ms | 131.8ms | 21.29ms | 351.73ms | 153.09ms | 483.53ms |
| Number of attributes |
Kafka and HL processing - Avg time |
ABE Encrypt - Avg time |
Kafka and ABE Encrypt - Avg time |
ABE Decrypt - Avg time |
Kafka and ABE Encrypt and Decrypt - Avg time |
||
| (a) | (a) | (b) | (a) | (b) | |||
| 1 | 48.6ms | 35.70ms | 84.30ms | 15.35ms | 201.89ms | 99.65ms | 286.19ms |
| 2 | 48.6ms | 43.80ms | 92.4ms | 18.12ms | 213.84ms | 110.52ms | 306.24ms |
| 3 | 48.6ms | 46.27ms | 94.87ms | 15.57ms | 226.58ms | 110.44ms | 321.45ms |
| 5 | 48.6ms | 72.91ms | 121.51ms | 20.20ms | 250.48ms | 141.71ms | 371.99ms |
| 8 | 48.6ms | 83.20ms | 131.8ms | 21.29ms | 287.15ms | 153.09ms | 418.95ms |
| Number of attributes |
Intel i5-13600KF | Raspberry Pi 5 |
|---|---|---|
| 5 | 0.422s | 1.914s |
| 10 | 0.795s | 2.895s |
| 15 | 1.371s | 3.904s |
| 20 | 1.928s | 4.884s |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).