History log of /netbsd-current/sys/crypto/aes/aes_ccm.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.6 17-Oct-2021 jmcneill

Upgrade self-test passed messages from verbose to debug.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
# 1.5 10-Aug-2020 rin

Add hack to compile aes_ccm_tag() with -O0 for m68k for GCC8.

GCC 8 miscompiles aes_ccm_tag() for m68k with optimization level -O[12],
which results in failure in aes_ccm_selftest():

| aes_ccm_selftest: tag 0: 8 bytes @ 0x4d3e38
| 03 80 5f 08 22 6f cb fe | .._."o..
| aes_ccm_selftest: verify 0 failed
| ...
| WARNING: module error: built-in module aes_ccm failed its MODULE_CMD_INIT, error 5

This is observed for amiga (A1200, 68060), mac68k (Quadra 840AV, 68040),
and luna68k (nono, 68030 emulator). However, it is not for sun3 (TME, 68020
emulator) and sun2 (TME, 68010 emulator). At the moment, it is unclear
whether this is due to differences b/w 68010-20 vs 68030-60, or something
wrong with TME.


# 1.4 27-Jul-2020 riastradh

Gather auth[16] and ctr[16] into one authctr[32].

Should appease clang.


# 1.3 26-Jul-2020 riastradh

Ensure aes_ccm module init runs after aes module init.

Otherwise the AES implementation might not be selected early enough.


# 1.2 25-Jul-2020 riastradh

Push CBC-MAC and CCM block updates into the aes_impl API.

This should help reduce the setup and teardown overhead (enabling and
disabling fpu, or expanding bitsliced keys) for CCM, as used in
802.11 WPA2 CCMP. But all the fiddly formatting details remain in
aes_ccm.c to reduce the effort of implementing it -- at the cost of a
handful additional setups and teardowns per message.

Not yet implemented by any of the aes_impls, so leave a fallback that
just calls aes_enc for now. This should be removed when all of the
aes_impls provide CBC-MAC and CCM block updates.


# 1.1 25-Jul-2020 riastradh

New aes_ccm API.

Intended for use in net80211 for WPA2 CCMP.


# 1.5 10-Aug-2020 rin

Add hack to compile aes_ccm_tag() with -O0 for m68k for GCC8.

GCC 8 miscompiles aes_ccm_tag() for m68k with optimization level -O[12],
which results in failure in aes_ccm_selftest():

| aes_ccm_selftest: tag 0: 8 bytes @ 0x4d3e38
| 03 80 5f 08 22 6f cb fe | .._."o..
| aes_ccm_selftest: verify 0 failed
| ...
| WARNING: module error: built-in module aes_ccm failed its MODULE_CMD_INIT, error 5

This is observed for amiga (A1200, 68060), mac68k (Quadra 840AV, 68040),
and luna68k (nono, 68030 emulator). However, it is not for sun3 (TME, 68020
emulator) and sun2 (TME, 68010 emulator). At the moment, it is unclear
whether this is due to differences b/w 68010-20 vs 68030-60, or something
wrong with TME.


# 1.4 27-Jul-2020 riastradh

Gather auth[16] and ctr[16] into one authctr[32].

Should appease clang.


# 1.3 26-Jul-2020 riastradh

Ensure aes_ccm module init runs after aes module init.

Otherwise the AES implementation might not be selected early enough.


# 1.2 25-Jul-2020 riastradh

Push CBC-MAC and CCM block updates into the aes_impl API.

This should help reduce the setup and teardown overhead (enabling and
disabling fpu, or expanding bitsliced keys) for CCM, as used in
802.11 WPA2 CCMP. But all the fiddly formatting details remain in
aes_ccm.c to reduce the effort of implementing it -- at the cost of a
handful additional setups and teardowns per message.

Not yet implemented by any of the aes_impls, so leave a fallback that
just calls aes_enc for now. This should be removed when all of the
aes_impls provide CBC-MAC and CCM block updates.


# 1.1 25-Jul-2020 riastradh

New aes_ccm API.

Intended for use in net80211 for WPA2 CCMP.


# 1.4 27-Jul-2020 riastradh

Gather auth[16] and ctr[16] into one authctr[32].

Should appease clang.


# 1.3 26-Jul-2020 riastradh

Ensure aes_ccm module init runs after aes module init.

Otherwise the AES implementation might not be selected early enough.


# 1.2 25-Jul-2020 riastradh

Push CBC-MAC and CCM block updates into the aes_impl API.

This should help reduce the setup and teardown overhead (enabling and
disabling fpu, or expanding bitsliced keys) for CCM, as used in
802.11 WPA2 CCMP. But all the fiddly formatting details remain in
aes_ccm.c to reduce the effort of implementing it -- at the cost of a
handful additional setups and teardowns per message.

Not yet implemented by any of the aes_impls, so leave a fallback that
just calls aes_enc for now. This should be removed when all of the
aes_impls provide CBC-MAC and CCM block updates.


# 1.1 25-Jul-2020 riastradh

New aes_ccm API.

Intended for use in net80211 for WPA2 CCMP.


# 1.3 26-Jul-2020 riastradh

Ensure aes_ccm module init runs after aes module init.

Otherwise the AES implementation might not be selected early enough.


# 1.2 25-Jul-2020 riastradh

Push CBC-MAC and CCM block updates into the aes_impl API.

This should help reduce the setup and teardown overhead (enabling and
disabling fpu, or expanding bitsliced keys) for CCM, as used in
802.11 WPA2 CCMP. But all the fiddly formatting details remain in
aes_ccm.c to reduce the effort of implementing it -- at the cost of a
handful additional setups and teardowns per message.

Not yet implemented by any of the aes_impls, so leave a fallback that
just calls aes_enc for now. This should be removed when all of the
aes_impls provide CBC-MAC and CCM block updates.


# 1.1 25-Jul-2020 riastradh

New aes_ccm API.

Intended for use in net80211 for WPA2 CCMP.