A key is a container for a given secret

Optionally, it can include public_tags. These tags are meant to be stored in clean (public) and can be used, for example, to include information that references the key for a future retrieval operation.

Methods

Attributes

[R] public_tags
[R] secret

Class Public methods

derive_from(password)

📝 Source code
# File activerecord/lib/active_record/encryption/key.rb, line 18
      def self.derive_from(password)
        secret = ActiveRecord::Encryption.key_generator.derive_key_from(password)
        ActiveRecord::Encryption::Key.new(secret)
      end
🔎 See on GitHub

new(secret)

📝 Source code
# File activerecord/lib/active_record/encryption/key.rb, line 13
      def initialize(secret)
        @secret = secret
        @public_tags = Properties.new
      end
🔎 See on GitHub

Instance Public methods

id()

📝 Source code
# File activerecord/lib/active_record/encryption/key.rb, line 23
      def id
        Digest::SHA1.hexdigest(secret).first(4)
      end
🔎 See on GitHub