code: func (wfe *WebFrontEndImpl) validJWSForAccount(
  	jws *jose.JSONWebSignature,
  	request *http.Request,
  	ctx context.Context,
  	logEvent *web.RequestEvent) ([]byte, *jose.JSONWebSignature, *core.Registration, *probs.ProblemDetails) {
  	// Lookup the account and JWK for the key ID that authenticated the JWS
  	pubKey, account, prob := wfe.lookupJWK(jws, ctx, request, logEvent)
  	if prob != nil {
  		return nil, nil, nil, prob
  	}
  
  	// Verify the JWS with the JWK from the SA
  	payload, prob := wfe.validJWSForKey(jws, pubKey, request, logEvent)
  	if prob != nil {
  		return nil, nil, nil, prob
  	}
  
  	return payload, jws, account, nil
  }
docs: // validJWSForAccount checks that a given JWS is valid and verifies with the
  // public key associated to a known account specified by the JWS Key ID. If the
  // JWS is valid (e.g. the JWS is well formed, verifies with the JWK stored for the
  // specified key ID, specifies the correct URL, and has a valid nonce) then
  // `validJWSForAccount` returns the validated JWS body, the parsed
  // JSONWebSignature, and a pointer to the JWK's associated account. If any of
  // these conditions are not met or an error occurs only a problem is returned.