diff --git a/tinycrypt/ecc_dsa.c b/tinycrypt/ecc_dsa.c
index 660c5e9..e729251 100644
--- a/tinycrypt/ecc_dsa.c
+++ b/tinycrypt/ecc_dsa.c
@@ -192,6 +192,7 @@
 	const uECC_word_t *point;
 	bitcount_t num_bits;
 	bitcount_t i;
+	bitcount_t flow_control;
 	volatile uECC_word_t diff;
 
 	uECC_word_t _public[NUM_ECC_WORDS * 2];
@@ -202,6 +203,7 @@
 	rx[num_n_words - 1] = 0;
 	r[num_n_words - 1] = 0;
 	s[num_n_words - 1] = 0;
+	flow_control = 1;
 
 	uECC_vli_bytesToNative(_public, public_key, NUM_ECC_BYTES);
 	uECC_vli_bytesToNative(_public + num_words, public_key + NUM_ECC_BYTES,
@@ -220,6 +222,8 @@
 		return UECC_FAILURE;
 	}
 
+	flow_control++;
+
 	/* Calculate u1 and u2. */
 	uECC_vli_modInv(z, s, curve_n); /* z = 1/s */
 	u1[num_n_words - 1] = 0;
@@ -237,6 +241,8 @@
 	uECC_vli_modInv(z, z, curve_p); /* z = 1/z */
 	apply_z(sum, sum + num_words, z);
 
+	flow_control++;
+
 	/* Use Shamir's trick to calculate u1*G + u2*Q */
 	points[0] = 0;
 	points[1] = curve_G;
@@ -251,6 +257,7 @@
 	uECC_vli_set(ry, point + num_words);
 	uECC_vli_clear(z);
 	z[0] = 1;
+	flow_control++;
 
 	for (i = num_bits - 2; i >= 0; --i) {
 		uECC_word_t index;
@@ -266,10 +273,12 @@
 			XYcZ_add(tx, ty, rx, ry);
 			uECC_vli_modMult_fast(z, z, tz);
 		}
+		flow_control++;
   	}
 
 	uECC_vli_modInv(z, z, curve_p); /* Z = 1/Z */
 	apply_z(rx, ry, z);
+	flow_control++;
 
 	/* v = x1 (mod n) */
 	if (uECC_vli_cmp_unsafe(curve_n, rx) != 1) {
@@ -279,8 +288,13 @@
 	/* Accept only if v == r. */
 	diff = uECC_vli_equal(rx, r);
 	if (diff == 0) {
+	    flow_control++;
 	    mbedtls_platform_random_delay();
-		if (diff == 0) {
+	    
+	    /* Re-check the condition and test if the control flow is as expected. 
+	     * 1 (base value) + num_bits - 1 (from the loop) + 5 incrementations.
+	     */
+		if (diff == 0 && flow_control == (num_bits + 5)) {
 			return UECC_SUCCESS;
 		}
 		else {
