code: func (v *Validator) ValidRequest(r *http.Request) error {
  	ts := r.Header.Get(tsHeader)
  	rs := r.Header.Get(sHeader)
  	if ts == "" || rs == "" {
  		return fmt.Errorf("Unknown host: %s", r.Host)
  	}
  	b, _ := ioutil.ReadAll(r.Body)
  	if v.validTimestamp(ts) == false || v.validSignature(ts, r.URL.RawQuery, b, rs) == false {
  		return fmt.Errorf("Unknown host: %s", r.Host)
  	}
  	r.Body = ioutil.NopCloser(bytes.NewBuffer(b))
  	return nil
  }
docs: // ValidRequest is a method that takes care of the signature validation of
  // incoming requests.