Как создать хэш MD5 с модулем HMAC в Ruby?
-
20-09-2019 - |
Вопрос
Использование Google + Bing не дало ответа на простой вопрос:
Как вы собираетесь использовать модуль HMAC в Ruby для создания HMAC с MD5 (который использует секрет)?
Документы HMAC кажутся ужасно тонкими.
Спасибо!
Решение
Должен быть установлен следующий драгоценный камень:'руби-хмак'
$ irb
>> require 'hmac-md5'
=> true
>> HMAC::MD5.new("abc").digest
=> "\324\035\214\331\217\000\262\004\351\200\t\230\354\370B~"
>> HMAC::MD5.new("abc").hexdigest
=> "d41d8cd98f00b204e9800998ecf8427e"
>>
Другие советы
Это должен быть самый простой способ:
OpenSSL::HMAC.digest(OpenSSL::Digest::Digest.new('md5'), secret_key, your_data)
Вот что я сделал:
HMAC::MD5.new(shared_key).update(data).hexdigest
Вероятно, вам просто нужен HMAC::MD5.new(SECRET).digest.
Сначала выполните поиск «соли» хэша.Это зависит от вашего использования, но добавление фиксированной строки помогает сделать ваши хэши отличными от хэшей других приложений.Таким образом, атака по словарю сложнее.Но это в общих чертах.
http://betterlogic.com/roger/?p=152
нет?
Или я помню, как играл с ним внутри одного из наших драгоценных камней, так что, может быть, вы сможете его реконструировать?
http://github.com/appoxy/aws/tree/master
Надеюсь это поможет.
Чад