Class: Strdes

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

Overview

String encryption and decryption

Constant Summary collapse

ALG =
'DES-EDE3-CBC'
KEY =
'uryeiowl'
DES_KEY =
'uyiofs3w'

Class Method Summary collapse

Class Method Details

.decode(str) ⇒ Object

String decryption Example:

>> Strdes.decode("SuO9XVv5gV3TqeNIocUTp-5APhtRTeMr")
=> "need encryption string"

Arguments:

str: (String)


32
33
34
35
36
37
38
# File 'lib/strdes.rb', line 32

def decode(str)
  str = Base64.urlsafe_decode64 str
  des = OpenSSL::Cipher::Cipher.new ALG
  des.pkcs5_keyivgen KEY, DES_KEY
  des.decrypt
  des.update(str) + des.final
end

.encode(str) ⇒ Object

String encryption Example:

>> Strdes.encode("need encryption string")
=> "SuO9XVv5gV3TqeNIocUTp-5APhtRTeMr"

Arguments:

str: (String)


17
18
19
20
21
22
23
24
# File 'lib/strdes.rb', line 17

def encode(str)
  des = OpenSSL::Cipher::Cipher.new ALG
  des.pkcs5_keyivgen KEY, DES_KEY
  des.encrypt
  cipher = des.update str
  cipher << des.final
  Base64.urlsafe_encode64 cipher
end