X-Git-Url: https://www.bearssl.org/gitweb//home/git/?p=BearSSL;a=blobdiff_plain;f=src%2Fhash%2Fghash_ctmul32.c;h=c66af4655f3f8495d3d93c9998f517d94f184a52;hp=d3380d4ad572738b9c408731fc8a12e44fbae948;hb=7561e7d6c86171257a4153d95202b0791b3612a8;hpb=3210f38e0491b39aec1ef419cb4114e9483089fb diff --git a/src/hash/ghash_ctmul32.c b/src/hash/ghash_ctmul32.c index d3380d4..c66af46 100644 --- a/src/hash/ghash_ctmul32.c +++ b/src/hash/ghash_ctmul32.c @@ -95,6 +95,13 @@ rev32(uint32_t x) void br_ghash_ctmul32(void *y, const void *h, const void *data, size_t len) { + /* + * This implementation is similar to br_ghash_ctmul() except + * that we have to do the multiplication twice, with the + * "normal" and "bit reversed" operands. Hence we end up with + * eighteen 32-bit multiplications instead of nine. + */ + const unsigned char *buf, *hb; unsigned char *yb; uint32_t yw[4];