ikhasi_crypto 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crypto.rb +24 -15
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3e6d038aed4dbbaea1d5b08dcc5cc63b415bfe54
4
- data.tar.gz: c2c6d8b14115d34d2acb9e91eb2ace57dddec93f
3
+ metadata.gz: 3343232c78433c1d6ca07fd00b0901de575a298d
4
+ data.tar.gz: 7acc03f4e4b4901fd21b69f0e23baf2a5c7d38d2
5
5
  SHA512:
6
- metadata.gz: a831341b84b200d507f8b63692e34945ed9a719d81d53ff84710c3c3799524c840526a87405e96ce6a130715148de6d598804cb6c267ba0f4476d7723865c359
7
- data.tar.gz: 53c1ae56fd6550dfc30802ed3e7ade324b8b69ceb73faaee5bff5ec163ddaf61e7b4541b6dcc34f724bf7246f9b56a814a6d790048be4b7d8aa140bae8beaa2b
6
+ metadata.gz: c3829852cc358de2289a7092b1a475f8b2b65a9712a4939512c4152a6d44874fae9f08061bbeba93b1ab2f45c57a78089aa73a283c8c7f5f7ecd7880da78d29b
7
+ data.tar.gz: a01b8af8d6f3c4c758ebcf2b463b5dda123bb0ab733d668b8de1e510fb2ff6b27599e0362d9cc319e6587ada65231f6c9830d28828cc5448cb3a26a205d3dfcc
data/lib/crypto.rb CHANGED
@@ -2,25 +2,34 @@ require 'openssl'
2
2
  require 'securerandom'
3
3
  require 'base64'
4
4
  require 'uri'
5
+
5
6
  class Crypto
6
7
  def self.encrypt(string)
7
- des = OpenSSL::Cipher::Cipher.new("des-ede3-cbc")
8
- des.encrypt
9
- des.key = ENV['SECURE_KEY']
10
- des.iv = iv = SecureRandom.hex(4)
11
- data = des.update(string) + des.final
12
- data = iv + data
13
- data = Base64.encode64(data)
14
- data = URI.escape(data, Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))
8
+ begin
9
+ des = OpenSSL::Cipher::Cipher.new("des-ede3-cbc")
10
+ des.encrypt
11
+ des.key = ENV['SECURE_KEY']
12
+ des.iv = iv = SecureRandom.hex(4)
13
+ data = des.update(string) + des.final
14
+ data = iv + data
15
+ data = Base64.encode64(data)
16
+ data = URI.escape(data, Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))
17
+ rescue Exception => e
18
+ puts e.message
19
+ end
15
20
  end
16
21
 
17
22
  def self.decrypt(string)
18
- des = OpenSSL::Cipher::Cipher.new("des-ede3-cbc")
19
- des.decrypt
20
- des.key = ENV['SECURE_KEY']
21
- string = URI.unescape(string)
22
- string = Base64.decode64(string)
23
- des.iv = string.slice!(0,8)
24
- des.update(string) + des.final
23
+ begin
24
+ des = OpenSSL::Cipher::Cipher.new("des-ede3-cbc")
25
+ des.decrypt
26
+ des.key = ENV['SECURE_KEY']
27
+ string = URI.unescape(string)
28
+ string = Base64.decode64(string)
29
+ des.iv = string.slice!(0,8)
30
+ des.update(string) + des.final
31
+ rescue Exception => e
32
+ puts e.message
33
+ end
25
34
  end
26
35
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ikhasi_crypto
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeanre Swanepoel