Add config option 'yubihsm.accept_invalid_padding'

The pad() method in the yubihsm module published with LinOTP version <
2.7.1 padded data incorrectly when its length was a multiple of the
block length.

For this reason we are introducing this config option that will allow
incorrectly padded data to be used.

If you are upgrading from LinOTP < 2.7.1 AND use a YubiHSM it
probably is a good idea to set this option to True in the LinOTP config.
Otherwise simply ignore it.

A similar config option was already implemented in commit 6a1be626.
We decided to remove it in commit ef46299b and are now reverting this
decision because we need the option to migrate old systems.

refs #12576

Change-Id: I80605787450715f4ba3a95413bc06282bfcdd13d