# File lib/roauth.rb, line 14
  def header(oauth, uri, params = {}, http_method = :get)
    oauth = oauth.dup
    oauth[:signature_method] ||= "HMAC-SHA1"
    oauth[:version]          ||= "1.0" # Assumed version, according to the spec
    oauth[:nonce]            ||= Base64.encode64(OpenSSL::Random.random_bytes(32)).gsub(/\W/, '')
    oauth[:timestamp]        ||= Time.now.to_i
    oauth[:token]            ||= oauth.delete(:access_key)
    oauth[:token_secret]     ||= oauth.delete(:access_secret)

    sig_params = oauth_params(oauth)
    sig_params[:oauth_signature] = signature(oauth, uri, sig_params.merge(params), http_method)
    sorted_sig_params    = sig_params.sort_by{|k,v| [k.to_s, v.to_s] }
    authorization_params = sorted_sig_params.map {|key, value| 
      [escape(key), "\"#{escape(value)}\""].join("=") 
    }.join(", ")

    %{OAuth } + authorization_params
  end