Задать вопрос
  • Как создавать свои форматы файлов для криптографии?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Существуют стандартные файловые форматы для хранения ЭЦП ключей. Для RSA, PGP и прочее.
    Это текстовые файлы оформленные соотв образом и хранящие внутри себя закодированный
    в Base64 ключ. Это то что касается публичной части криптографии там где важно оповестить
    как можно больше респонентов и где нужна открытость. Я также видел аналогичные XML-форматы
    в эпоху SOAP. Но они как-то не особо популярны. Они скорее часть SOAP чем криптографии.

    В симметричной криптографии задач файловых форматов вобщем-то не стоит. Даже более
    того. Если условные Алиса и Боб решили наладить секретную переписку - то им не нужен
    никакой файловый стандарт. Они - в контексте и будут передавать блочно-шифрованную
    информацию безо всякого формата без хедера и без магических чисел.

    Что еще. Для этой-же симметрички может быть полезен padding. Это специальное оформление
    последнего блока шифро-текста. Чтоб подбить вариативный размер файла под размер кратный
    блоку. Например если вы решили шифровать через AES-256 то вам нужен блок в 256 бит
    и алгоритм паддинга для хвостового блока. Padding известен и его методы описаны в wiki.
    Берите перебирайте. Который совпадет - тот и ваш. Вот. Паддинг - это не файловый формат
    а просто инженерный трюк чтоб уйти от блоков или прийти к блокам.
    Ответ написан
    1 комментарий
  • Как происходит работа с Git в крупных проектах?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я ни разу не работал с git в команде и в крупных проектах, поэтому не знаю, что нужно делать.

    Тебе и не нужно это знать. И мы не сможем перечислить все роли и задачи участников на проекте и все их возможные комбинации поэтому заранее рассказывать об этом бесполезно.

    Git - это просто инструмент. Но как делается review или кто его делает. Или голосуют. Или мержат или ребейзят.
    Или создают теги или бранчи. Или сколько делают осей разработки master/trunk, dev/stg/prod - это все частные договоренности. GitFlow, GitLabFlow. Интеграция Atlassian. С Gerrit. Это все-все частные случаи управления версиями кода на частных проектах. Нету общих рекомендаций.

    Узнать их можно на проекте. Пришел. Прочитал Developers process guide. И начал работать.

    А управление процессами разработки с помощью Git это большая и частная тема.

    Поэтому оставь в покое крупные проекты. И лучше задай просто про git. Про команды git например.
    Ответ написан
    Комментировать
  • Можно ли передать текстовый файл через RabbitMq?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Да можно. Почему нет. Так-же как и ссылку передавай содержимое файла. Просто длинная строка с переносами.

    Но я-бы проверил лимиты на макимальный размер сообщений. Подозреваю что этот лимит уникальный
    для каждого брокера и устанавливается в настройках. Поэтому гуглить не надо. Надо просто сделать
    тест и проверить какой толщины строки пролезают.
    Ответ написан
  • Есть ли свободная программа, убирающая шум с фото?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Надо посмотреть что за шум. Есть шум типа недостаточная экспозиция. При слабом свете была сделана фотка
    и по ней цветные пиксели появляются. Свойство света мать ево. Корпускулярные свойства. Частица попала
    только на красный либо линий либо зеленый элемент. Тут наверное будет один алгоритм фильтрации.

    Если шум вида пыль и царапины на отсканированном фото - то это наверное будет другой фильтр.

    Шум может быть низко-частотный. Цветовой блик или пересвет части изоборажения с уголка. Солнце в линзу попало.

    Логотип фото-хостинга я-бы тоже считал шумом да. :) Смотря под каким углом смотреть на проблему.

    Digital Signature с авторскими правами :) Тоже типа шум. Смотря для кого. :)
    Ответ написан
  • Почему флешка заразится вирусом если подключить к чему то?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тут наверное 2 сценария. Первое - флешка автозагрузочная. Типа вставил и какой-то autorun запускается.
    В этом случае троян проникает из флешки в пространство ФС десктопа.
    Во всех современных Windows эта опция уже отключена. Или контролируется антивирусом.

    Второй сценарий - наоборот. Троян уже сидит на зараженном десктопе и слушает событие - "подключился
    внешний диск". И копирует себя в какой-то "серенький каталог" типа Recycled или SystemVol information
    и тоже прописываетя в autorun флешки.
    Ответ написан
    Комментировать
  • Какие посоветуете книги для направления проектирования веб приложений?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Не знаю кто тебе рассказал про EAV но это тебе точно не друг в производительных приложениях.

    Микросервисная архитектура. По этому есть книжка от Sam Newman.

    RabbitMq - быстр но недостаточно. В сравнительных характеристиках берут Kafka за образец.

    Redis - изучи обязательно. Вообще связка Redis/NGinx - это основа любого самого быстрого веб-приложения. Без нее - нечего даже и думать о быстроте.

    Postgresql - хорошая вещь но он не должен появляться именно во фронтовой части веб приложения
    напрямую. Основа любой скорости в вебе - это предварительный прогрев кешей и публикация в них вообще
    всего что может пользователь запросить.

    event sourcing - очень размытое понятие. Наверное все что я перечислил выше может просто
    быть частью этого огромного паттерна. Шаблон настолько общий и универсальный что его можно
    найти и в BigData, и в платежных системах, и в чатах и соцсетях.
    Ответ написан
    3 комментария
  • Как управлять значением пикселей на экране в виндовс?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Во времена DOS это работало да. Ты мог писать напрямую в банки видеопамяти старых карточек типа VGA/SVGA.
    Примеры кода для C++ можно найти в книжке Шикина и Борескова по графике. Но я не советую потому что
    не актуально. И современный стек графики чуть длиннее.

    Знание того как работает OpenGL и DirectX - скорее всего тебе не даст полной картины как работает железо.
    Потому что железо NVidia и железо Radeon скорее всего будет сильно отличаться. Как будут обобщены отличия - чорт его знает. Скорее всего через драйвер. Но если ты очень хочешь поработать с пикселами отдельно и быстро
    по посмотри в SDL. Я кстати тоже туда хотел посмотреть на днях. Мне чего-то захотелось температурную
    карту IPv4 адресов нарисовать. Я такую видел образца 2009 года. А тут захотел свою.
    Ответ написан
    5 комментариев
  • Почему верхний левый угол всегда чёрный?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А сделай так

    tessellator->Color(1.0f, 1.0f, 1.0f)->Vertex(0, 0);
    tessellator->Color(1.0f, 1.0f, 1.0f)->Vertex(width, 0);
    tessellator->Color(1.0f, 1.0f, 1.0f)->Vertex(width, height);
    tessellator->Color(1.0f, 1.0f, 1.0f)->Vertex(0, height);
    Ответ написан
  • Почему русские буквы не выводятся в C++?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Кажется проблема имеет отношение только к Windows консоли. Надо проверить. Автор сделай так

    C:\>chcp
    Active code page: 437
    
    C:\>chcp 866
    Active code page: 866


    И запусти свой екзешник именно в ней. И потом еще попробуй вот так

    C:\>chcp  65001
    Active code page: 65001

    и тоже запусти
    Ответ написан
    1 комментарий
  • Как построить "нейронные связи" на основании полученных данных в json?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мне кажется что термин НЕЙРОННЫЕ здесь - buzzword. Не путайте читателей это к теме не имеет отношения.

    А имеет отношение скорее semantic web. Но это кажется мертвая технология. Ее поднимали в 2000х и
    вкладывали большие надежды. Тогда сообщество хотело чтоб веб был свободный и статичный как либа Мошкова.

    А современный веб вообще не заинтересован выдавать на выход семантические сети. Он выдает
    только дизайн и то очень динамический и защищенный многофакторками и защитой от роботов.

    Покажи вообще пример такой карты сайта. Я думаю что тут - две независимые задачи.

    1) Автогенерация карты сайта. Это интересное в топике но нужен пример. Покрывающий пример
    чтоб было понятно например будут ли там циклы.
    2) Визуализация. По этому - есть миллион решений. Я вот навскидку знаю только graphviz. Он немного
    устарел и глючит на больших объемах nodes и ему трудно подобрать подходящий layout и набор
    параметров чтоб не падал и выглядел красиво.
    Ответ написан
  • Используем kafka + spring boot, периодически listener перестает получать сообщения?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    На производительность кафки влияет 4 сущности. Конфиг брокера, продюсера, консюмера и message configuration.
    Очень сложно разбираться в том что у тебя происходит на основании такого странного теста. Скажи
    сколько времени ты ждал этого загадочного listener. Как ты ждал. В какой лог смотрел. Почему
    ты вообще решил что это проблема. Может продюсер ничего не производит. Короче дай картину
    происходящего более подробную.
    Ответ написан
    2 комментария
  • Можно ли заменить javascript языком dart/flutter?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Обычно создатели языка имеют в виду некую свою философию или идею чтобы пояснить
    зачем собственно они его создали. Вот несколько цитат с авторского сайта https://dart.dev/overview

    Dart is a client-optimized language for developing fast apps on any platform.


    The Dart language is type safe; it uses static type checking to ensure that a variable’s value always matches the variable’s static type.

    Dart has built-in sound null safety. This means values can’t be null unless you say they can be.

    Начало хорошее. Мне нравится. Возможно проблема null-safety для веба и не сильно выражена. Но для
    back-end - это ошибка в мильярд баксов. Так ее называют из за суммарного урона на всю историю
    существования фичи.

    Native platform: For apps targeting mobile and desktop devices, Dart includes both a Dart VM with just-in-time (JIT) compilation and an ahead-of-time (AOT) compiler for producing machine code.

    Это хорошо. Тут по сути описывается даже не веб-язык а вполне себе самостоятельный работающий вне среды браузера. Можно утилиты писать. Или бизнес-процессы.

    Web platform: For apps targeting the web, Dart can compile for development or production purposes. Its web compiler translates Dart into JavaScript.

    А вот это уже фигня какая-то. Рантайм в браузере остается JavaScript-овым. Пока я отмечаю новизну этого
    языка только в части Native. Для браузера - по сути тот-же TypeScript. Остается провести сравнительное
    тестирование и решить стоит ли TS замены на Dart.
    Ответ написан
    Комментировать
  • Как реализовать взаимодействие нескольких библиотек между собой на c++?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это преподаватель тебе такие задачи подкидывает?

    Загружай все три библиотеки и построй над ними полиморфизм через языковые возможности С++.
    Ответ написан
    Комментировать
  • Как запустить Python приложения на хостинге с Cpanel?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Пишет что нет модуля aiogram. Установи.
    Ответ написан
    Комментировать
  • Как нарисовать график (интересует мат. формула)?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Рисование графика по эскизу - это не такая простая задача. Обычно в школе нас учили рисовать графики
    полиномов до 2 степени. Это было не сложно. Надо было понять куда парабола смотрит. Рогами вверх или вниз.
    Куда она сдвинута относительно нуля координат. Это давало поправочные суммы к x, y. И насколько резко рога
    у нее взлетают. Обычно парабола пересекает точки (-1,1) (0,0) (1,1) в дефолтном варианте. И видя
    ее искажение по вертикали или горизонтали - можно примерно придумать какие множители добавить к X.

    В данном рисунке скорее всего имеет место композиция двух функций. Первое - это линия вида
    y = 0 если x = [0,2]
    и y = F(x) если x - [2, ∞] где F(x) - это некий полином может второй степени или выше.
    чтоб точнее понять надо брать например производные в каких-то ключевых точках
    и подставляя проверить что совпадает фактическое значение. На графике конечно
    мы глазами видим не производную а тангенс угла между OX и касательной в точке.

    На графике очевидно что производная (или практически - дифференциал) в точке
    (0,2) почти равен нулю и в точке около (8, ?) равен примерно тангенсу 45 градусов.
    Вот надо по этим прикидкам примерно представить что это за графика такой.
    Если производная от x^2 равна 2х то дальше считаем и подставляем.

    Хотя я могу придумать много графиков которые выглядят как эта кривая. Здесь подойдет
    и фрагмент синусоиды тоже.
    Ответ написан
    Комментировать
  • Как конвертировать ogg в mp3 python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Не для Питона. Для bash я использовал комбинацию из ffmpeg + lame

    ffmpeg -acodec libvorbis -i "$i" -acodec pcm_s16le

    lame [options] <infile> [outfile]

    Там кажется можно исхитриться и сделать pipeline чтоб не создавать промежуточный wav файл. Но навскидку
    я не помню как. Вот. Далее вызвать из Питона эти утилиты.
    Ответ написан
    Комментировать
  • Как остановить отаку ботов на сайт?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Не знаю годиться ли такой сценарий для Wordpress. Вот есть штука такая в NGINX как dynamic denylisting https://docs.nginx.com/nginx/admin-guide/security-...

    Осталось автоматизировать сбор ботов с логов.
    Ответ написан
    Комментировать
  • Равноценно ли использование MariaDB вместе MySQL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Для учебных задач тебе будет почти безразлично. Можешь ставить MariaDb.
    Ответ написан
    Комментировать
  • Как перенаправить вывод strace в tail?

    mayton2019
    @mayton2019
    Bigdata Engineer
    strace ничего не знает про Python и будет показывать только системные вызовы.
    До того как использовать strace я-бы предложил поискать диагностические инструменты
    pyhhon (я думаю такие есть) и начать с них.

    Тем более что мы имеем не бинарник а вполне себе доступный исходник.

    К чему это я. В strace надо смотреть с какими-то expectations. С ОЖИДАНИЕМ того что мы хотим увидеть.
    И с пониманием того как с этой информацией поступать дальше.

    Просто так смотреть в стрейс из любопытсва - это зря терять время.
    Ответ написан
    Комментировать
  • Как vk_боту с помощью Python скачать изображение?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Почему вы Питонисты никогда не обрабатываете коды ошибок http?
    def download_file(url, path):
        response = requests.get(url)
        with open(path, "wb") as f:
            f.write(response.content)


    request.get - возвращает статус. Это может быть 300-тка. Ошибка клиента. 400-тка. Секюрити. Или 500-тка
    баги на сервере. Вот что у тебя пришло?
    Ответ написан