diff --git a/library/platform_util.c b/library/platform_util.c
index 2c22b3c..2b8eb56 100644
--- a/library/platform_util.c
+++ b/library/platform_util.c
@@ -125,22 +125,25 @@
     volatile unsigned char diff = 0;
 
     size_t i = num;
-
+    size_t flow_counter = 0;
     size_t start_offset = (size_t) mbedtls_platform_random_in_range( num );
 
     for( i = start_offset; i < num; i++ )
     {
         unsigned char x = A[i], y = B[i];
+        flow_counter++;
         diff |= x ^ y;
     }
 
     for( i = 0; i < start_offset; i++ )
     {
         unsigned char x = A[i], y = B[i];
+        flow_counter++;
         diff |= x ^ y;
     }
 
-    return( diff );
+    /* Return 0 only when diff is 0 and flow_counter is equal to num */
+    return( (int) diff | (int) ( flow_counter ^ num ) );
 }
 
 uint32_t mbedtls_platform_random_in_range( size_t num )
