<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=421289&amp;view=findpost&amp;p=3845785</guid>
        <pubDate>Mon, 29 Mar 2021 07:14:06 +0000</pubDate>
        <title>Boost md5</title>
        <link>https://forum.sources.ru/index.php?showtopic=421289&amp;view=findpost&amp;p=3845785</link>
        <description><![CDATA[Lem0nti: Спасибо. Всё теперь в норме.]]></description>
        <author>Lem0nti</author>
        <category>C/C++: Прочее</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=421289&amp;view=findpost&amp;p=3845775</guid>
        <pubDate>Sun, 28 Mar 2021 19:59:21 +0000</pubDate>
        <title>Boost md5</title>
        <link>https://forum.sources.ru/index.php?showtopic=421289&amp;view=findpost&amp;p=3845775</link>
        <description><![CDATA[negram: Похоже, что вызвано вот <a class='tag-url' href='https://github.com/boostorg/uuid/pull/109' target='_blank'>этим</a> изменением. Рекомендуют задефайнить  BOOST_UUID_COMPAT_PRE_1_71_MD5]]></description>
        <author>negram</author>
        <category>C/C++: Прочее</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=421289&amp;view=findpost&amp;p=3845756</guid>
        <pubDate>Sun, 28 Mar 2021 12:27:22 +0000</pubDate>
        <title>Boost md5</title>
        <link>https://forum.sources.ru/index.php?showtopic=421289&amp;view=findpost&amp;p=3845756</link>
        <description><![CDATA[Lem0nti: Здравствуйте.<br>
Столкнулся с такой проблемой - boost 1.70 не так считает md5 как 1.71.<br>
В сети легко ищется такой пример работы с md5:<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">#include &#60;iostream&#62;</div><div class="code_line">#include &#60;algorithm&#62;</div><div class="code_line">#include &#60;iterator&#62;</div><div class="code_line">#include &#60;boost/uuid/detail/md5.hpp&#62;</div><div class="code_line">#include &#60;boost/algorithm/hex.hpp&#62;</div><div class="code_line">&nbsp;</div><div class="code_line">using boost::uuids::detail::md5;</div><div class="code_line">&nbsp;</div><div class="code_line">std::string toString(const md5::digest_type &amp;digest)</div><div class="code_line">{</div><div class="code_line">&nbsp;&nbsp; &nbsp;const auto charDigest = reinterpret_cast&#60;const char *&#62;(&amp;digest);</div><div class="code_line">&nbsp;&nbsp; &nbsp;std::string result;</div><div class="code_line">&nbsp;&nbsp; &nbsp;boost::algorithm::hex(charDigest, charDigest + sizeof(md5::digest_type), std::back_inserter(result));</div><div class="code_line">&nbsp;&nbsp; &nbsp;return result;</div><div class="code_line">}</div><div class="code_line">&nbsp;</div><div class="code_line">int main ()</div><div class="code_line">{</div><div class="code_line">&nbsp;&nbsp; &nbsp;std::string s;</div><div class="code_line">&nbsp;&nbsp; &nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp;while(std::getline(std::cin, s)) {</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;md5 hash;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;md5::digest_type digest;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;hash.process_bytes(s.data(), s.size());</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;hash.get_digest(digest);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;std::cout &#60;&#60; &quot;md5(&quot; &#60;&#60; s &#60;&#60; &quot;) = &quot; &#60;&#60; toString(digest) &#60;&#60; &#39;\n&#39;;</div><div class="code_line">&nbsp;&nbsp; &nbsp;}</div><div class="code_line">&nbsp;&nbsp; &nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp;return 0;</div><div class="code_line">}</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
<br>
Вот здесь мы можем его опробовать на разных версиях буста - <a class='tag-url' href='https://wandbox.org/permlink/CJ0MMunEhYCRe6Cd' target='_blank'>https://wandbox.org/permlink/CJ0MMunEhYCRe6Cd</a> . Результат с версией 1.70 будет один, а с версией 1.71 другой. При этом правильный - 1.70. Подскажите, пожалуйста, что изменилось в версии 1.71? Как теперь правильно получать md5?<br>
<br>
ЗЫЖ Если кому лень переключать, проверять, то вот я записал видео с экрана для демонстрации того что происходит: <a class='tag-url' href='https://www.youtube.com/watch?v=EiRa2a6iB94' target='_blank'>https://www.youtube.com/watch?v=EiRa2a6iB94</a>]]></description>
        <author>Lem0nti</author>
        <category>C/C++: Прочее</category>
      </item>
	
      </channel>
      </rss>
	