With the advent of Industry 4.0, there is an increasing demand for global access to industrial machines performing critical tasks. These machines need to be monitored worldwide by authorized stakeholders. However, it is imperative that this access is secure.
This project represents my attempt to develop a secure solution for machine access by leveraging high-level network protocols and adhering to best security practices.
OPC UA is a machine-to-machine communication protocol for industrial automation. It is designed to facilitate secure and reliable exchange of data and ensure interoperability between devices from different manufacturers. OPC UA ensures the security of data transfer.
For more information, see the OPC Foundation.
In this project, we're using the open62541pp library (GitHub). open62541pp is a C++ wrapper library for one of the most performant open-source C-based libraries for OPC UA, open62541 (open62541.org).
Another option, if you're trying to replicate this project in Python, would be opcua-asyncio (GitHub). I previously worked on a similar project using this library (Remote_UA). You can take a look to get a sense of how it works.
In our case were using open62541 to build our secure client.