code: func (g *GPG) RecipientIDs(ctx context.Context, ciphertext []byte) ([]string, error) {
  	recps := make([]string, 0, 1)
  	packets := packet.NewReader(bytes.NewReader(ciphertext))
  	for {
  		p, err := packets.Next()
  		if err != nil {
  			if err == io.EOF {
  				break
  			}
  			return nil, err
  		}
  		switch p := p.(type) {
  		case *packet.EncryptedKey:
  			for _, key := range g.pubring {
  				if key.PrimaryKey == nil {
  					continue
  				}
  				if key.PrimaryKey.KeyId == p.KeyId {
  					recps = append(recps, key.PrimaryKey.KeyIdString())
  				}
  			}
  		}
  	}
  	return recps, nil
  }
docs: // RecipientIDs returns the recipients of the encrypted message