Как использовать blowfi sh mircryption с JavaScript / NodeJS - PullRequest
0 голосов
/ 28 марта 2020

Я хотел бы использовать для шифрования и дешифрования сообщений IR C через бот IR C в NodeJS. В этом сообщении используется зеркальное шифрование CB C или ECB blowfi sh с использованием блочного и base64 шифрования.

Я нахожу информацию здесь:

Blowfi sh плагины для IR C похоже, что используется MODE_ECB (кодовая книга Electroni c), который, вероятно, наименее защищен из алгоритмов blowfi sh.

Для шифрования они разбивают открытый текст на 8-байтовые блоки (Blowfi) sh размер блока ECB). Затем они зашифровывают каждый 8-байтовый блок по отдельности, получают выходные данные каждого зашифрованного блока и разбивают его на (2) 4-байтовые строки, а каждый код base64 кодируют, дополняя их длиной до 6 символов base64.

Для расшифровки этот процесс полностью изменен, но, поскольку это несколько сбивает с толку, я также опишу это. Возьмите 12 байтов зашифрованного текста, расшифровывая каждое 6-байтовое представление как long ('> L'), так что теперь у вас есть 8 байтов, которые вы затем передаете в расшифровку blowfi sh al go.

Источник: IR C Blowfi sh Режим шифрования? Block_cipher_mode_of_operation: https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation

Официальный сайт зеркального шифрования, кажется, дает больше поддержка: http://mircryption.sourceforge.net/

то, что я нашел ближе всего к javascript, находится здесь: https://www.npmjs.com/package/javascript-blowfish

Java Пример кода: https://github.com/d-fens/drftpd/blob/master/src/plugins/org.drftpd.plugins.sitebot/src/org/drftpd/plugins/sitebot/Blowfish.java

Модуль Eggdrop * blowfi sh: https://github.com/eggheads/eggdrop/blob/develop/src/mod/blowfish.mod/blowfish.c

ZN C Fi sh Модуль https://gist.github.com/v4lli/ee4edd99128e7cb518ebad548cab7a41

FI SH 10 для мир c https://github.com/flakes/mirc_fish_10/blob/master/fish_10/src/blowfish.cpp

python код: https://github.com/fladd/py-fishcrypt

...