'Try to authenticate with a public key.  Ask the user for a public key;
if the user has one, send the request to the server and return True.
Otherwise, return False.
@rtype: L{bool}'

def auth_publickey(self):

    d = defer.maybeDeferred(self.getPublicKey)
    d.addBoth(self._cbGetPublicKey)
    return d
