module Passcard
Constants
- ALPHA_GRID
- CHARSET
- GRID_SIZE
- NUMERIC_GRID
- VERSION
Public Class Methods
create!(*args)
click to toggle source
# File lib/passcard.rb, line 53 def self.create!(*args) Passcard::Generator.create_key_file(*args) end
decrypt!(key, enc_str)
click to toggle source
# File lib/passcard.rb, line 45 def self.decrypt!(key, enc_str) cipher = OpenSSL::Cipher.new('DES-EDE3-CBC').decrypt cipher.key = Random.new(key.to_i(36)).bytes(24) decrypted = cipher.update(Base64.decode64(enc_str)) output = decrypted << cipher.final JSON.parse(output) end
encrypt!(key, object)
click to toggle source
# File lib/passcard.rb, line 37 def self.encrypt!(key, object) object = object.to_json cipher = OpenSSL::Cipher.new('DES-EDE3-CBC').encrypt cipher.key = Random.new(key.to_i(36)).bytes(24) output = cipher.update(object) + cipher.final Base64.encode64(output) end
outputter_class_for(name)
click to toggle source
# File lib/passcard.rb, line 31 def self.outputter_class_for(name) klass = outputters[name.to_sym].first return klass if klass.is_a?(Class) Kernel.const_get(klass.to_s) end
outputters()
click to toggle source
# File lib/passcard.rb, line 18 def self.outputters @@outputters ||= {} end
read!(*args)
click to toggle source
# File lib/passcard.rb, line 57 def self.read!(*args) Passcard::Reader.read_key_file(*args) end
register_outputter(name, klass, method_name)
click to toggle source
# File lib/passcard.rb, line 22 def self.register_outputter(name, klass, method_name) @@outputters ||= {} @@outputters[name.to_sym] = [klass, method_name.to_sym] end
root()
click to toggle source
# File lib/passcard.rb, line 14 def self.root Pathname.new(File.dirname(File.dirname(__FILE__))) end
unregister_outputter(name)
click to toggle source
# File lib/passcard.rb, line 27 def self.unregister_outputter(name) @@outputters.delete(name.to_sym) end