code: func NewDetachedSignature(armoredPrivateKey string, aci io.Reader) (io.Reader, error) {
  	entityList, err := openpgp.ReadArmoredKeyRing(bytes.NewBufferString(armoredPrivateKey))
  	if err != nil {
  		return nil, err
  	}
  	if len(entityList) < 1 {
  		return nil, errors.New("empty entity list")
  	}
  	signature := &bytes.Buffer{}
  	if err := openpgp.ArmoredDetachSign(signature, entityList[0], aci, nil); err != nil {
  		return nil, err
  	}
  	return signature, nil
  }
docs: // NewDetachedSignature creates a new openpgp armored detached signature for the given ACI
  // signed with armoredPrivateKey.