Class: KStor::Model::KeychainItem
Overview
Instance Attribute Summary collapse
-
#encrypted_privk ⇒ Object
Returns value of property encrypted_privk.
-
#group_id ⇒ Object
Returns value of property group_id.
-
#group_pubk ⇒ Object
Returns value of property group_pubk.
-
#privk ⇒ Object
Returns value of property privk.
Instance Method Summary collapse
-
#encrypt(user_pubk) ⇒ Object
Re-encrypt group private key.
-
#lock ⇒ Object
Forget about decrypted group private key.
-
#locked? ⇒ Boolean
Check if group private key was decrypted.
-
#to_h ⇒ Object
Dump properties except #encrypted_privk.
-
#unlock(group_pubk, user_privk) ⇒ Object
Decrypt group private key.
-
#unlocked? ⇒ Boolean
Check if group private key was decrypted.
Methods inherited from Base
#clean, #dirty?, #initialize, property, property?
Constructor Details
This class inherits a constructor from KStor::Model::Base
Instance Attribute Details
#encrypted_privk ⇒ Object
Returns value of property encrypted_privk
103 |
# File 'lib/kstor/model.rb', line 103 property :encrypted_privk |
#group_id ⇒ Object
Returns value of property group_id
99 |
# File 'lib/kstor/model.rb', line 99 property :group_id |
#group_pubk ⇒ Object
Returns value of property group_pubk
101 |
# File 'lib/kstor/model.rb', line 101 property :group_pubk |
#privk ⇒ Object
Returns value of property privk
105 |
# File 'lib/kstor/model.rb', line 105 property :privk |
Instance Method Details
#encrypt(user_pubk) ⇒ Object
Re-encrypt group private key.
Calling this will overwrite the #encrypted_privk property.
125 126 127 128 129 |
# File 'lib/kstor/model.rb', line 125 def encrypt(user_pubk) self.encrypted_privk = Crypto.encrypt_group_privk( user_pubk, privk, privk ) end |
#lock ⇒ Object
Forget about decrypted group private key.
This will unset #privk property.
134 135 136 |
# File 'lib/kstor/model.rb', line 134 def lock self.privk = nil end |
#locked? ⇒ Boolean
Check if group private key was decrypted.
141 142 143 |
# File 'lib/kstor/model.rb', line 141 def locked? privk.nil? end |
#to_h ⇒ Object
Dump properties except #encrypted_privk.
153 154 155 |
# File 'lib/kstor/model.rb', line 153 def to_h super.except('encrypted_privk') end |
#unlock(group_pubk, user_privk) ⇒ Object
Decrypt group private key.
Calling this method will set the #privk property.
113 114 115 116 117 |
# File 'lib/kstor/model.rb', line 113 def unlock(group_pubk, user_privk) self.privk = Crypto.decrypt_group_privk( group_pubk, user_privk, encrypted_privk ) end |
#unlocked? ⇒ Boolean
Check if group private key was decrypted.
148 149 150 |
# File 'lib/kstor/model.rb', line 148 def unlocked? !locked? end |