Implements a Passport strategy to authenticate the public key of a user by issuing a dynamic generated challenge