module CryptoUtils

NOTE: All inputs of methods in this module require Base64 encoding! Outputs are all Base64 encoded

Public Class Methods

create_digest(value) click to toggle source
# File lib/ig-crypto-utils.rb, line 31
def self.create_digest(value)
  Digest::SHA2.base64digest value
end
decode_base64(value) click to toggle source
# File lib/ig-crypto-utils.rb, line 22
def self.decode_base64(value)
  if value =~ /^([A-Za-z0-9+]{4})*([A-Za-z0-9+]{4}|[A-Za-z0-9+]{3}=|[A-Za-z0-9+]{2}==)$/i
    puts "#{value} is base64 encoded, ...DECODING"
    return Base64.decode64 value
  end

  value
end
encode_base64(value) click to toggle source

General use static functions

# File lib/ig-crypto-utils.rb, line 13
def self.encode_base64(value)
  unless value =~ /^([A-Za-z0-9+]{4})*([A-Za-z0-9+]{4}|[A-Za-z0-9+]{3}=|[A-Za-z0-9+]{2}==)$/i
    puts "#{value} is NOT base64 encoded, ENCODING..."
    return Base64.encode64 value
  end

  value
end