The configuration also holds the OTP seed used for One Time Password authenticator codes. However, this is stored in an encrypted format so that the seed cannot be accessed. This is especially important as the OTP seed allows the OTP sequence to be generated, not simply checked (as is the case with a password hash).
The issue with encrypting the OTP seed is that the FireBrick has to be able to decrypt it so as to check the OTP sequence used. To ensure that no secret encryption key is embedded in the FireBrick firmware, the encryption is done using the users password. Once again, this means that it is important to have a good password. This system means that the password hash and encrypted OTP seed can be saved, and restored and even moved to another FireBrick configuration if needed without ever having to know the seed or password itself.
You can enter a new OTP seed into the otp-seed
field in the config, if you wish. This should be a BASE32
string (which is the common format for usch strings). If the seed is for 60 second periods not the default 30 then append /60.
If the seed is not for 6 digit codes, you can add a time (/30 or /60) and then /N where N is the number of digits (4-8). Once
saved you will see the seed changes to a base64 coded string. If you do this you should immediately test the authenticator by
having the user log in. Until then, the seed is not encrypted in the configuration and could be recovered. Once you have logged in,
if you normally save / archive the config, this would be a good time to ensure you have the encrypted version saved.
otp
) as the serial number of a separately stored
OTP seed that was not held in the config. This is no longer supported, but if you have such a configuration you may see simply
the serial number in this field until the user first logs in and it is replaced with the encrypted OTP seed.
Once encoded the format is a #
followed by base64 coding of a series of bytes. If making a configuration file independantly
then you can generate the seed data directly if you wish. The format is as follows.