<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px">Also if one were to use CBC, aside from limited compatibility with other libraries, wouldn't CTS be the only mode not vulnerable to the Padding oracle attack?<br><div id="yui_3_16_0_1_1428332468673_2892"><span></span></div><br>  <div id="yui_3_16_0_1_1428332468673_2701" style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div id="yui_3_16_0_1_1428332468673_2700" style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div id="yui_3_16_0_1_1428332468673_2699" dir="ltr"> <hr id="yui_3_16_0_1_1428332468673_2891" size="1">  <font id="yui_3_16_0_1_1428332468673_2702" face="Arial" size="2"> <b><span style="font-weight:bold;">From:</span></b> Maricel Gregoraschko <maricelgregoraschko@yahoo.com><br> <b><span style="font-weight: bold;">To:</span></b> Botan development list <botan-devel@randombit.net> <br> <b><span style="font-weight: bold;">Sent:</span></b> Monday, April 6, 2015 10:50 AM<br> <b><span style="font-weight: bold;">Subject:</span></b> Re: [botan-devel] PKCS5_PBKDF2::derive_key() length check<br> </font> </div> <div id="yui_3_16_0_1_1428332468673_2712" class="y_msg_container"><br><div id="yiv3837517886"><div id="yui_3_16_0_1_1428332468673_2715"><div id="yui_3_16_0_1_1428332468673_2714" style="color:#000;background-color:#fff;font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"><div dir="ltr" id="yiv3837517886yui_3_16_0_1_1428288485453_26826"><span id="yui_3_16_0_1_1428332468673_2713">Fair enough. </span></div><div dir="ltr" id="yiv3837517886yui_3_16_0_1_1428288485453_26826"><span id="yui_3_16_0_1_1428332468673_2730">For what it's worth, crypto++ has it (CBC_CTS) and with the same limit (blocksize+1). I also checked that it's fully compatible (i.e. encryption and decryption output the exact same data for a given key + iv pair).</span></div><div dir="ltr" id="yiv3837517886yui_3_16_0_1_1428288485453_26826"><span><br clear="none"></span></div><div dir="ltr" id="yiv3837517886yui_3_16_0_1_1428288485453_26826">I didn't see GCM in the stable Botan library version. Is there another mode you'd recommend that is implemented there?</div><div dir="ltr" id="yiv3837517886yui_3_16_0_1_1428288485453_26826">Thank you!</div><br clear="none">  <div class="qtdSeparateBR"><br><br></div><div class="yiv3837517886yqt3700486386" id="yiv3837517886yqt78313"><div id="yiv3837517886yui_3_16_0_1_1428288485453_26830" style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div id="yiv3837517886yui_3_16_0_1_1428288485453_26829" style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div dir="ltr" id="yiv3837517886yui_3_16_0_1_1428288485453_26828"> <hr id="yiv3837517886yui_3_16_0_1_1428288485453_26827" size="1">  <font id="yiv3837517886yui_3_16_0_1_1428288485453_26831" face="Arial" size="2"> <b><span style="font-weight:bold;">From:</span></b> Jack Lloyd <lloyd@randombit.net><br clear="none"> <b><span style="font-weight:bold;">To:</span></b> botan-devel@randombit.net <br clear="none"> <b><span style="font-weight:bold;">Sent:</span></b> Monday, April 6, 2015 10:18 AM<br clear="none"> <b><span style="font-weight:bold;">Subject:</span></b> Re: [botan-devel] PKCS5_PBKDF2::derive_key() length check<br clear="none"> </font> </div> <div class="yiv3837517886y_msg_container" id="yiv3837517886yui_3_16_0_1_1428288485453_26832"><br clear="none">On Sat, Apr 04, 2015 at 05:23:27AM +0000, Maricel Gregoraschko wrote:<br clear="none"><br clear="none">> Also, is there a good reason why the minimum input for CTS is<br clear="none">> blocksize+1 rather than blocksize? There would still be no previous<br clear="none">> block to take ciphertext  from, but nor would it be needed, a full<br clear="none">> block is a full block, no? I've only looked at the implementation<br clear="none">> superficially. I understand we can't have less than a block, that<br clear="none">> would force padding through other methods. Thanks!<br clear="none"><br clear="none">It seems like that would work. I wonder how other implementations<br clear="none">handle this?<br clear="none"><br clear="none">Really though, any extensions like this to CTS mode seem pointless since<br clear="none">all new applications should be moving to a good AEAD mode, full stop.<br clear="none"><br clear="none">And CTS mode is particularly undesirable given it is not as widely<br clear="none">implemented, so it doesn't even have CBC or CTR modes advantage of<br clear="none">easy cross-library protocol implementation. So I'm not inclined to<br clear="none">actually make any modification here, unless some other implementation<br clear="none">already supports this and so it is needed for compatability.<div id="yui_3_16_0_1_1428332468673_2893" class="yiv3837517886qtdSeparateBR"><br clear="none"><br clear="none"></div><div class="yiv3837517886yqt7020599489" id="yiv3837517886yqtfd97887"><br clear="none"><br clear="none">Cheers,<br clear="none">  Jack<br clear="none">_______________________________________________<br clear="none">botan-devel mailing list<br clear="none"><a rel="nofollow" shape="rect" id="yiv3837517886yui_3_16_0_1_1428288485453_26834" ymailto="mailto:botan-devel@randombit.net" target="_blank" href="mailto:botan-devel@randombit.net">botan-devel@randombit.net</a><br clear="none"><a rel="nofollow" shape="rect" id="yiv3837517886yui_3_16_0_1_1428288485453_27040" target="_blank" href="http://lists.randombit.net/mailman/listinfo/botan-devel">http://lists.randombit.net/mailman/listinfo/botan-devel</a></div><br clear="none"><br clear="none"></div> </div> </div></div>  </div></div></div><br><br></div> </div> </div>  </div></body></html>