I need to extend the TLS protocol to be able to use other key exchange scheme based on elliptic curves. I am planning to use BouncyCastle's implementation in Java and in .NET.

I am worring about timing attacks against the ECC key exchange scheme. Is BouncyCastle prone to timing attacks? Is there a way to use it to implement operations in data-independent time?

  • $\begingroup$ Depends on how you use them. You'll have to describe the app and how the crypto is to be used. $\endgroup$ – mikeazo Oct 6 '13 at 19:11
  • 1
    $\begingroup$ These are large libraries, some parts my be better than others. At least the ECC part looks vulnerable to timing attacks to me. $\endgroup$ – CodesInChaos Oct 6 '13 at 19:20
  • $\begingroup$ If I'll use the Bouncy Castle for building client applications which connects whith server using TLS base on ECC key exchange scheme. Will be it secure? $\endgroup$ – NiceTheo Oct 6 '13 at 19:34
  • $\begingroup$ "Secure…" compared to what? I would say that — in it's current form — the question is a bit too broad. Maybe you can edit your question and describe what exactly you are worrying about, or what specific security parameters you want to evaluate… including a small mention of what other solution you want a "security" comparison to. $\endgroup$ – e-sushi Oct 6 '13 at 20:49
  • $\begingroup$ To expand on e-sushi's comment, do you mean if they are known to have been compromized in some way? $\endgroup$ – rath Oct 6 '13 at 23:23