Class: EnigmaEncrypto::Serialize

Inherits:
Object
  • Object
show all
Defined in:
lib/enigma_encrypto/serialize.rb

Instance Method Summary collapse

Constructor Details

#initialize(key) ⇒ Serialize

Returns a new instance of Serialize.



5
6
7
# File 'lib/enigma_encrypto/serialize.rb', line 5

def initialize(key)
  @key = key
end

Instance Method Details

#actionObject



37
38
39
40
41
# File 'lib/enigma_encrypto/serialize.rb', line 37

def action
  make_all_keys_positive
  create_original_key_array
  make_new_key_string
end

#create_original_key_arrayObject



19
20
21
22
23
24
25
26
# File 'lib/enigma_encrypto/serialize.rb', line 19

def create_original_key_array
  @new_key_array = []
  3.times do |index|
    key_for_next_index = key_getter(@key[index], @key[index + 1])
    @key[index + 1] = key_for_next_index
  end
  @new_key_array << @key[3]
end

#make_all_keys_positiveObject



9
10
11
12
13
14
15
16
17
# File 'lib/enigma_encrypto/serialize.rb', line 9

def make_all_keys_positive
  @key.map! do |num|
    num = num.to_i
    while num < 0 do
      num += 39
    end
    "%02d" %  num
  end
end

#make_new_key_stringObject



28
29
30
31
32
33
34
35
# File 'lib/enigma_encrypto/serialize.rb', line 28

def make_new_key_string
  new_key_string = ""
  new_key_string << @new_key_array[0][0]
  new_key_string << @new_key_array[1][0]
  new_key_string << @new_key_array[1][1]
  new_key_string << @new_key_array[3][0]
  new_key_string << @new_key_array[3][1]
end