From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 192CEBC57 for ; Wed, 21 Jul 2010 23:23:04 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Au8CAIoCR0xDww+1k2dsb2JhbACDII9ng0+JNQEBAQEJCQoJEQMfsTo7ghCGGokCAQQEAYQ6cwSEAA X-IronPort-AV: E=Sophos;i="4.55,240,1278280800"; d="scan'208";a="54589410" Received: from web111509.mail.gq1.yahoo.com ([67.195.15.181]) by mail3-smtp-sop.national.inria.fr with SMTP; 21 Jul 2010 23:23:00 +0200 Received: (qmail 81434 invoked by uid 60001); 21 Jul 2010 21:22:59 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1279747379; bh=QlCRN1WY2+S6A96hcb5IlStANvjQXswbs/SNKAiH3j8=; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type; b=m8ClGIzAGRZNmak3LY1ZBMaGIdZd6d1+hb8rzEL0P7142gJv2L9bKODjI5myqnwhPtn6/oPFupdtPuYxTU/QhJXjBHGiffJdsNnLvYj+Ji+bbuf2cjfz3KMAAyDEhCZ8ICG2Ee5cVAJ74PCBeQ+Etd0elVaIRyBwlCe4TvfnI/Q= DomainKey-Signature:a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type; b=vcAstVQvYc9Sgn4yMuiIciZ+3o9ychTBWQZ/nLuqrgAXha7ORWB2Dmh4Ffq7pkqSRQwECmfdhTBj7LssJLU8kJm2L4wYiegGEoQy92SqEAtvmnlgIaw6p30DCWt8NGBxpqQUylpqC8yz6u9JIubT9JzuJDBTcGI49WRJx2S11dY=; Message-ID: <317672.81389.qm@web111509.mail.gq1.yahoo.com> X-YMail-OSG: PdCNDZQVM1l9uofVwgjJEe0cLt5ytUtf87M11DfHxSl0I4V uyWQbsCm14r5Um_RcvaiJRnBV5NWiKoolwRTaOIimBO6TWRcFU6rIfD5zENI AMzjB6NjjnZ1oza.pnlK..iYcT8TO51B6gG_EgL7Jz1UzFA8HL6oAdFO6nB4 IhDDPiBMZrEfnRxGL.vNl_oBZSnFj6VcaWcTf.bT4Olose_UZSjZPkvitLp2 IUiTkUvgy0BHgNrrzxN9BJaxncXuWH1XnRdkwBUP4xtIu94ZoQz4_vofKGL_ xhITw3YmEEhEBTHFzfejojd6XwUuq5cnT677nPaq6__PSvBNTkmADVwveOYz AqTEDwpT1bzDIm4HH7qySm6nOuBdVQM_LtX7eP1AB Received: from [213.205.71.61] by web111509.mail.gq1.yahoo.com via HTTP; Wed, 21 Jul 2010 14:22:58 PDT X-Mailer: YahooMailClassic/11.2.4 YahooMailWebService/0.8.105.277674 Date: Wed, 21 Jul 2010 14:22:58 -0700 (PDT) From: Dario Teixeira Subject: Re: [Caml-list] Re: Cryptokit and HMAC-SHA256 To: caml-list@inria.fr, Sylvain Le Gall MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="0-995154120-1279747378=:81389" X-Spam: no; 0.00; cheers:01 4231:98 cryptokit:01 cryptokit:01 caml-list:01 latter:03 patches:03 patches:03 rfc:05 rfc:05 xavier:06 extend:07 cases:08 completeness:91 patch:08 X-Attachments: cset="utf-8" type="text/x-diff" name="cryptokit.mli.patch" name="cryptokit.mli.patch" type="text/x-diff" name="cryptokit.ml.patch" name="cryptokit.ml.patch" --0-995154120-1279747378=:81389 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi,=0A=0A> If you decide to code the solution and provide the patch, I will= be=0A> happy to apply it to cryptokit (if the main author of cryptokit acc= epts=0A> it, of course).=0A=0AI'm attaching the patches adding support for = HMAC-SHA256 and HMAC-RIPEMD160=0A(I don't need the latter, but for the sake= of completeness it seemed silly=0Anot to support it as well). Note that t= hese are *very* straightforward=0Apatches -- kudos to Xavier for making Cry= ptokit so easy to extend.=0A=0AThe caveat is that I'm not a cryptographer. = I did, however, verify that=0Athese new HMACs pass all the test cases list= ed in RFC4231 (for HMAC-SHA256)=0Aand RFC2286 (for HMAC-RIPEMD160).=0A=0ATh= anks for your attention!=0ACheers,=0ADario Teixeira=0A=0A=0A --0-995154120-1279747378=:81389 Content-Type: text/x-diff; name="cryptokit.mli.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="cryptokit.mli.patch" LS0tIGNyeXB0b2tpdC5tbGkub2xkCTIwMTAtMDctMjEgMjI6MTA6MzcuMDAw MDAwMDAwICswMTAwCisrKyBjcnlwdG9raXQubWxpCTIwMTAtMDctMjEgMjI6 MTM6MDkuMDAwMDAwMDAwICswMTAwCkBAIC00ODMsNiArNDgzLDE2IEBACiAg ICAgICAgIGFwcGxpZWQgdG8gU0hBLTEuICBUaGUgcmV0dXJuZWQgaGFzaCB2 YWx1ZXMgYXJlIDE2MCBiaXRzICgyMCBieXRlcykKICAgICAgICAgbG9uZy4g IFRoZSBba2V5XSBhcmd1bWVudCBpcyB0aGUgTUFDIGtleTsgaXQgY2FuIGhh dmUgYW55IGxlbmd0aCwKICAgICAgICAgYnV0IGEgbWluaW1hbCBsZW5ndGgg b2YgMjAgYnl0ZXMgaXMgcmVjb21tZW5kZWQuICopCisgIHZhbCBobWFjX3No YTI1Njogc3RyaW5nIC0+IGhhc2gKKyAgICAoKiogW2htYWNfc2hhMjU2IGtl eV0gcmV0dXJucyBhIE1BQyBiYXNlZCBvbiB0aGUgSE1BQyBjb25zdHJ1Y3Rp b24gKFJGQzIxMDQpCisgICAgICAgIGFwcGxpZWQgdG8gU0hBLTI1Ni4gIFRo ZSByZXR1cm5lZCBoYXNoIHZhbHVlcyBhcmUgMjU2IGJpdHMgKDMyIGJ5dGVz KQorICAgICAgICBsb25nLiAgVGhlIFtrZXldIGFyZ3VtZW50IGlzIHRoZSBN QUMga2V5OyBpdCBjYW4gaGF2ZSBhbnkgbGVuZ3RoLAorICAgICAgICBidXQg YSBtaW5pbWFsIGxlbmd0aCBvZiAzMiBieXRlcyBpcyByZWNvbW1lbmRlZC4g KikKKyAgdmFsIGhtYWNfcmlwZW1kMTYwOiBzdHJpbmcgLT4gaGFzaAorICAg ICgqKiBbaG1hY19yaXBlbWQxNjAga2V5XSByZXR1cm5zIGEgTUFDIGJhc2Vk IG9uIHRoZSBITUFDIGNvbnN0cnVjdGlvbiAoUkZDMjEwNCkKKyAgICAgICAg YXBwbGllZCB0byBSSVBFTUQtMTYwLiAgVGhlIHJldHVybmVkIGhhc2ggdmFs dWVzIGFyZSAxNjAgYml0cyAoMjAgYnl0ZXMpCisgICAgICAgIGxvbmcuICBU aGUgW2tleV0gYXJndW1lbnQgaXMgdGhlIE1BQyBrZXk7IGl0IGNhbiBoYXZl IGFueSBsZW5ndGgsCisgICAgICAgIGJ1dCBhIG1pbmltYWwgbGVuZ3RoIG9m IDIwIGJ5dGVzIGlzIHJlY29tbWVuZGVkLiAqKQogICB2YWwgaG1hY19tZDU6 IHN0cmluZyAtPiBoYXNoCiAgICAgKCoqIFtobWFjX21kNSBrZXldIHJldHVy bnMgYSBNQUMgYmFzZWQgb24gdGhlIEhNQUMgY29uc3RydWN0aW9uIChSRkMy MTA0KQogICAgICAgICBhcHBsaWVkIHRvIE1ENS4gIFRoZSByZXR1cm5lZCBo YXNoIHZhbHVlcyBhcmUgMTI4IGJpdHMgKDE2IGJ5dGVzKQo= --0-995154120-1279747378=:81389 Content-Type: text/x-diff; name="cryptokit.ml.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="cryptokit.ml.patch" LS0tIGNyeXB0b2tpdC5tbC5vbGQJMjAxMC0wNy0yMSAxOTozMzoyNC4wMDAw MDAwMDAgKzAxMDAKKysrIGNyeXB0b2tpdC5tbAkyMDEwLTA3LTIxIDIyOjAz OjQ4LjAwMDAwMDAwMCArMDEwMApAQCAtOTQ3LDkgKzk0NywxMyBAQAogbW9k dWxlIE1BQyA9IHN0cnVjdAogCiBtb2R1bGUgSE1BQ19TSEExID0gSE1BQyhz dHJ1Y3QgY2xhc3MgaCA9IEhhc2guc2hhMSAgbGV0IGJsb2Nrc2l6ZSA9IDY0 IGVuZCkKK21vZHVsZSBITUFDX1NIQTI1NiA9IEhNQUMoc3RydWN0IGNsYXNz IGggPSBIYXNoLnNoYTI1NiAgbGV0IGJsb2Nrc2l6ZSA9IDY0IGVuZCkKK21v ZHVsZSBITUFDX1JJUEVNRDE2MCA9IEhNQUMoc3RydWN0IGNsYXNzIGggPSBI YXNoLnJpcGVtZDE2MCAgbGV0IGJsb2Nrc2l6ZSA9IDY0IGVuZCkKIG1vZHVs ZSBITUFDX01ENSAgPSBITUFDKHN0cnVjdCBjbGFzcyBoID0gSGFzaC5tZDUg IGxldCBibG9ja3NpemUgPSA2NCBlbmQpCiAKIGxldCBobWFjX3NoYTEga2V5 ID0gbmV3IEhNQUNfU0hBMS5obWFjIGtleQorbGV0IGhtYWNfc2hhMjU2IGtl eSA9IG5ldyBITUFDX1NIQTI1Ni5obWFjIGtleQorbGV0IGhtYWNfcmlwZW1k MTYwIGtleSA9IG5ldyBITUFDX1JJUEVNRDE2MC5obWFjIGtleQogbGV0IGht YWNfbWQ1IGtleSA9IG5ldyBITUFDX01ENS5obWFjIGtleQogCiBsZXQgYWVz ID9pdiA/cGFkIGtleSA9Cg== --0-995154120-1279747378=:81389--