Как сгенерировать хэш файла MD5 в Node.js?

Kak Sgenerirovat Hes Fajla Md5 V Node Js



« MD5-хеширование » играет жизненно важную роль в защите данных разработчика путем поддержания целостности данных. Это так, что Node.js « криптография Библиотека используется для вычисления хэш-значений файлов, например « MD5 » для проверки целостности передачи или хранения. Этот подход помогает подтвердить наличие разработчиком уязвимостей или подделку файлов, тем самым обеспечивая безопасность данных.

Обзор содержания

Что такое хеширование файлов MD5?

« MD5 ” — это односторонняя функция, которая принимает данные любого типа в качестве входных данных и отображает их в выходную строку фиксированного размера, независимо от размера данной строки. Хэш-функция создает одинаковый/идентичный выходной хэш для предоставленной строки.

Это так, что эту строку можно использовать для проверки файлов или текста при передаче по сети, а MD5 проверяет, действительны ли данные или нет. Ниже приведена демонстрация:







Входное значение Возвращенное хеш-значение
JavaScript 686155af75a60a0f6e9d80c1f7edd3e9
Лиам*88 c9c77fd293a9bb6d172e36a4a04053ea

Предварительные условия для создания хеша файла MD5 в JavaScript

Ниже приведены предварительные условия, которые следует учитывать перед созданием хеша файла MD5:



Шаг 1: Настройте проект

Прежде всего, инициализируйте проект со значениями по умолчанию (через « флаг ») с помощью следующего командлета:



npm инициализация - и





Бонусный совет: Создать ' шаблон.cjs ” вместо файла “ шаблон.js ” файл, чтобы избежать “ модуль » введите ошибки.

Шаг 2. Создайте текстовый файл

Создайте текстовый файл « текстовый файл.txt », чтобы сгенерировать хеш-значение MD5 из содержимого файла. Ниже приведено содержимое файла, которое необходимо оценить:



Также обратите внимание, что « криптография ” потребуется модуль. Поскольку это встроенный модуль Node.js, его нет необходимости устанавливать или настраивать. Ниже приведена демонстрация:

npm установить криптографию

Здесь видно, что отдельно устанавливать этот модуль нет необходимости.

Как сгенерировать хэш файла MD5 в Node.js?

Хэш MD5 файла можно сгенерировать с помощью команды « криптография ” модуль и его методы, такие как “ создатьХэш() ' и ' дайджест() ». Этот модуль предоставляет криптографические методы для обеспечения безопасности данных в Node.js.

Использованы общие методы для создания хеша файла MD5 в Node.js.

Ниже приведены методы, обычно используемые для создания хэша md5 файла:

читатьФайлСинк(): Этот метод используется для синхронного чтения файлов.

Синтаксис

фс. чтениефайлесинк ( пт, выбор )

В данном синтаксисе:

  • « пт «» относится к относительному пути к текстовому файлу.
  • « выбрать ” — необязательный параметр, который включает в себя кодировку и флаг.

Возвращаемое значение

Он извлекает содержимое файла.

создатьХэш(): Этот метод создает хэш-объект для создания хеш-дайджестов.

Синтаксис

крипто. создатьHash ( Алл, бери )

В этом синтаксисе:

  • « Алг » указывает на зависимость от доступных алгоритмов, поддерживаемых версией OpenSSL.
  • « выбрать » — необязательный параметр, управляющий поведением потока.

Возвращаемое значение

Он извлекает объект Hash.

хэш.дайджест(): Этот метод создает данные дайджеста, передаваемые при создании хеша.

Синтаксис

хеш. переваривать ( [ энк ] )

Здесь, ' энк » указывает тип кодировки, который может быть « шестигранник ' или ' база64 ».

Возвращаемое значение

Он извлекает строку переданной кодировки.

Пример 1. Генерация хеша файла MD5 в Node.js

В этом примере генерируется хэш md5 содержимого файла с использованием « криптография ' и ' фс » модули:

константа получить1 '=' требовать ( 'крипто' ) ;

константа получить2 '=' требовать ( 'фс' ) ;

константа readmd5 '=' получить2. чтениефайлесинк ( 'текстовый файл.txt' ) ;

константа вне '=' получить1. создатьHash ( 'мд5' ) . обновлять ( readmd5 ) . переваривать ( 'шестигранник' ) ;

консоль. бревно ( «MD5-хеш файла ->» + вне ) ;

Объяснение кода следующее:

  • Сначала импортируйте « криптография ' и ' фс » модули для генерации md5-хеша и работы с файлами соответственно.
  • Теперь примените « чтениеФайлесинк() ” для синхронного чтения указанного файла.
  • После этого примените « создатьХэш() ” для создания хеш-объекта md5, ссылающегося на файл.
  • Указанное « шестигранник значение как « дайджест() Параметр метода относится к типу кодировки.
  • Наконец, получите хеш md5 соответствующего файла.

Выход

Выполните следующий командлет, чтобы сгенерировать хэш файла md5:

шаблон узла. cjs

Этот результат означает, что хэш md5 целевого файла возвращается соответствующим образом.

Пример 2. Создание хеша файла MD5 и чтение файла в Node.js

В этой демонстрации хэш md5 файла можно получить одновременно с чтением его содержимого:

вар включает1 '=' требовать ( 'фс' ) ;

был включен2 '=' требовать ( «крипто» ) ;

вар getHash '=' ( содержание ) => {

вар genHash '=' включить2. создатьHash ( 'md5' ) ;

данные '=' genHash. обновлять ( содержание, 'utf-8' ) ;

вне '=' данные. переваривать ( 'шестнадцатеричный' ) ;

возвращаться вне ;

}

вар readFile '=' включить1. создатьReadStream ( 'текстовый файл.txt' ) ;

лаймовый счет '=' ''

прочитатьФайл. на ( 'данные' , функция ( кусок ) {

продолжение += кусок ;

} ) ;

прочитатьФайл. на ( 'ошибка' , функция ( ошибаться ) {

консоль. бревно ( ошибаться ) ;

} ) ;

прочитатьФайл. на ( 'конец' , функция ( ) {

переменное содержимое '=' getHash ( продолжение ) ;

консоль. бревно ( 'Содержимое файла -> \п ' + продолжение ) ;

консоль. бревно ( 'MD5-хеш файла ->' + содержание ) ;

} ) ;

В соответствии с этим блоком кода выполните следующие шаги:

  • Аналогичным образом включите обсуждаемые модули.
  • Теперь передайте данные для хеширования, создав хеш-объект md5 и указав « шестигранник формат.
  • После этого создайте поток чтения для чтения содержимого указанного файла.
  • Двигаясь дальше, прочитайте содержимое файла и справьтесь с возникшими ошибками, если они есть.
  • Наконец, вызовите « getHash() ” для вычисления хеша md5 содержимого файла.

Выход

Запустите приведенный ниже код, чтобы получить хэш md5 содержимого файла:

шаблон узла. cjs

Из этого можно сделать вывод, что содержимое файла вместе с хешем md5 файла отображается соответствующим образом.

Альтернативный подход 1. Генерация MD5-хеша строки в Node.js

Следующая демонстрация кода генерирует хэш md5 строкового значения:

были стринги '=' «Линукс» ;

известь включает в себя '=' требовать ( «крипто» ) ;

вар makeHash '=' включать. создатьHash ( 'md5' ) . обновлять ( нить ) . переваривать ( 'шестнадцатеричный' ) ;

консоль. бревно ( «MD5-хеш строки ->» + makeHash ) ;

В этом коде:

  • Инициализируйте строку, из которой должно быть получено хеш-значение md5, и включите « криптовалюта » модуль.
  • После этого аналогичным образом примените « создатьХэш() ' и ' дайджест() ” для создания хеш-объекта и получения строки в соответствии с переданным типом кодировки, то есть «шестнадцатеричным».
  • Наконец, верните хеш md5 определенной строки.

Выход

шаблон узла. cjs

Альтернативный подход 2. Генерация MD5-хеша пароля в Node.js

В этом примере вместо этого можно получить MD5-хеш пароля:

были стринги '=' '123*adQe&' ;

известь включает в себя '=' требовать ( «крипто» ) ;

вар makeHash '=' включать. создатьHash ( 'md5' ) . обновлять ( нить ) . переваривать ( 'шестнадцатеричный' ) ;

консоль. бревно ( «MD5-хеш пароля ->» + makeHash ) ;

Здесь укажите пароль и повторите описанные действия для включения « криптовалюта » модуль и применение комбинированного « обновлять() ' и ' дайджест() ” методы для генерации хэша пароля md5.

Выход

Запуск следующего командлета генерирует хеш пароля md5:

шаблон узла. cjs

Заключение

Хэш MD5 файла можно создать, установив и импортировав « криптовалюта ” и используя его методы, такие как “ создатьХэш() ' и ' дайджест() » и т. д. Кроме того, также можно сгенерировать хеш md5 определенной строки или пароля. По сути, это защищает данные, шифруя их на основе переданного формата кодирования.