code: func Dearmor62DecryptOpen(versionValidator VersionValidator, ciphertext string, kr Keyring) (*MessageKeyInfo, []byte, string, error) {
  	buf := bytes.NewBufferString(ciphertext)
  	mki, s, brand, err := NewDearmor62DecryptStream(versionValidator, buf, kr)
  	if err != nil {
  		return mki, nil, "", err
  	}
  	out, err := ioutil.ReadAll(s)
  	if err != nil {
  		return mki, nil, "", err
  	}
  	return mki, out, brand, nil
  }
docs: // Dearmor62DecryptOpen takes an armor62'ed, encrypted ciphertext and attempts to
  // dearmor and decrypt it, using the provided keyring. Checks that the frames in the
  // armor are as expected. Returns the MessageKeyInfo recovered during message
  // processing, the plaintext (if decryption succeeded), the armor branding, and
  // maybe an error if there was a failure.