diff --git a/ctaocrypt/src/hmac.c b/ctaocrypt/src/hmac.c index 6f4b32c2a..0bd1c41d1 100644 --- a/ctaocrypt/src/hmac.c +++ b/ctaocrypt/src/hmac.c @@ -778,32 +778,32 @@ int HKDF(int type, const byte* inKey, word32 inKeySz, } while (0); if (ret == 0) { - while (outIdx < outSz) { - int tmpSz = (n == 1) ? 0 : hashSz; - word32 left = outSz - outIdx; + while (outIdx < outSz) { + int tmpSz = (n == 1) ? 0 : hashSz; + word32 left = outSz - outIdx; - ret = HmacSetKey(&myHmac, type, prk, hashSz); - if (ret != 0) - break; - ret = HmacUpdate(&myHmac, tmp, tmpSz); - if (ret != 0) - break; - ret = HmacUpdate(&myHmac, info, infoSz); - if (ret != 0) - break; - ret = HmacUpdate(&myHmac, &n, 1); - if (ret != 0) - break; - ret = HmacFinal(&myHmac, tmp); - if (ret != 0) - break; + ret = HmacSetKey(&myHmac, type, prk, hashSz); + if (ret != 0) + break; + ret = HmacUpdate(&myHmac, tmp, tmpSz); + if (ret != 0) + break; + ret = HmacUpdate(&myHmac, info, infoSz); + if (ret != 0) + break; + ret = HmacUpdate(&myHmac, &n, 1); + if (ret != 0) + break; + ret = HmacFinal(&myHmac, tmp); + if (ret != 0) + break; - left = min(left, (word32)hashSz); - XMEMCPY(out+outIdx, tmp, left); + left = min(left, (word32)hashSz); + XMEMCPY(out+outIdx, tmp, left); - outIdx += hashSz; - n++; - } + outIdx += hashSz; + n++; + } } #ifdef CYASSL_SMALL_STACK diff --git a/ctaocrypt/src/pwdbased.c b/ctaocrypt/src/pwdbased.c index 9ae31e22d..582c80fb9 100644 --- a/ctaocrypt/src/pwdbased.c +++ b/ctaocrypt/src/pwdbased.c @@ -158,51 +158,51 @@ int PBKDF2(byte* output, const byte* passwd, int pLen, const byte* salt, ret = HmacSetKey(&hmac, hashType, passwd, pLen); if (ret == 0) { - while (kLen) { - int currentLen; + while (kLen) { + int currentLen; - ret = HmacUpdate(&hmac, salt, sLen); - if (ret != 0) - break; - - /* encode i */ - for (j = 0; j < 4; j++) { - byte b = (byte)(i >> ((3-j) * 8)); - - ret = HmacUpdate(&hmac, &b, 1); + ret = HmacUpdate(&hmac, salt, sLen); if (ret != 0) break; - } - /* check ret from inside for loop */ - if (ret != 0) - break; + /* encode i */ + for (j = 0; j < 4; j++) { + byte b = (byte)(i >> ((3-j) * 8)); - ret = HmacFinal(&hmac, buffer); - if (ret != 0) - break; + ret = HmacUpdate(&hmac, &b, 1); + if (ret != 0) + break; + } - currentLen = min(kLen, hLen); - XMEMCPY(output, buffer, currentLen); - - for (j = 1; j < iterations; j++) { - ret = HmacUpdate(&hmac, buffer, hLen); + /* check ret from inside for loop */ if (ret != 0) break; + ret = HmacFinal(&hmac, buffer); if (ret != 0) break; - xorbuf(output, buffer, currentLen); + + currentLen = min(kLen, hLen); + XMEMCPY(output, buffer, currentLen); + + for (j = 1; j < iterations; j++) { + ret = HmacUpdate(&hmac, buffer, hLen); + if (ret != 0) + break; + ret = HmacFinal(&hmac, buffer); + if (ret != 0) + break; + xorbuf(output, buffer, currentLen); + } + + /* check ret from inside for loop */ + if (ret != 0) + break; + + output += currentLen; + kLen -= currentLen; + i++; } - - /* check ret from inside for loop */ - if (ret != 0) - break; - - output += currentLen; - kLen -= currentLen; - i++; - } } #ifdef CYASSL_SMALL_STACK