# 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