From 2f9ef8fcaf1c4b9e9056616c200d60e2623a7c0b Mon Sep 17 00:00:00 2001
From: akwizgran <akwizgran@users.sourceforge.net>
Date: Sat, 22 Mar 2014 17:06:00 +0000
Subject: [PATCH] Log the running time of ECDH shared secret derivation.

---
 .../src/org/briarproject/crypto/CryptoComponentImpl.java   | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/briar-core/src/org/briarproject/crypto/CryptoComponentImpl.java b/briar-core/src/org/briarproject/crypto/CryptoComponentImpl.java
index 521a9cef07..22e7be9f75 100644
--- a/briar-core/src/org/briarproject/crypto/CryptoComponentImpl.java
+++ b/briar-core/src/org/briarproject/crypto/CryptoComponentImpl.java
@@ -234,9 +234,14 @@ class CryptoComponentImpl implements CryptoComponent {
 			throw new IllegalArgumentException();
 		ECPrivateKeyParameters ecPriv = ((Sec1PrivateKey) priv).getKey();
 		ECPublicKeyParameters ecPub = ((Sec1PublicKey) pub).getKey();
+		long now = System.currentTimeMillis();
 		ECDHCBasicAgreement agreement = new ECDHCBasicAgreement();
 		agreement.init(ecPriv);
-		return agreement.calculateAgreement(ecPub).toByteArray();
+		byte[] secret = agreement.calculateAgreement(ecPub).toByteArray();
+		long duration = System.currentTimeMillis() - now;
+		if(LOG.isLoggable(INFO))
+			LOG.info("Deriving shared secret took " + duration + " ms");
+		return secret;
 	}
 
 	public byte[] deriveGroupSalt(byte[] secret) {
-- 
GitLab