класс ActiveSupport::KeyGenerator
KeyGenerator — это простой оболочка вокруг реализации PBKDF2 OpenSSL. Его можно использовать для получения нескольких ключей для различных целей из заданного секрета. Это позволяет приложениям Rails иметь один защищённый секрет, но избегать повторного использования этого ключа в нескольких несовместимых контекстах.
Публичные методы класса
# File activesupport/lib/active_support/key_generator.rb, line 12
def initialize(secret, options = {})
@secret = secret
# The default iterations are higher than required for our key derivation uses
# on the off chance someone uses this for password storage
@iterations = options[:iterations] || 2**16
end Публичные методы экземпляра
# File activesupport/lib/active_support/key_generator.rb, line 22 def generate_key(salt, key_size = 64) OpenSSL::PKCS5.pbkdf2_hmac_sha1(@secret, salt, @iterations, key_size) end
Возвращает производный ключ, подходящий для использования. Значение по умолчанию для key_size выбрано для совместимости с настройками по умолчанию ActiveSupport::MessageVerifier. Т.е. OpenSSL::Digest::SHA1#block_length
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.