Assume a scenario where a symmetric encryption algorithm (for example: AES) wasn't implemented in a way it would safeguard against timing attacks. This symmetric encryption implementation is only used locally to encrypt/decrypt data.
The only time that data is passed via a network (if at all), it is done so as pre-encrypted data (read: as locally created ciphertext). Yet, network transport itself is implemented differently, uses SSL, and doesn't have any constant time issue. Practically this means that if, the locally created ciphertext passes the wire in a – let's just call it – double-encrypted form. So, let's not focus on network transport, but rather on the core of the scenario which I'm asking about: the local, non-network part where data is encrypted/decrypted locally using a different, non constant time implementation.
In the above scenario, it seems as if timing attacks aren't much of an attack vector unless we assume trusting local systems might be a problem, which – in this scenario – can be ruled out as the local systems are trusted (think along the lines of a Sensitive Compartmented Information Facility).
To be sure I'm not missing something due to limiting my thoughts too much on network-related timing attacks:
- What are the potential implications of a non “constant time” implementations on trusted systems in a non-network scenario, if any?
- If we assume the local, non-network encryption/decryption to be handled by trusted systems in a compartmented facility, do we still have to worry about implementing that local encryption algo in constant time? If so, what are the attack vectors we're trying to cover by doing so?