A non-transitory computer-readable storage medium storing at least one program to be executed in a biometric authentication system comprising a template storage configured to store a template used for concealing biometric information, a verification key storage configured to store a verification key used for verifying the concealed biometric information, and at least one processor, wherein the at least one program, when executed by the at least one processor, causes the biometric authentication system to:
- generate, based on biometric information, initial values of (i) the template and (ii) the verification key,
- store the template in the template storage and store the verification key in the verification key storage,
- generate an update value in the biometric authentication system,
- update the template stored in the template storage by multiplying a value contained in the template by the update value, and
- update the verification key stored in the verification key storage by multiplying a value contained in the verification key by the update value.