his repository contains the code and the dataset for the paper "Pk-IOTA: Blockchain empowered Programmable Data Plane to secure OPC UA communications in Industry 4.0"
- IOTA_src: contains all the source code to run the certificate transactions on the IOTA ledger; it also contains the source code of smart contracts and the frontend that interacts with it. All the dependencies and guides to run the software and the tests are inside the directory.
- Testbed: Provides a simulation environment for in-network certificate validation of OPC UA certificates.
- Test: Contains test scripts and data to reproduce our results.
To get started with Pk-IOTA, ensure the following prerequisites are installed on your system:
-
IOTA SDK:
- Install the IOTA SDK by following the official installation guide.
-
Kathara Framework:
- Install Kathara by following the official documentation.
Clone the repository:
git clone https://github.com/UniboSecurityResearch/Pk-IOTA.git
cd Pk-IOTA
-
Navigate to the
testbed
folder:cd testbed
-
Run Kathara to start the simulation:
kathara lstart
-
In the
h1
terminal of Kathara, execute the following command:python3 ua_client_with_encryption.py
If you find this work interesting and use it in your academic research, please cite our paper!