Module: Rahasia

Defined in:
lib/rahasia.rb,
lib/adapter/vault.rb,
lib/rahasia/model.rb,
lib/adapter/lockbox.rb,
lib/rahasia/version.rb,
lib/generators/rahasia/install_generator.rb,
lib/generators/rahasia/migration_generator.rb

Overview

Generate Encrypt Column using Rahasia generator

Defined Under Namespace

Modules: Adapter, Generators, Model

Constant Summary collapse

VERSION =
'0.0.2'

Class Method Summary collapse

Class Method Details

.adapterObject



66
67
68
# File 'lib/rahasia.rb', line 66

def self.adapter
  @adapter || null_adapter
end

.adapter=(adapter) ⇒ Object



55
56
57
58
59
60
61
62
63
64
# File 'lib/rahasia.rb', line 55

def self.adapter=(adapter)
  @adapter = adapter
  @encryptor =
    if adapter == 'vault'
      Adapter::Vault
    else
      Adapter::Lockbox
    end
  adapter
end

.encryptorObject



76
77
78
# File 'lib/rahasia.rb', line 76

def self.encryptor
  @encryptor || null_encryptor
end

.encryptor=(encryptor) ⇒ Object



72
73
74
# File 'lib/rahasia.rb', line 72

def self.encryptor=(encryptor)
  @encryptor = encryptor
end

.master_keyObject



33
34
35
36
# File 'lib/rahasia.rb', line 33

def self.master_key
  @master_key ||
    '0000000000000000000000000000000000000000000000000000000000000000'
end

.master_key=(master_key) ⇒ Object



29
30
31
# File 'lib/rahasia.rb', line 29

def self.master_key=(master_key)
  @master_key = master_key
end

.null_adapterObject



100
101
102
# File 'lib/rahasia.rb', line 100

def self.null_adapter
  'lockbox'
end

.null_encryptorObject



104
105
106
# File 'lib/rahasia.rb', line 104

def self.null_encryptor
  Adapter::Lockbox
end

.rahasia_keyObject



44
45
46
47
48
49
50
51
# File 'lib/rahasia.rb', line 44

def self.rahasia_key
  @rahasia_key =
    if Rahasia.adapter == 'vault'
      Rahasia.vault_app
    else
      Rahasia.master_key
    end
end

.rahasia_key=(key) ⇒ Object



40
41
42
# File 'lib/rahasia.rb', line 40

def self.rahasia_key=(key)
  @rahasia_key = key
end

.setup {|_self| ... } ⇒ Object

Yields:

  • (_self)

Yield Parameters:

  • _self (Rahasia)

    the object that the method was called on



23
24
25
# File 'lib/rahasia.rb', line 23

def self.setup
  yield self
end

.vaultObject



86
87
88
# File 'lib/rahasia.rb', line 86

def self.vault
  @vault
end

.vault=(vault) ⇒ Object



82
83
84
# File 'lib/rahasia.rb', line 82

def self.vault=(vault)
  @vault = vault
end

.vault_appObject



96
97
98
# File 'lib/rahasia.rb', line 96

def self.vault_app
  @vault_app
end

.vault_app=(vault_app) ⇒ Object



92
93
94
# File 'lib/rahasia.rb', line 92

def self.vault_app=(vault_app)
  @vault_app = vault_app
end