Class: OneSecret::Secret
- Inherits:
-
Object
- Object
- OneSecret::Secret
- Defined in:
- lib/one_secret/secret.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(value) ⇒ Secret
constructor
A new instance of Secret.
- #to_hash ⇒ Object
Constructor Details
#initialize(value) ⇒ Secret
Returns a new instance of Secret.
9 10 11 12 13 |
# File 'lib/one_secret/secret.rb', line 9 def initialize(value) @iv = SecureRandom.hex(16) @salt = Time.now.to_i.to_s @value = Encryptor.encrypt(to_hash.merge(value: value)) end |
Class Method Details
.key=(key) ⇒ Object
4 5 6 |
# File 'lib/one_secret/secret.rb', line 4 def key=(key) Encryptor..merge!({key: key}) end |
.load(encrypted_value) ⇒ Object
24 25 26 |
# File 'lib/one_secret/secret.rb', line 24 def self.load(encrypted_value) Encryptor.decrypt(encrypted_value) rescue encrypted_value end |
Instance Method Details
#to_hash ⇒ Object
15 16 17 18 19 20 21 22 |
# File 'lib/one_secret/secret.rb', line 15 def to_hash { value: @value, iv: @iv, salt: @salt, algorithm: Encryptor.[:algorithm] } end |