-Поиск по дневнику

Поиск сообщений в rss_forum_sources_ru

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.07.2007
Записей:
Комментариев:
Написано: 80


Boost md5

Воскресенье, 28 Марта 2021 г. 15:27 + в цитатник
Lem0nti: Здравствуйте.
Столкнулся с такой проблемой - boost 1.70 не так считает md5 как 1.71.
В сети легко ищется такой пример работы с md5:
    #include
    #include
    #include
    #include uuid/detail/md5.hpp>
    #include algorithm/hex.hpp>
    using boost::uuids::detail::md5;
    std::string toString(const md5::digest_type &digest)
    {
    const auto charDigest = reinterpret_cast(&digest);
    std::string result;
    boost::algorithm::hex(charDigest, charDigest + sizeof(md5::digest_type), std::back_inserter(result));
    return result;
    }
    int main ()
    {
    std::string s;
    while(std::getline(std::cin, s)) {
    md5 hash;
    md5::digest_type digest;
    hash.process_bytes(s.data(), s.size());
    hash.get_digest(digest);
    std::cout << "md5(" << s << ") = " << toString(digest) << '\n';
    }
    return 0;
    }


Вот здесь мы можем его опробовать на разных версиях буста - https://wandbox.org/permlink/CJ0MMunEhYCRe6Cd . Результат с версией 1.70 будет один, а с версией 1.71 другой. При этом правильный - 1.70. Подскажите, пожалуйста, что изменилось в версии 1.71? Как теперь правильно получать md5?

ЗЫЖ Если кому лень переключать, проверять, то вот я записал видео с экрана для демонстрации того что происходит: https://www.youtube.com/watch?v=EiRa2a6iB94

https://forum.sources.ru/index.php?showtopic=421289&view=findpost&p=3845756

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку