<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Allicient &#187; Sgàil</title>
	<atom:link href="http://www.allicient.co.uk/tag/sgail/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.allicient.co.uk</link>
	<description>Peter Maxwell's Information Security Site</description>
	<lastBuildDate>Wed, 16 Jun 2010 13:13:56 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Sgàil Revisions &amp; Corrections</title>
		<link>http://www.allicient.co.uk/2009/01/21/sgail-revisions-corrections/</link>
		<comments>http://www.allicient.co.uk/2009/01/21/sgail-revisions-corrections/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 00:59:55 +0000</pubDate>
		<dc:creator>peter</dc:creator>
				<category><![CDATA[Cryptography]]></category>
		<category><![CDATA[AHS]]></category>
		<category><![CDATA[cryptology]]></category>
		<category><![CDATA[hash algorithm]]></category>
		<category><![CDATA[hash competition]]></category>
		<category><![CDATA[NIST]]></category>
		<category><![CDATA[secure hash algorithm]]></category>
		<category><![CDATA[Sgàil]]></category>
		<category><![CDATA[SHA-3]]></category>
		<category><![CDATA[SHA-3 Zoo]]></category>

		<guid isPermaLink="false">http://www.allicient.co.uk/?p=104</guid>
		<description><![CDATA[Well, its finally been done &#8211; Sgàil has been updated to fix the error described in this post which allowed second pre-image and collision attacks.  An error in the reference implementation has been remedied, and a number of typographical corrections have been made to the specification.  The known answer tests and intermediate value [...]]]></description>
			<content:encoded><![CDATA[<p>Well, its finally been done &#8211; Sgàil has been updated to fix the error described in <a href="http://www.allicient.co.uk/2008/11/05/aww-psh/">this post</a> which allowed second pre-image and collision attacks.  An error in the reference implementation has been remedied, and a number of typographical corrections have been made to the specification.  The known answer tests and intermediate value results have also been regenerated.</p>
<p>Although version 0.4 is considered to be immune to the previous design error and was submitted to NIST, it has not yet been approved/rejected as an official change.  Updates will be posted as they happen.</p>
<p>Changelogs have been included in the Supporting_Documentation directory.</p>
<p>The performance of the reference implementation has dropped from 62 cycles/byte to 71 cycles/byte in asymptopic behaviour due to the corrections made to the key schedule.  It is expected that an optimised version can improve this to at least 40 cycles/byte; I&#8217;m looking at coding this in the near future.</p>
<p>UPDATED 11th December 2009: I really should have updated this about six months ago; the corrections were not accepted by NIST and Sgàil did <strong>not</strong> progress to Round 2.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allicient.co.uk/2009/01/21/sgail-revisions-corrections/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Aww, p*sh! [Sgàil: trivial collision in original submission]</title>
		<link>http://www.allicient.co.uk/2008/11/05/aww-psh/</link>
		<comments>http://www.allicient.co.uk/2008/11/05/aww-psh/#comments</comments>
		<pubDate>Wed, 05 Nov 2008 17:45:16 +0000</pubDate>
		<dc:creator>peter</dc:creator>
				<category><![CDATA[Cryptography]]></category>
		<category><![CDATA[AHS]]></category>
		<category><![CDATA[collision]]></category>
		<category><![CDATA[cryptology]]></category>
		<category><![CDATA[hash algorithm]]></category>
		<category><![CDATA[hash competition]]></category>
		<category><![CDATA[NIST]]></category>
		<category><![CDATA[second pre-image]]></category>
		<category><![CDATA[secure hash algorithm]]></category>
		<category><![CDATA[Sgàil]]></category>
		<category><![CDATA[SHA-3]]></category>
		<category><![CDATA[SHA-3 Zoo]]></category>

		<guid isPermaLink="false">http://www.allicient.co.uk/?p=73</guid>
		<description><![CDATA[Sgàil, my submission to NIST&#8217;s SHA-3 competition, unfortunately has an error in it which makes finding a collision or second pre-image trivial.  The error crept in when I&#8217;d decided to change the key schedule late on from being a tree structure to a simple double block processing.
The measure which had originally protected the tree structure [...]]]></description>
			<content:encoded><![CDATA[<p>Sgàil, my submission to NIST&#8217;s SHA-3 competition, unfortunately has an error in it which makes finding a collision or second pre-image trivial.  The error crept in when I&#8217;d decided to change the key schedule late on from being a tree structure to a simple double block processing.</p>
<p>The measure which had originally protected the tree structure from block interchanges &#8211; the preliminary key &#8211; was unique for each 2048-bit block.  Unfortunately when redesigning the algorithm, I&#8217;d neglected to process a preliminary key for each 2048-bit block and instead processed a single preliminary key for each 4096-bit block.  The process where the 4096-bit block is reduced to the 2048-bit principle key uses the same preliminary key for both 2048-bit halves of the 4096-bit block, where they should have been different.  Hence the 2048-bit input pair is interchangable.</p>
<p>The resolution is to process a preliminary key for each 2048-bit input block and update the block counter at each 2048-bit input block rather than at each 4096-bit block.  The performance wouldn&#8217;t be significantly altered.  However since the submission deadline has now lapsed, I doubt any modifications will be accepted.</p>
<p>The following code generates a collision:</p>
<p>&#8212;&#8212;-</p>
<p>int main() {</p>
<p>u8 data__a[ SGAIL__INPUT_BLOCK__SIZE * 2 ];<br />
u8 data__b[ SGAIL__INPUT_BLOCK__SIZE * 2 ];<br />
u8 result__a[ 64 ];<br />
u8 result__b[ 64 ];</p>
<p>memset( data__a, 0, SGAIL__INPUT_BLOCK__SIZE * 2  );<br />
memset( data__b, 0, SGAIL__INPUT_BLOCK__SIZE * 2  );</p>
<p>data__a[ 0 ] = 1;<br />
data__a[ 256 ] = 2;</p>
<p>data__b[ 0 ] = 2;<br />
data__b[ 256 ] = 1;</p>
<p>Hash( 512, data__a, ( SGAIL__INPUT_BLOCK__SIZE * 2 ) * 8, result__a );<br />
Hash( 512, data__b, ( SGAIL__INPUT_BLOCK__SIZE * 2 ) * 8, result__b );</p>
<p>do__display_512_bit_hash__byte_wise( result__a );<br />
do__display_512_bit_hash__byte_wise( result__b );</p>
<p>}<br />
&#8212;&#8212;&#8211;</p>
<p>I will post a revision of Sgàil in the next few days with the error fixed, although I don&#8217;t know of its applicability as concerns the SHA-3 competition.</p>
<p>UPDATED 21st November 2008: Ok, maybe a bit more than a few days, keep getting side-tracked.  Will upload new revision once have fixed the specification document.</p>
<p>UPDATED 21st January 2009: Version 0.4 has been released <a href="http://www.allicient.co.uk/2009/01/21/sgail-revisions-corrections/">here</a> which corrects this error&#8230;. enjoy <img src='http://www.allicient.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>UPDATED 12th April 2010: Added [] extra meaning in title.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allicient.co.uk/2008/11/05/aww-psh/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>First Blood in SHA-3 Competition. [&#039;WaMM&#039; submission has collision]</title>
		<link>http://www.allicient.co.uk/2008/11/05/first-blood-in-sha-3-competition/</link>
		<comments>http://www.allicient.co.uk/2008/11/05/first-blood-in-sha-3-competition/#comments</comments>
		<pubDate>Wed, 05 Nov 2008 02:07:33 +0000</pubDate>
		<dc:creator>peter</dc:creator>
				<category><![CDATA[Cryptography]]></category>
		<category><![CDATA[abacus]]></category>
		<category><![CDATA[ARIRANG]]></category>
		<category><![CDATA[AURORA]]></category>
		<category><![CDATA[BLAKE]]></category>
		<category><![CDATA[Blender]]></category>
		<category><![CDATA[Blue Midnight Wish]]></category>
		<category><![CDATA[Boole]]></category>
		<category><![CDATA[Cheetah]]></category>
		<category><![CDATA[CHI]]></category>
		<category><![CDATA[CRUNCH]]></category>
		<category><![CDATA[cryptographic hash]]></category>
		<category><![CDATA[CubeHash]]></category>
		<category><![CDATA[DCH]]></category>
		<category><![CDATA[Dynamic SHA]]></category>
		<category><![CDATA[Dynamic SHA2]]></category>
		<category><![CDATA[ECHO]]></category>
		<category><![CDATA[ECOH]]></category>
		<category><![CDATA[Edon-R]]></category>
		<category><![CDATA[EnRUPT]]></category>
		<category><![CDATA[ESSENCE]]></category>
		<category><![CDATA[FSB]]></category>
		<category><![CDATA[Fugue]]></category>
		<category><![CDATA[Grøstl]]></category>
		<category><![CDATA[Hamsi]]></category>
		<category><![CDATA[hash]]></category>
		<category><![CDATA[HASH 2X]]></category>
		<category><![CDATA[JH]]></category>
		<category><![CDATA[Keccak]]></category>
		<category><![CDATA[Khichidi-1]]></category>
		<category><![CDATA[LANE]]></category>
		<category><![CDATA[Lesamnta]]></category>
		<category><![CDATA[London]]></category>
		<category><![CDATA[Luffa]]></category>
		<category><![CDATA[LUX]]></category>
		<category><![CDATA[Maraca]]></category>
		<category><![CDATA[MCSSHA-3]]></category>
		<category><![CDATA[MD6]]></category>
		<category><![CDATA[MeshHash]]></category>
		<category><![CDATA[Mifare]]></category>
		<category><![CDATA[NaSHA]]></category>
		<category><![CDATA[NIST]]></category>
		<category><![CDATA[NKS2D]]></category>
		<category><![CDATA[Oyster card]]></category>
		<category><![CDATA[Ponic]]></category>
		<category><![CDATA[SANDstorm]]></category>
		<category><![CDATA[Sarmal]]></category>
		<category><![CDATA[Sgàil]]></category>
		<category><![CDATA[SHA-3]]></category>
		<category><![CDATA[SHA-3 Zoo]]></category>
		<category><![CDATA[SHAMATA]]></category>
		<category><![CDATA[SHAvite-3]]></category>
		<category><![CDATA[SIMD]]></category>
		<category><![CDATA[Skein]]></category>
		<category><![CDATA[Spectral Hash]]></category>
		<category><![CDATA[StreamHash]]></category>
		<category><![CDATA[SWIFFTX]]></category>
		<category><![CDATA[Tangle]]></category>
		<category><![CDATA[TIB3]]></category>
		<category><![CDATA[Twister]]></category>
		<category><![CDATA[Vortex]]></category>
		<category><![CDATA[WaMM]]></category>
		<category><![CDATA[Waterfall]]></category>

		<guid isPermaLink="false">http://www.allicient.co.uk/?p=69</guid>
		<description><![CDATA[NIST hasn&#8217;t even published the complete and proper candidates, but there&#8217;s already a full break (second pre-image) of one of the candidate hash algorithms in the SHA-3 competition, pretty exciting, huh?  The &#8220;WaMM&#8221; hash algorithm is the first to fall, see here for more info.  There&#8217;s also been an attack on another of the submissions, [...]]]></description>
			<content:encoded><![CDATA[<p>NIST hasn&#8217;t even published the complete and proper candidates, but there&#8217;s already a full break (second pre-image) of one of the candidate hash algorithms in the SHA-3 competition, pretty exciting, huh?  The &#8220;WaMM&#8221; hash algorithm is the first to fall, see <a href="http://ehash.iaik.tugraz.at/wiki/WaMM">here</a> for more info.  There&#8217;s also been an attack on another of the submissions, <a href="http://ehash.iaik.tugraz.at/wiki/EnRUPT">EnRUPT</a>.  A list of some (I say some, there&#8217;s quite a lot on the list) of the candidates can be found at <a href="http://ehash.iaik.tugraz.at/wiki/The_SHA-3_Zoo">the SHA-3 zoo</a>.</p>
<p>In this type of process, such a complete break so early on is certainly a good indicator that the process is working as intended &#8211; and getting good involvement.  It also serves as a stark warning to those who would use a home-grown crypto scheme in a commercial product without full peer-review of their algorithm, the consequences of which are no less apparent than the failure of the ubiqutous <a href="http://www.schneier.com/blog/archives/2008/08/hacking_mifare.html">Mifare classic</a>, used for example in the Oyster card in London.</p>
<p>UPDATED 12th April 2010: Added [] extra meaning in title.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allicient.co.uk/2008/11/05/first-blood-in-sha-3-competition/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NIST SHA-3 Submission &#8211; Sgàil</title>
		<link>http://www.allicient.co.uk/2008/10/31/nist-sha-3-submission-sgail/</link>
		<comments>http://www.allicient.co.uk/2008/10/31/nist-sha-3-submission-sgail/#comments</comments>
		<pubDate>Fri, 31 Oct 2008 04:57:34 +0000</pubDate>
		<dc:creator>peter</dc:creator>
				<category><![CDATA[Cryptography]]></category>
		<category><![CDATA[advanced hash standard]]></category>
		<category><![CDATA[cryptographic hash]]></category>
		<category><![CDATA[hash]]></category>
		<category><![CDATA[hash competition]]></category>
		<category><![CDATA[NIST]]></category>
		<category><![CDATA[secure hash algorithm]]></category>
		<category><![CDATA[Sgàil]]></category>
		<category><![CDATA[SHA-3]]></category>

		<guid isPermaLink="false">http://www.allicient.co.uk/?p=65</guid>
		<description><![CDATA[For those who haven&#8217;t been following the hype, NIST advertised back in 2007 for submission candidates for a new cryptographic hash algorithm, much in the same vein that the Advanced Encryption Standard process was conducted (the website can be found here).  The deadline for submissions is tomorrow, so I thought now would be a [...]]]></description>
			<content:encoded><![CDATA[<p>For those who haven&#8217;t been following the hype, NIST advertised back in 2007 for submission candidates for a new cryptographic hash algorithm, much in the same vein that the Advanced Encryption Standard process was conducted (the website can be found <a href="http://csrc.nist.gov/groups/ST/hash/sha-3/index.html">here</a>).  The deadline for submissions is tomorrow, so I thought now would be a good time to upload a copy of my own submission, Sgàil.</p>
<p><span style="text-decoration: line-through;">A copy of the submission files can be found in the articles and papers section of this website &#8211; or even quicker the specification is here.</span></p>
<p>A copy of the original submission and revised files can be found <a href="http://www.allicient.co.uk/sgail/">here</a>.</p>
<p>As with all submissions to the SHA-3 process, its totally royalty free and all that jazz &#8211; basically you can do what you like with it.  If anyone ever fancies implementing it in real software, I would love to hear about it.  Also, if anyone has comments or analysis on the actual algorithm, I may not want to hear them, but they are none-the-less very welcome <img src='http://www.allicient.co.uk/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>UPDATED 22nd January 2009: The new version, 0.4, of Sgàil is available which corrects a serious error, check the <a href="http://www.allicient.co.uk/sgail/">Sgàil page</a> for more details.</p>
<p>UPDATED 13th April 2010: Updated links to submission packages.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allicient.co.uk/2008/10/31/nist-sha-3-submission-sgail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
