You don't even need (3) if you can do enough trials and have an accurate clock. Compression by its very nature drips timing side channels.
Like AWS. (Cite: http://dl.acm.org/citation.cfm?id=1653687.)
[1] Lala people never send sensitive data over plain HTTP I'M NOT HEARING YOU.