Module: Keyring

Defined in:
lib/keyring.rb,
lib/keyring/key.rb,
lib/keyring/encryptor/aes.rb

Defined Under Namespace

Modules: Encryptor Classes: Base, Key

Constant Summary collapse

UnknownKey =
Class.new(StandardError)
InvalidSecret =
Class.new(StandardError)
EmptyKeyring =
Class.new(StandardError)
InvalidAuthentication =
Class.new(StandardError)
MissingDigestSalt =
Class.new(StandardError) do
  def message
    %w[
      Please provide :digest_salt;
      you can disable this error by explicitly passing an empty string.
    ].join(" ")
  end
end

Class Method Summary collapse

Class Method Details

.new(keyring, options = {}) ⇒ Object

Raises:



75
76
77
78
79
80
81
82
83
# File 'lib/keyring.rb', line 75

def self.new(keyring, options = {})
  options = {
    encryptor: Encryptor::AES::AES128CBC
  }.merge(options)

  raise MissingDigestSalt if options[:digest_salt].nil?

  Base.new(keyring, options)
end