nubank_sdk 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4f097d1d4da02660155bd767854ef6202e5622821e0eda6b9804b5d1cbf33d07
4
- data.tar.gz: 4b3844c8054f98f3cc10e6eb881021146ac0b59efd998bbd47282455f035cb62
3
+ metadata.gz: 8e5b9021cf033b5ec98a45bdd97701e6acb0d4e7f7ea12d2fe8247e91fb24dd7
4
+ data.tar.gz: 9faacb99367c3fd68c1d93dc343a2dac43efd90f2c27291d6ab67cdb478fcc8a
5
5
  SHA512:
6
- metadata.gz: 5baf7e493f3e48bff114f053c918309f86d57d5af72288322cc88a698f886e36151487c80ad986b3727acde28e0a9c66f8116bdeaed639f5f2ec16a6c2d6abbe
7
- data.tar.gz: 3f58b9e0caa25fa36e14687c0ef50a7dee002930d73f729a73efb2d85a2c839d8aea51ab525ca2ae2cbe6ac577685fd711cc5dbc05b3a39f261876e59014bcea
6
+ metadata.gz: 7afd83c07054626508d65dc3b028a09aaf07f0625f81cf7f4b2f53b121fc34d43a89f269a6cedc9a3e064af09f29e5e68b3a2f79a5ecacb845d34bf1576d23d7
7
+ data.tar.gz: c99a7db8b4c2fcb29a7331009dcd2cd2bc3c9a4256153e5fc7c188dac3689179607c52fafe8d234d66295158dce2a2c2989e17388b7a2ca4f609c85dca513ac0
data/.gitignore CHANGED
@@ -6,6 +6,7 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
+ /certificates/*.p12
9
10
 
10
11
  # rspec failure tracking
11
12
  .rspec_status
@@ -5,6 +5,7 @@
5
5
  "Nubank"
6
6
  ],
7
7
  "conventionalCommits.scopes": [
8
+ "certificates",
8
9
  "version"
9
10
  ]
10
11
  }
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- nubank_sdk (0.2.0)
4
+ nubank_sdk (0.3.0)
5
5
  faraday (~> 0.15.0)
6
6
  json (~> 2.1.0)
7
7
 
File without changes
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'openssl'
4
+
5
+ module NubankSdk
6
+ class Certificate
7
+ FILES_PATH = './certificates/'
8
+
9
+ def initialize(cpf, key)
10
+ @cpf = cpf
11
+ @key = key
12
+ end
13
+
14
+ def process_decoded(certificate)
15
+ encoded = encode certificate
16
+
17
+ p12 = create_pkcs12_from encoded
18
+ save p12
19
+ end
20
+
21
+ def encoded
22
+ @encoded ||= OpenSSL::PKCS12.new(file.read, 'password')
23
+ end
24
+
25
+ private
26
+
27
+ def file
28
+ File.open("#{FILES_PATH}#{@cpf}.p12", 'rb')
29
+ end
30
+
31
+ def save(p12)
32
+ File.open("#{FILES_PATH}#{@cpf}.p12", 'wb') do |file|
33
+ file.write p12.to_der
34
+ end
35
+ end
36
+
37
+ def create_pkcs12_from(certificate)
38
+ OpenSSL::PKCS12.create("password", "key", @key, certificate)
39
+ end
40
+
41
+ def encode(certificate)
42
+ OpenSSL::X509::Certificate.new certificate
43
+ end
44
+ end
45
+ end
@@ -1,3 +1,3 @@
1
1
  module NubankSdk
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.0"
3
3
  end
data/lib/nubank_sdk.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require "nubank_sdk/api_routes"
2
+ require "nubank_sdk/certificate"
2
3
  require "nubank_sdk/version"
3
4
 
4
5
  module NubankSdk
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nubank_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Viserion77
@@ -98,8 +98,10 @@ files:
98
98
  - Rakefile
99
99
  - bin/console
100
100
  - bin/setup
101
+ - certificates/.gitkeep
101
102
  - lib/nubank_sdk.rb
102
103
  - lib/nubank_sdk/api_routes.rb
104
+ - lib/nubank_sdk/certificate.rb
103
105
  - lib/nubank_sdk/client.rb
104
106
  - lib/nubank_sdk/version.rb
105
107
  - nubank_sdk.gemspec