Я пытаюсь зашифровать хеш с использованием SHA512. но я получаю не могу преобразовать хеш в строку. Любая помощь приветствуется.как зашифровать значение хэша с помощью SHA512
hash=Hash.new
hash={first_name:"hari", last_name:"prakash", mobile:"12345" }
enc_hash= Digest::SHA2.new(512).digest(hash)
, когда я делаю это я получаю
TypeError: can't convert Hash into String
Пожалуйста, руководство меня. любой учебный ресурс по этой теме приветствуется.
SHA512, на самом деле любая криптографическая хэш-функция является ** не ** шифрованием. Шифрование подразумевает обратимость и использование ключа для этого. Кроме того, использование слова «хэш» для словаря является артефактом Perl и теперь Ruby, что просто вызывает путаницу. – zaph
Ваш вопрос неясен. Прежде всего, что значит «зашифровать хэш»? Все известные алгоритмы шифрования работают с потоками октетов, потоками битов, потоками байтов или потоками символов. Нет алгоритмов шифрования, которые работают с графами объектов Ruby в памяти. И, во-вторых, SHA512 не является алгоритмом шифрования, поэтому вы не можете шифровать что-либо с ним, период. –