code: func (m *SigningMethodRSA) Verify(signingString, signature string, key interface{}) error {
  	var err error
  
  	// Decode the signature
  	var sig []byte
  	if sig, err = DecodeSegment(signature); err != nil {
  		return err
  	}
  
  	var rsaKey *rsa.PublicKey
  	var ok bool
  
  	if rsaKey, ok = key.(*rsa.PublicKey); !ok {
  		return ErrInvalidKeyType
  	}
  
  	// Create hasher
  	if !m.Hash.Available() {
  		return ErrHashUnavailable
  	}
  	hasher := m.Hash.New()
  	hasher.Write([]byte(signingString))
  
  	// Verify the signature
  	return rsa.VerifyPKCS1v15(rsaKey, m.Hash, hasher.Sum(nil), sig)
  }
docs: // Implements the Verify method from SigningMethod
  // For this signing method, must be an *rsa.PublicKey structure.