elibri_watermarking 0.3 → 0.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,6 +2,9 @@ require 'net/http'
2
2
  require 'net/https'
3
3
  require 'uri'
4
4
  require 'digest/md5'
5
+ require 'base64'
6
+ require 'cgi'
7
+ require 'openssl'
5
8
 
6
9
  module ElibriWatermarking
7
10
  class Client
@@ -21,7 +24,7 @@ module ElibriWatermarking
21
24
  uri = URI(self.url + '/watermark')
22
25
  formats = formats.join(",") if formats.is_a?(Array)
23
26
  timestamp = Time.now.to_i
24
- sig = Digest::MD5.hexdigest("#{self.secret}_#{timestamp}")
27
+ sig = CGI.escape(Base64.encode64(OpenSSL::HMAC.digest('sha1', timestamp.to_s, self.secret)).strip)
25
28
  data = {ident_type => ident, 'formats' => formats, 'visible_watermark' => visible_watermark,
26
29
  'title_postfix' => title_postfix, 'stamp' => timestamp, 'sig' => sig, 'token' => self.token}
27
30
  req = Net::HTTP::Post.new(uri.path)
@@ -36,7 +39,7 @@ module ElibriWatermarking
36
39
  def deliver(trans_id)
37
40
  uri = URI(self.url + '/deliver')
38
41
  timestamp = Time.now.to_i
39
- sig = Digest::MD5.hexdigest("#{self.secret}_#{timestamp}")
42
+ sig = CGI.escape(Base64.encode64(OpenSSL::HMAC.digest('sha1', timestamp.to_s, self.secret)).strip)
40
43
  data = {'stamp' => timestamp, 'sig' => sig, 'token' => self.token, 'trans_id' => trans_id}
41
44
  req = Net::HTTP::Post.new(uri.path)
42
45
  req.set_form_data(data)
@@ -50,7 +53,7 @@ module ElibriWatermarking
50
53
  def retry(trans_id)
51
54
  uri = URI(self.url + '/retry')
52
55
  timestamp = Time.now.to_i
53
- sig = Digest::MD5.hexdigest("#{self.secret}_#{timestamp}")
56
+ sig = CGI.escape(Base64.encode64(OpenSSL::HMAC.digest('sha1', timestamp.to_s, self.secret)).strip)
54
57
  data = {'stamp' => timestamp, 'sig' => sig, 'token' => self.token, 'trans_id' => trans_id}
55
58
  req = Net::HTTP::Post.new(uri.path)
56
59
  req.set_form_data(data)
@@ -1,3 +1,3 @@
1
1
  module ElibriWatermarking
2
- VERSION = "0.3"
2
+ VERSION = "0.4"
3
3
  end
metadata CHANGED
@@ -4,8 +4,8 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 0
7
- - 3
8
- version: "0.3"
7
+ - 4
8
+ version: "0.4"
9
9
  platform: ruby
10
10
  authors:
11
11
  - Piotr Szmielew
@@ -13,7 +13,7 @@ autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
15
 
16
- date: 2012-07-05 00:00:00 +02:00
16
+ date: 2012-07-10 00:00:00 +02:00
17
17
  default_executable:
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency