From IEC 60870-5-7:2013, Par. 9.6:
"IEC 60870-5-104 implementations using TLS shall renegotiate the TLS symmetric keys when the application layer Session Key Change Interval expires or the Session Key Change Count is exceeded. It is recommended that TLS renegotiation take place before the application layer
key change".
In case multiple users are managed, the TLS session is renegotiated frequently whenever a Session Key Change procedure takes place for each user. That may have impact in performances.
Whenever a new User is added in the outstation (his "first" User Session Key is created) or an existing user Session Key is changed, the TLS session shall be renegotiated even if it was recently performed due to Session Key Change for another user.
Proposal
The TLS session key has its own validity (maximum time period and maximum allowed number of packets/bytes sent in either direction since the last key change) and it could be independent from the IEC 60870-5-7 session key validity. The TLS session validity is specified in IEC 62351-3 for all profiles including TCP/IP.
The proposal is to make the TLS Session Key renegotiation independent from the User Session Keys Change by removing the following statement in IEC 60870-5-7 Par. 9.6:
“IEC 60870-5-104 implementations using TLS shall renegotiate the TLS symmetric keys when the application layer Session Key Change Interval expires, or the Session Key Change Count is exceeded. It is recommended that TLS renegotiation take place before the application layer key change.”
The TLS Session shall be resumed/renegotiated as specified in IEC 62351-3.
Discussion
Created
Status
It is strongly recommended to utilize IEC 62351-3:2023 for the following two reasons:
- it was updated regarding the utilized cryptographic algorithms and cipher suites;
- it is self-contained not requiring any further specifications by the referencing standard (e.g. mandatory cipher suites to be used).
IEC 62351-3:2023 differs significantly from prior versions. Be aware, that this impacts conformance testing.
28 Feb 25
Approval (Editoral)
The 3rd paragraph in the Clause 9.6 of IEC TS 60870-5-7:2013 shall be deleted.
This paragraph currently states:
"IEC 60870-5-104 implementations using TLS shall renegotiate the TLS symmetric keys when
the application layer Session Key Change Interval expires or the Session Key Change Count
is exceeded. It is recommended that TLS renegotiation take place before the application layer
key change."
28 Feb 25
Discussion (red)
The processes for TLS session key change and the protected protocol (DNP3, IEC 60870-5-xxx, etc.) session key exchange should not be interconnected as this would add unnecessary complexity to the processes. As we are often reminded, complexity is the enemy of security. The session key updates for the different layers can be configured to occur at the same interval if this is desired, but each part of the stack should handle its own issues.