Module: NCipher
- Extended by:
- Helper
- Defined in:
- lib/n_cipher.rb,
lib/n_cipher/version.rb
Defined Under Namespace
Modules: Helper
Constant Summary collapse
- VERSION =
"0.3.4"
Class Method Summary collapse
Methods included from Helper
common_argument_check, convert_table
Class Method Details
.decode(string, seed:, delimiter:) ⇒ Object
36 37 38 39 40 41 42 |
# File 'lib/n_cipher.rb', line 36 def decode(string, seed: , delimiter: ) common_argument_check(string, seed, delimiter) raise ArgumentError, 'Delimiter is not include in the cipher string.' unless string.match(delimiter) raise ArgumentError, 'Invalid cipher string.' unless (string.chars - "#{seed}#{delimiter}".chars).size.zero? string.split(delimiter).map {|ele| [ele.gsub(/./, convert_table(seed, :decode)).to_i(seed.size)].pack('U') }.join end |
.encode(string, seed: 'にゃんぱす', delimiter: '〜') ⇒ Object
30 31 32 33 34 |
# File 'lib/n_cipher.rb', line 30 def encode(string, seed: 'にゃんぱす', delimiter: '〜') common_argument_check(string, seed, delimiter) string.unpack('U*').map {|c| c.to_s(seed.size).gsub(/./, convert_table(seed, :encode)).concat(delimiter) }.join end |