use hardening with hardening-wrapper so that -fpie won't be used for the shared library (which breaks the debian package build)
declare variable without condition
refactor authentication code
add the public key of every secret key that is added