Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorporation of Modbus/TCP Security #82

Open
wants to merge 119 commits into
base: master
Choose a base branch
from

Conversation

georgemakrakis
Copy link

Based on the specification described in this link, I have tried to implement the features that will provide a security-focused variant of the Modbus/TCP protocol by utilizing the Transport Layer Security (TLS) protocol. Essentially, none of the main functionality of the original Modbus protocol has been changed as the TLS "wraps" Modbus (per Requirement 6.1 in the specification) provide confidentiality to the transported data, data integrity, anti-replay protection, endpoint authentication via X.509v3 certificates, and authorization via information embedded in each certificate such as user and device roles.

Everything regarding the Modbus/TCP security has been created as an extra project in the solution and can be adopted whenever the users of the library desire to do so. I have tried to create all the necessary features described in Appendix B of the specification. More info can be found in the following README. Peculiarities are also described in the same README.

Any comments about flaws or misconceptions are highly appreciated!

Don't reset countRetries to prevent endless loop
…rface to use.

Added new event delegates to ModbusServer class that pass a reference to the server to the event.
…_specify_ip

Specify network interface for TCP and UDP servers
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants