# File lib/roauth.rb, line 73
    def signature(oauth, uri, params, http_method = :get)
      uri = URI.parse(uri)
      uri.query = nil
      uri = uri.to_s

      sig_base = [http_method.to_s.upcase, uri, normalize(params)].map{|e| escape(e) }.join("&")
      digest   = SIGNATURE_METHODS[oauth[:signature_method]]
      secret   = oauth.values_at(:consumer_secret, :token_secret).map{|e| escape(e) }.join("&")

      Base64.encode64(OpenSSL::HMAC.digest(digest, secret, sig_base)).chomp.gsub(/\n/, "")
    end