<div dir="ltr">From MonticelloBrowser: <a href="http://www.squeaksource.com/Cryptography">http://www.squeaksource.com/Cryptography</a> package Cryptography<br></div><div class="gmail_extra"><br><div class="gmail_quote">2017-06-07 17:14 GMT-03:00 Nicolas Cellier <span dir="ltr"><<a href="mailto:nicolas.cellier.aka.nice@gmail.com" target="_blank">nicolas.cellier.aka.nice@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="">2017-06-07 21:40 GMT+02:00 casimiro barreto <span dir="ltr"><<a href="mailto:casimiro.barreto@gmail.com" target="_blank">casimiro.barreto@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>MD5 (non primitive and with primitive) is broken because it relies on the conversion of Character to SmallInteger so the method shiftBits: <br><br></div>Problem happens at ThirthyTwoBitRegister>>reverse<wbr>LoadFrom:at:<br><br></div>which is called from MD5NonPrimitive>>proccessBuffe<wbr>r:<br><br></div>Error is: Instance of Character did not understand #bitShift and happened at:<br><br>reverseLoadFrom: aByteArray at: index<br>    "Load my 32-bit value from the four bytes of the given ByteArray<br>starting at the given index. Consider the first byte to contain the most<br>significant bits of the word (i.e., use big-endian byte ordering)."<br><br>    hi := ((aByteArray at: index + 3) bitShift: 8) + ( aByteArray at: index + 2).<br>    low := ((aByteArray at: index + 1) bitShift: 8) + ( aByteArray at: index).<span class="m_5819105357693066307HOEnZb"><font color="#888888"><br clear="all"><div><div><div><div><div><div><br></div></div></div></div></div></div></font></span></div></blockquote><div><br></div></span><div>Thanks for reporting. Obviously, the code expects a ByteArray, not a String, so there is some contract broken.<br><br></div><div>Could you remind me where to find/load which package?<br> <br></div><span class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><span class="m_5819105357693066307HOEnZb"><font color="#888888"><div><div><div><div><div><div>-- <br><div class="m_5819105357693066307m_8188459970316380835gmail_signature">The information contained in this message is confidential and<br>intended to the recipients specified in the headers. If you received<br>this message by error, notify the sender immediately. The<br>unauthorized use, disclosure, copy or alteration of this message<br>are strictly forbidden and subjected to civil and criminal sanctions.<br></div>
</div></div></div></div></div></div></font></span></div>
<br><br>
<br></blockquote></span></div><br></div></div>
<br><br>
<br></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">The information contained in this message is confidential and<br>intended to the recipients specified in the headers. If you received<br>this message by error, notify the sender immediately. The<br>unauthorized use, disclosure, copy or alteration of this message<br>are strictly forbidden and subjected to civil and criminal sanctions.<br></div>
</div>