@@ -105,18 +105,21 @@ therefore compromise user privacy.
105
105
An attacker that can cause a user to use an incorrect key will likely compromise
106
106
the entire protocol, not just privacy.
107
107
108
- Reliant systems must also consider agility when trying to satisfy these requirements. A naive solution to
109
- ensuring consistent and correct keys is to only use a single, fixed key pair for the entirety of
110
- the system. Users can then embed this key into software or elsewhere as needed, without any additional
111
- mechanics or controls to ensure that other users have a different key. However, this solution clearly
112
- is not viable in practice. If the corresponding key is compromised, the system fails. Rotation must
113
- therefore be supported, and in doing so, users need some mechanism to ensure that newly rotated
114
- keys are consistent and correct.
115
-
116
- Operationally, servers rotating keys may likely need to accommodate
117
- distributed system state-synchronization issues without sacrificing availability. Some systems and protocols
118
- may choose to prioritize strong consistency over availability, but this document assumes that availability
119
- is preferred to total consistency.
108
+ Reliant systems must also consider agility when trying to satisfy these requirements. A naive
109
+ solution to ensuring consistent and correct keys is to only use a single, fixed key pair for the
110
+ entirety of the system. Dependent systems can embed a copy of a fixed key into software or
111
+ configurations, without any additional mechanisms that ensure that all reliant systems have the same
112
+ key. However, this option has catastrophic failure properties : if the corresponding key is
113
+ compromised, the system fails completely.
114
+
115
+ Such fixed-key systems might avoid - or recover from - such a catastrophic failure using updates to
116
+ software or configuration. Observe however that rollout of new software or configuration can either
117
+ lead to loss of availability or a temporary state where different keys are active.
118
+
119
+ This document assumes that availability is preferred to perfect consistency. Even if a fixed key
120
+ approach is chosen, the need for consistency and correctness remains. Relying on a fixed key only
121
+ shifts the consistency and correctness requirements to the processes that manage software or
122
+ configurations.
120
123
121
124
# Consistency and Correctness at Key Acquisition
122
125
@@ -125,9 +128,7 @@ ranging in operational complexity to ease-of-implementation. In this section, we
125
128
possible solutions. The viability of each varies depending on the applicable threat model, external
126
129
dependencies, and overall reliant system's requirements.
127
130
128
- We do not include the fixed public key model from
129
- {{reqs}}, as this is likely not a viable solution for systems and protocols in practice. In all scenarios,
130
- the server corresponding to the desired key is considered malicious.
131
+ In all scenarios, the server corresponding to the desired key is considered malicious.
131
132
132
133
# # Direct Discovery {#server-based}
133
134
0 commit comments