rsaa 0.0.4 → 0.0.5

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 40170f194f53574fb33f074cda112a0cb8c8d310b88ad72b0d87925298b622b4
4
- data.tar.gz: f7df7b848a8f80bd1c1918d5953ed0bc087880e4bddb20685547b2063f3083af
3
+ metadata.gz: 92ba272f94fe275e352c2457a09a625499b78adfd195a36e24db7f4599b6870f
4
+ data.tar.gz: 54e6492c8892a055ac943f8ac70c3fedf6f19aa4a2bee4f68533988d05012e89
5
5
  SHA512:
6
- metadata.gz: 5f90287d434b74d486df2e430d650e8073eaf4a58fadc3ffaa8e525674747d38f6444e41d38cecb6db394ece9977ccffe2cd08e4dadefb0d27122bdcd99cb3cb
7
- data.tar.gz: bf4a405dc3d4d5cf07263ca264b5bf39e047a12edeaba74c6dd19ce435bd1ecf2a49217b1f5a7afa055b169563b8689955f29cc044676a201c4ccdf7177ae2dd
6
+ metadata.gz: 835876b56cdc657df8cb1c6e8c97decf6645fd8cd0aae8569b192491185615b3d894ade7976ff79f018b6535c576b28660e8b2c41b3d4fee4b1684c6b6a32938
7
+ data.tar.gz: 22ee2b3e969613d89f5e14b4881d8a59512481da9676dd64da69a5d75953ad219a828322b9b7ea825cbea9fe1dc95673c8317d1b995c29d47c904f6faaaebcc5
data/lib/archive.rb CHANGED
@@ -4,6 +4,7 @@ class Archive
4
4
  ROOT_PATH_FILE = "./"
5
5
  EXTENSION_FILE = ".txt"
6
6
  MODE_WRITE = "w"
7
+ FILE_PATH_KEYS="keys"
7
8
 
8
9
  attr_reader :name, :path
9
10
 
@@ -20,7 +21,11 @@ class Archive
20
21
  end
21
22
 
22
23
  def full_name
23
- "#{@name}#{EXTENSION_FILE}"
24
+ if FILE_PATH_KEYS
25
+ Dir.mkdir(FILE_PATH_KEYS) unless Dir.exist?(FILE_PATH_KEYS)
26
+ end
27
+
28
+ "#{ FILE_PATH_KEYS + '/' if FILE_PATH_KEYS}#{@name || 'text'}#{EXTENSION_FILE}"
24
29
  end
25
30
 
26
31
  def encode(string)
data/lib/mathematics.rb CHANGED
@@ -21,4 +21,10 @@ class Mathematics
21
21
  # (i * e) % @totiente_n == 1
22
22
  mod(term1, term2) == 1
23
23
  end
24
+
25
+ def self.func_totiente_n(p, q)
26
+ # função totiente em n
27
+ # 𝜑(𝑛) = (𝑝 − 1) ∗ (𝑞 − 1)
28
+ (p - 1) * (q - 1)
29
+ end
24
30
  end
data/lib/rsa.rb CHANGED
@@ -26,16 +26,6 @@ module RSA
26
26
  private_key_file.write JSON.generate keys
27
27
  end
28
28
 
29
- def display_keys
30
- puts ""
31
- puts "==== PRIVATE KEYS ===="
32
- puts @key_p
33
- puts @key_q
34
- puts @key_d
35
- puts @totiente_n
36
- puts "=== END PRIVATE KEYS ==="
37
- end
38
-
39
29
  private
40
30
 
41
31
  def generated_p_and_q
@@ -44,9 +34,7 @@ module RSA
44
34
  end
45
35
 
46
36
  def generated_totiente_n
47
- # função totiente em n
48
- # 𝜑(𝑛) = (𝑝 − 1) ∗ (𝑞 − 1)
49
- @totiente_n = (@key_p - 1) * (@key_q - 1)
37
+ @totiente_n = Mathematics.func_totiente_n(@key_p, @key_q)
50
38
  end
51
39
 
52
40
  def keys
@@ -68,14 +56,6 @@ module RSA
68
56
  public_key_file.write JSON.generate(keys)
69
57
  end
70
58
 
71
- def display_keys
72
- puts ""
73
- puts "==== PUBLIC KEYS ===="
74
- puts @key_n
75
- puts @e
76
- puts "== END PUBLIC KEYS =="
77
- end
78
-
79
59
  private
80
60
 
81
61
  def keys
@@ -110,10 +90,7 @@ module RSA
110
90
  private = RSA::Private.new
111
91
  public = RSA::Public.new(private: private)
112
92
 
113
- private.display_keys
114
93
  private.create_file_of_keys
115
-
116
- public.display_keys
117
94
  public.create_file_of_keys
118
95
  end
119
96
 
@@ -132,7 +109,7 @@ module RSA
132
109
  menssage_encode
133
110
  end
134
111
 
135
- def self.decode(menssage_encode)
112
+ def self.decode(menssage_encode)
136
113
  archive_private = ArchivePrivate.new
137
114
  private_file = archive_private.read
138
115
  private_file = JSON.parse(private_file)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rsaa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dayan Freitas
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-06-25 00:00:00.000000000 Z
11
+ date: 2022-07-06 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: ''
14
14
  email: dayan.freitas.df@gmail.com.br