• Как получить HMODULE импортированой dll без LoadLibraryA() или GetModuleHandleA()?

    MvcBox
    @MvcBox
    Software Engineer [C/C++/JS(for Node.js)/etc]
    wishz, если у вас задача затруднить разбор импортов, то можете посмотреть в сторону этой библиотеки:
    https://github.com/JustasMasiulis/lazy_importer
    Ответ написан
    Комментировать
  • Криптографические библиотеки для C/C++?

    maaGames
    @maaGames
    Погроммирую программы
    Ни в коем случае НЕ используейте самописные крипто-либы. Если нельзя использовать XOR для "шифрования", то ни в коем случае не испоьзуйте самописных библиотек. Криптографические библиотек иразрабатывают сотни человек десятками лет и они всё-равно содержат ошибки и уязвимости. Самописная либа на 99.99999% будет уязвима.
    Конкретных либ рекомендовать не буду, но я бы выбирал исключительно бибилиотеки, которые реализуют хорошо описанный алгоритм с открытым кодом (или хотя бы математическим описанием алгоритма шифрования). Если алгоритм шифрования засекречен, то независимые эксперты не могут его проанализирвоать и указать на ошибки и нет причит ему доверять.
    Ответ написан
    Комментировать
  • Криптографические библиотеки для C/C++?

    конкретно для моих проектов меня интересуют алгоритмы(sha, rsa,ecdh, aes), и хочу найти информацию по поводу существующих библиотек на эту тему.

    https://www.cryptopp.com/wiki/RSA_Cryptography - вот страничка на cryptopp-шной wiki по RSA, пробовали читать? Что понятно/непонятно? Вы уверены, что вам нужна информация именно по библиотеке, а не по самим алгоритмам?

    Мне интересно узнать ваше мнение, как вы думаете, насколько безопастно/грамотно использовать самописные крипто-либы, и использовали ли вы бы такие библиотеки для какого-то продакшена?

    Вам - категорически не советую. Если бы вы знали достаточно для самостоятельной безопасной реализации таких алгоритмов - вы бы не задавли этот вопрос. Кроме того, вы бы понимали, что гораздо проще разобраться с существующей библиотекой, чем писать свою реализацию.

    Судя по вашему вопросу, вы пытаетесь обойти необходимость разбираться со сложными вещами, в том числе путём велосипедостроения. Криптография - это область, которая не терпит такого подхода. Разумеется, люди время от времени реализовывают свои собственные решения с нуля (ведь кто-то же начал проекты cryptopp и openssl), но они хорошо осведомлены как о всех существующих решениях, так и сложностях с созданием своего собственного. И о практическом выхлопе от затрат на качественную реализацию своего решения.

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