• Niels Möller's avatar
    Introduced 4-bit tables. Gives gmac performance of 45 cycles per · 086023df
    Niels Möller authored
    byte (still on intel x86_64).
    * gcm.c (gcm_gf_shift): Renamed. Tweaked little-endian masks.
    (gcm_rightshift): ... old name.
    (gcm_gf_mul): New argument for the output. Added length argument
    for one of the inputs (implicitly padding with zeros).
    (shift_table): New table (in 4-bit and 8-bit versions), generated
    by gcmdata.
    (gcm_gf_shift_chunk): New function shifting 4 bits at
    a time.
    (gcm_gf_mul_chunk): New function processing 4 bits at a time.
    (gcm_set_key): Generation of 4-bit key table.
    (gcm_hash): Use tables, when available.
    
    Rev: nettle/gcm.c:1.5
    086023df
gcm.c 12.3 KB