Class: Coinex::Signature
Class Method Summary collapse
Methods inherited from Base
Class Method Details
.calculate(params: {}) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/coinex/resources/signature.rb', line 8 def calculate(params: {}) current_time = params[:tonce].nil? ? Time.now.strftime('%s%L') : params[:tonce] signature = nil if params.empty? sign_str = "access_id=#{Coinex.access_id}&tonce=#{current_time}&secret_key=#{Coinex.secret_key}" signature = Digest::MD5.hexdigest(sign_str).upcase else params[:tonce] = current_time signature = Digest::MD5.hexdigest(calculate_params(params)).upcase end { tonce: current_time, signature: signature } end |
.calculate_params(params) ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/coinex/resources/signature.rb', line 23 def calculate_params(params) sort_params = params.sort.to_h init = "access_id=#{Coinex.access_id}&" finish = "secret_key=#{Coinex.secret_key}" array = [] sort_params.each do |key, value| array.push("#{key}=#{value}&") end init + array.join('') + finish end |