code: func (kl KeyList) FindKey(id string) (Key, error) {
  	id = strings.TrimPrefix(id, "0x")
  	for _, k := range kl {
  		if k.Fingerprint == id {
  			return k, nil
  		}
  		if strings.HasSuffix(k.Fingerprint, id) {
  			return k, nil
  		}
  		for _, ident := range k.Identities {
  			if ident.Name == id {
  				return k, nil
  			}
  			if ident.Email == id {
  				return k, nil
  			}
  		}
  		for sk := range k.SubKeys {
  			if strings.HasSuffix(sk, id) {
  				return k, nil
  			}
  		}
  	}
  	return Key{}, errors.Errorf("No matching key found")
  }
docs: // FindKey will try to find the requested key