KlonD90
почему это тогда соль? О_о
Матрос
там ж я говорю - он все норм делает, все нормально шифрует, дурь в том что после final() в консоль выводится пустая строка и я в упор не понимаю почему
Матрос
ну вот так
Матрос
:D
Матрос
тьфу блин, это не соль
Матрос
это ключ для des
Матрос
короч не обращай внимания на названия переменных
Матрос
вот так лучше будет
Матрос
const input_string = '5b5a57676a56676e'
const key_string = '675a69675e5aa6b5'
const input = Buffer.from(input_string, 'hex')
const key = Buffer.from(key_string, 'hex')
const cipher = crypto.createCipheriv('des-ecb', key, '')
cipher.setAutoPadding(false)
let msg = cipher.update(input)
console.log(msg.toString('hex')) // тут все норм
var msg_file = fs.createWriteStream('msg_bin')
msg_file.write(msg)
msg_file.end()
let msg_final
console.log(msg.toString('hex')) // тут тоже все норм
msg_final = cipher.final()
console.log(msg_final.toString('hex')) // ВОТ ТУТ ПУСТО
var msg_final_file = fs.createWriteStream('msg_final_bin')
msg_final_file.write(msg)
msg_final_file.end() // а в файле все норм
KlonD90
а что ты ожидал в cipher.final ?
Матрос
ну вообще я ожидал там буфер
Матрос
Returns any remaining enciphered contents. If outputEncoding parameter is one of 'latin1', 'base64' or 'hex', a string is returned. If an outputEncoding is not provided, a Buffer is returned.
KlonD90
а в update'е чем тебя не устроил?
Матрос
да всем устроил
KlonD90
зачем это же смое вторлой раз?
Матрос
мысль понял
Матрос
зачем тогда вообще нужен final???
Матрос
и зачем люди в примерах постоянно делают msg += cipher.final()
KlonD90
ну вообще там может что-то остаться
Anonymous
ребят, есть тут кто b24 использовал? напишите в лс
KlonD90
но это как я опнял зависит от шифра
Матрос
ага, может действительно в этом дело...
Матрос
ок, спс
Матрос
просто если такую же фигню делать - типа msg += конкретно с des ecb на выходе получается полная хрень. может потому что он там буферы получается складывает а не из-за того что там что-то осталось??...
Матрос
ну то есть если вот так вот делать
Матрос
let msg = cipher.update(input)
console.log(msg.toString('hex'))
msg += cipher.final()
KlonD90
в финла тоже укажи
KlonD90
'hex'
KlonD90
в update тоже 'hex'
Матрос
сделал
Матрос
в консоль логе все равно не хекс в toString получается на выходе
Матрос
чет я вообще не понимаю что он с датой делает
KlonD90
да ты зачем-то buffer
KlonD90
сделал
Матрос
63d4caa5e2c1590c - вот должно было получится (если только update)
63efbfbdcaa5efbfbdefbfbd590c (вот после final)
Матрос
ну так буфер, там все в буфере чтоб дополнительных преобразований не делать
Матрос
или ты про что именно?
Матрос
EFBFBD что-то очень знакомое
KlonD90
KlonD90
тебе тогда уж buffer.concat
Матрос
в смысле его concat надо?
Матрос
тьфу блин
Матрос
точно)
Матрос
блин они ж там в примерах все со строками работают, а не с буферами напрямую, а я и копирнул...
Матрос
все, работает
Матрос
спасибо, глаз замылилился)
Anonymous
а че нодовский querystring не умеет хавать массив объектов?
Alexey
Всем привет! Скажите пожалуйста, практикуется ли такое. Хочу загрузить скомпилированные с помощью webpack js файлы, пути к которым находяться в файле json. Как вообще это реализовать правильно? Грузить через ajax json файл, и в цикле вставлять теги script в html документ? Может есть какие-либо инструменты для этого?
Artem
Приветствую, коллеги! Повторю свой воппос. Есть пачка (5-8) сервисов на node и php, общаются через REST. Разраб один, и он устал. Нужен самый дешевый в реализации Messaging, который удовлетворит нужны в очередях, pub/sub и RPC. Я могу городить свой огород вокруг redis, он уже используется как стор кеша и для очередей (kue). Но лучше бы я пошел по проверенному сообществом пути. Кто-то может-что подсказать? Заранее спасибо
Dmitry
dmitri
nats
dmitri
удобно и просто - есть ограничение по умолчанию на размер сообщения - 1Мб - можно переопределить
Artem
Камиль
ребят есть у меня в файле config.js подключен nconf
Камиль
и я этот файл подключаю
require('./config')
Камиль
мне же будет доступен nconf в подключаемом файле?
Vadim
немного не туда изначально запостил вопрос
Vadim
Я вот думаю, есть ли смысл считать упоминаемость url в твиттере, если там многие используют сокращение сссылок? Допустим, нужно узнать, как часто упоминается новость. Искать по url - часть не найдешь, потому что сокращают. По заголовку - так поиск же неточный, апи твиттера вернет твиты с похожими словами.
Vadim
интересно, как другие делают, а инфы нет
сomorsiс
по хештегам?
Vadim
по хештегам?
не представляю. вот, например, есть url новости: https://sdfsdf.ru/news/3453452. я ставлю листенер на это строковое значение, твиттер будет искать url во всём поле text, то есть во всем твите. а там такого текста нет, сократили ссылку. как мне хештег поможет?
сomorsiс
вплане что искать новость не по ссылкам а по сопутствующим тегам
Vadim
вплане что искать новость не по ссылкам а по сопутствующим тегам
Ну, вот если такой заголовок: "Маск заявил, что кожаные ублюдки больше не нужны". Я могу искать по всем словам из фразы: #Маск, #заявил и тд. Но я получу тогда водопад нерелевантных твитов и не узнаю, сколько раз упомянули оригинальный url
Vadim
черт, что я наделал)
Vadim
видимо, нужно исходить из обратного. находить трендовые хештеги, а потом искать упоминаемые с ними url'ы? хотелось наоборот - знать, сколько раз упомянут данный источник
Михаил Макарычев
Всем привет. Работаю с InfluxDB с помощью node-influx. Пишу данные по такой схеме:
{
measurement: 'user_actions',
tags: {action: 'command_start'},
fields: {telegram_id: 123}
}
Всё нормально записывается. Все данные нормально выводятся при таком запросе:
SELECT * from user_actions
Но почему-то массив с данными пуст при таком запросе:
SELECT * from user_actions WHERE action = command_start
И никак не могу понять, почему. Обработчик ошибки есть, но он ничего не отлавливает. В чём может быть проблема?
сomorsiс
попробуй command_start в кавычки
Михаил Макарычев
Михаил Макарычев
Проблему решил. Если кому интересно, то нужно было так:
select * from "user_actions" where "action" = 'command_start'
Vadim
На какой DIC кроме inversify стоит обратить внимание?
Dan
Понимаю, что крайне маловероятно, но кто-нибудь из вас есть сейчас на конференции в Нэшвилле?
Nurik
Всем привет. Ребят подскажите. Нужен сервер для отправки пуш уведомлений. Чтобы у себя можно было поднять. С клиентскими библиотеками для android и ios
Anonymous
в чем роль Makefile при работе с nodejs?
Den
В том же что и с другими языками
Den
Можешь зайти в эту папку и выполнить make configure && make или как-то так
Anonymous
он установит мне настройки ?
Anonymous
тут получается нечего компилировать, нечего устанавливать
Anonymous
или он как бы скачает зависимости ?
arts
Зависит от пакета. Make вообще не является частью экосистемы node.js, так что там теоретически может быть всё что угодно.
arts
Описание чата читаем