code: func (s *Store) idFile(ctx context.Context, name string) string {
  	fn := name
  	var cnt uint8
  	for {
  		cnt++
  		if cnt > 100 {
  			break
  		}
  		if fn == "" || fn == sep {
  			break
  		}
  		gfn := filepath.Join(fn, s.crypto.IDFile())
  		if s.storage.Exists(ctx, gfn) {
  			return gfn
  		}
  		fn = filepath.Dir(fn)
  	}
  	return s.crypto.IDFile()
  }
docs: // idFile returns the path to the recipient list for this.storage
  // it walks up from the given filename until it finds a directory containing
  // a gpg id file or it leaves the scope of this.storage.