<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def resolve_authconfig(self, registry=None):
 """ Returns the authentication data from the given auth configuration for a specific registry. As with the Docker client, legacy entries in the config with full URLs are stripped down to hostnames before checking for a match. Returns None if no match was found. """


        if self.creds_store or self.cred_helpers:
            store_name = self.get_credential_store(registry)
            if store_name is not None:
                log.debug(
                    'Using credentials store "{0}"'.format(store_name)
                )
                cfg = self._resolve_authconfig_credstore(registry, store_name)
                if cfg is not None:
                    return cfg
                log.debug('No entry in credstore - fetching from auth dict')

        # Default to the public index server
        registry = resolve_index_name(registry) if registry else INDEX_NAME
        log.debug("Looking for auth entry for {0}".format(repr(registry)))

        if registry in self.auths:
            log.debug("Found {0}".format(repr(registry)))
            return self.auths[registry]

        for key, conf in six.iteritems(self.auths):
            if resolve_index_name(key) == registry:
                log.debug("Found {0}".format(repr(key)))
                return conf

        log.debug("No entry found")
        return None