code: func (c *CertChecker) CheckHostKey(addr string, remote net.Addr, key PublicKey) error {
  	cert, ok := key.(*Certificate)
  	if !ok {
  		if c.HostKeyFallback != nil {
  			return c.HostKeyFallback(addr, remote, key)
  		}
  		return errors.New("ssh: non-certificate host key")
  	}
  	if cert.CertType != HostCert {
  		return fmt.Errorf("ssh: certificate presented as a host key has type %d", cert.CertType)
  	}
  
  	return c.CheckCert(addr, cert)
  }
docs: // CheckHostKey checks a host key certificate. This method can be
  // plugged into ClientConfig.HostKeyCallback.