<?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>Kryptoblog &#187; Inbyggda system</title>
	<atom:link href="http://www.strombergson.com/kryptoblog/tag/inbyggda-system/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.strombergson.com/kryptoblog</link>
	<description>Kryptografi och IT-säkerhet på svenska</description>
	<lastBuildDate>Thu, 20 Jan 2011 21:25:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/>		<item>
		<title>Motorola och Ericsson samarbetar om säkra LTE-nät</title>
		<link>http://www.strombergson.com/kryptoblog/2010/09/08/motorola-och-ericsson-samarbetar-om-sakra-lte-nat/</link>
		<comments>http://www.strombergson.com/kryptoblog/2010/09/08/motorola-och-ericsson-samarbetar-om-sakra-lte-nat/#comments</comments>
		<pubDate>Wed, 08 Sep 2010 18:12:54 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Företag och affärer]]></category>
		<category><![CDATA[Hårdvara]]></category>
		<category><![CDATA[Inbyggda system]]></category>
		<category><![CDATA[Verktyg]]></category>
		<category><![CDATA[Ericsson]]></category>
		<category><![CDATA[LTE]]></category>
		<category><![CDATA[Motorola]]></category>
		<category><![CDATA[Samsung]]></category>
		<category><![CDATA[TETRA]]></category>
		<category><![CDATA[Thales]]></category>

		<guid isPermaLink="false">http://www.strombergson.com/kryptoblog/?p=1400</guid>
		<description><![CDATA[<p><em>(Mycket <span class="caps">LTE</span>-nyheter just nu.)</em><br />
<a href="http://etn.se/">Elektroniktidningen (ETN)</a> rapporterar att <a href="http://www.etn.se/index.php?option=com_content&#38;view=article&#38;id=51970">Motorola och Ericsson skall samarbeta om att utveckla s&#228;kra <span class="caps">LTE</span>-n&#228;t</a>, motsvarande <a href="http://en.wikipedia.org/wiki/Terrestrial_Trunked_Radio"><span class="caps">TETRA</span>-n&#228;t</a> f&#246;r bl&#229;ljusmyndigheter. <span class="caps">ETN</span> skriver:  <blockquote>Ericsson och Motorola har ing&#229;tt en allians f&#246;r att</blockquote>&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p><em>(Mycket <span class="caps">LTE</span>-nyheter just nu.)</em><br />
<a href="http://etn.se/">Elektroniktidningen (ETN)</a> rapporterar att <a href="http://www.etn.se/index.php?option=com_content&#38;view=article&#38;id=51970">Motorola och Ericsson skall samarbeta om att utveckla s&#228;kra <span class="caps">LTE</span>-n&#228;t</a>, motsvarande <a href="http://en.wikipedia.org/wiki/Terrestrial_Trunked_Radio"><span class="caps">TETRA</span>-n&#228;t</a> f&#246;r bl&#229;ljusmyndigheter. <span class="caps">ETN</span> skriver:  <blockquote>Ericsson och Motorola har ing&#229;tt en allians f&#246;r att gemensamt ta fram <span class="caps">LTE</span>-l&#246;sningar f&#246;r omr&#229;det &#8221;allm&#228;n s&#228;kerhet&#8221;, det omr&#229;de som idag domineras av standarden Tetra och d&#228;r Motorola &#228;r en av de starkaste akt&#246;rerna. Tanken &#228;r att kombinera Motorolas kompetens inom s&#228;kra n&#228;t med Ericssons f&#246;rm&#229;gor inom <span class="caps">LTE</span> och mobilt bredband.<br />
<br />
</p>

	<p>Ett m&#229;l med alliansen &#228;r att utveckla en <span class="caps">LTE</span>-l&#246;sning f&#246;r mobilt bredband till s&#228;kerhetskritiska till&#228;mpningar, som kan fungera tillsammans med s&#228;ker r&#246;st- och datakommunikation. Enligt en gemensam pressrelease ska Motorolas n&#228;sta generations plattform f&#246;r omr&#229;det inneh&#229;lla <span class="caps">LTE</span>-teknik, klara behoven fr&#229;n s&#229;v&#228;l kommandocentraler, och kunna kommunicera med s&#229;v&#228;l t&#229;lig radioutrustning och terminaler i fordon som handh&#229;llna <span class="caps">LTE</span>-terminaler.</blockquote></p>

	<p><a href="http://www.etn.se/index.php?option=com_content&#38;view=article&#38;id=51958">Som <span class="caps">ETN</span> p&#229;pekar</a> meddelande &#228;ven Samsung att dom skall samarbeta med s&#228;kerhetsj&#228;tten <a href="http://www.thalesgroup.com/">Thales</a> om att utveckla <span class="caps">TETRA</span>-mobiler som st&#246;djer <span class="caps">LTE</span>. I det fallet &#228;r det <a href="http://www.thalesgroup.com/Portfolio/Defence/LandJoint_Products_TetraPMR_Digimax_Digicompact/?pid=1499">Thales som st&#229;r f&#246;r <span class="caps">TETRA</span>-kompetensen</a> och Samsung f&#246;r <span class="caps">LTE</span>-kompetensen (och att bygga mobiler f&#229;r man anta).</p>
 <div class="shr-publisher-1400"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2010/09/08/motorola-och-ericsson-samarbetar-om-sakra-lte-nat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RFID och integritet &#8211; Olja och vatten</title>
		<link>http://www.strombergson.com/kryptoblog/2010/09/04/rfid-och-integritet-olja-och-vatten/</link>
		<comments>http://www.strombergson.com/kryptoblog/2010/09/04/rfid-och-integritet-olja-och-vatten/#comments</comments>
		<pubDate>Sat, 04 Sep 2010 08:23:18 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Biometri]]></category>
		<category><![CDATA[Hårdvara]]></category>
		<category><![CDATA[IT och integritet]]></category>
		<category><![CDATA[Inbyggda system]]></category>
		<category><![CDATA[Politik]]></category>
		<category><![CDATA[RFID]]></category>
		<category><![CDATA[övervakning]]></category>
		<category><![CDATA[integritet]]></category>

		<guid isPermaLink="false">http://www.strombergson.com/kryptoblog/?p=1361</guid>
		<description><![CDATA[<p>Ig&#229;r d&#246;k det upp ett par nyheter som &#229;terigen visar hur attraktivt <a href="http://en.wikipedia.org/wiki/Radio-frequency_identification">radiobaserad identifiering (RFID)</a> verkar vara, och hur blind man &#228;r f&#246;r de problem som finns med tekniken. Detta g&#228;ller inte minst politiker och tj&#228;nstem&#228;n som ofta&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p>Ig&#229;r d&#246;k det upp ett par nyheter som &#229;terigen visar hur attraktivt <a href="http://en.wikipedia.org/wiki/Radio-frequency_identification">radiobaserad identifiering (RFID)</a> verkar vara, och hur blind man &#228;r f&#246;r de problem som finns med tekniken. Detta g&#228;ller inte minst politiker och tj&#228;nstem&#228;n som ofta har lite teknisk kunskap.</p>

	<p>Organisationen <a href="http://en.wikipedia.org/wiki/American_Civil_Liberties_Union">American Civil Liberties Union (ACLU)</a> <a href="http://www.aclu.org/blog/technology-and-liberty/dont-let-schools-chip-your-kids">kritiserar i ett uttalande en skola i Kalifornien som f&#246;rs&#246;kt s&#228;tta <span class="caps">RFID</span>-taggar p&#229; alla elever i en skola</a>. <span class="caps">ACLU</span> uppmanar f&#246;r&#228;ldrar att v&#228;gra s&#228;tta p&#229; sina barn <span class="caps">RFID</span>-taggar som skolor delar ut.</p>

	<p><a href="http://www.mercurynews.com/news/ci_15815706?nclick_check=1">Enligt en artikel i San Jos&#233; Mercury News</a> &#228;r det en skola i <a href="http://www.co.contra-costa.ca.us/">Contra Costa County</a> som vid terminstarten delat ut tr&#246;jor till alla elever. Tr&#246;jorna visade sig dock inneh&#229;lla <span class="caps">RFID</span>-taggar.  Det som skr&#228;mmer mig mest med denna nyhet &#228;r hur taggarna ses som en ren effektivitetsl&#246;sning. Mercury News skriver: <blockquote><br />
RICHMOND, Calif.&#8212;California officials are outfitting preschoolers in Contra Costa County with tracking devices they say will save staff time and money.<br />
<br />
</p>

	<p>The system was introduced Tuesday. When at the school, students will wear a jersey that has a small radio frequency tag. The tag will send signals to sensors that help track children&#8217;s whereabouts, attendance and even whether they&#8217;ve eaten or not.<br />
<br />
</p>

	<p>School officials say it will free up teachers and administrators who previously had to note on paper files when a child was absent or had eaten.<br />
<br />
</p>

	<p>Sung Kim of the county&#8217;s employment and human services department said the system could save thousands of hours of staff time and pay for itself within a year.<br />
<br />
</p>

	<p>It cost $50,000 and was paid by a federal grant.<br />
</blockquote></p>

	<p>Mao, det viktiga &#228;r att spara pengar, och det verkar inte finnas n&#229;gra tankar om problem med tekniken. Undrar varf&#246;r dom inte inf&#246;r det p&#229; alla st&#228;llen i kommunen, exempelvis f&#246;r skolpersonal och kommunens HR-avdelning&#8230;</p>

	<p>Och n&#228;r det v&#228;l uppdagas problem s&#229; blundar man ist&#228;llet. <a href="http://www.thelocal.de/">The Local</a> <a href="http://www.thelocal.de/sci-tech/20100824-29359.html">rapporterar om en unders&#246;kning av de nya <span class="caps">RFID</span>-utrustade ID-korten i Tyskland</a>.</p>

	<p><img src="http://www.thelocal.de/articleImages/29359.jpg" alt="Ett nytt, Tyskt ID-kort." /><br />
<em>Ett av de nya ID-korten i Tyskland som inneh&#229;ller ett <span class="caps">RFID</span>-chip.</em></p>

	<p>Dom nya ID-korten inneh&#229;ller ett <span class="caps">RFID</span>-chip som bland annat lagrar fingeravtryck fr&#229;n tv&#229; fingrar. Ett TV-program anlitade k&#228;nda hacker-gruppen <a href="http://www.ccc.de/?language=en">Chaos Communcation Club (CCC)</a> f&#246;r att testa s&#228;kerheten hos kortet. <span class="caps">CCC</span> lyckades extrahera information fr&#229;n korten. Men n&#228;r de ansvariga st&#228;lldes inf&#246;r faktum f&#246;rnekade man att det &#228;nd&#229; var m&#246;jligt: <blockquote><br />
In an interview with the show, Interior Minister Thomas de Maizi&#232;re said he saw no immediate reason to act on the alleged security issue.<br />
<br />
</p>

	<p>Meanwhile on Tuesday the Federal Office for Information Security (BSI) rejected the Plusminus&#8217; criticism of the new ID card. The agency&#8217;s personal identification expert Jens Bender said the card was secure</blockquote></p>

	<p>R&#228;tt skr&#228;mmande, inte minst f&#246;r att det nya systemet &#228;r t&#228;nkt att anv&#228;ndas f&#246;r kommunikation med myndigheter, dvs det kommer att kr&#228;vas ett <span class="caps">RFID</span>-utrustat kort f&#246;r att komma &#229;t tj&#228;nster som du som medborgare har behov av. Det blir d&#228;rmed sv&#229;rt att avst&#229; fr&#229;n systemet. Det skall g&#229; att ist&#228;llet anv&#228;nda en sexsiffrig <span class="caps">PIN</span>-kod, men fr&#229;gan &#228;r hur l&#228;nge det accepteras.</p>
 <div class="shr-publisher-1361"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2010/09/04/rfid-och-integritet-olja-och-vatten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ny TCP-sekvensgenerator för uIP</title>
		<link>http://www.strombergson.com/kryptoblog/2010/07/17/ny-tcp-sekvensgenerator-for-uip/</link>
		<comments>http://www.strombergson.com/kryptoblog/2010/07/17/ny-tcp-sekvensgenerator-for-uip/#comments</comments>
		<pubDate>Sat, 17 Jul 2010 14:35:36 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Forskning]]></category>
		<category><![CDATA[Inbyggda system]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Verktyg]]></category>
		<category><![CDATA[prng]]></category>
		<category><![CDATA[TCP]]></category>
		<category><![CDATA[uIP]]></category>

		<guid isPermaLink="false">http://www.strombergson.com/kryptoblog/?p=1339</guid>
		<description><![CDATA[<p>Tillsammans med <a href="http://www.sics.se/~adam/">Adam Dunkels</a> har jag b&#246;rjat titta lite f&#246;rsiktigt p&#229; att hitta en b&#228;ttre generator f&#246;r <span class="caps">TCP</span>-sekvensnummer till den miniskula <a href="http://www.sics.se/~adam/uip/index.php/Main_Page"><span class="caps">TCP</span>/IP-stacken uIP</a>.</p>

	<p><img src="http://www.sics.se/~adam/img/adam13.jpg" alt="Adam Dunkels" /><br />
<em>Adam Dunkels &#8211; pappa till uIP, bland annat.</em></p>

	<p>Den nuvarande generatorn ger&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p>Tillsammans med <a href="http://www.sics.se/~adam/">Adam Dunkels</a> har jag b&#246;rjat titta lite f&#246;rsiktigt p&#229; att hitta en b&#228;ttre generator f&#246;r <span class="caps">TCP</span>-sekvensnummer till den miniskula <a href="http://www.sics.se/~adam/uip/index.php/Main_Page"><span class="caps">TCP</span>/IP-stacken uIP</a>.</p>

	<p><img src="http://www.sics.se/~adam/img/adam13.jpg" alt="Adam Dunkels" /><br />
<em>Adam Dunkels &#8211; pappa till uIP, bland annat.</em></p>

	<p>Den nuvarande generatorn ger en monotont &#246;kande sekvens som &#228;r l&#228;tt att prediktera. En ny generator skall ge en bra slumpm&#228;ssig som inte &#228;r l&#228;tt (inte g&#229;r) att prediktera. MEn samtidigt f&#229;r storleken p&#229; stacken inte v&#228;xa speciellt mycket och skall g&#229; att implementera p&#229; en 8-bitars processor. Vidare f&#229;r vi inte inf&#246;r en massa nya krav p&#229; m&#229;lsystemet, exempelvis tillg&#229;ng till bra fysisk entropi. En icke-trivial kombination av krav.</p>

	<p>Jag har t&#228;nkt, kladdat och sedan postat p&#229; Cryptography-listan och f&#229;tt en del tips. Men jag (vi) tar med stor gl&#228;dje emot mer klokskap. H&#228;r kommer d&#228;rf&#246;r min postning till listan. L&#228;s, kommentera. <strong>Tack!</strong> <blockquote><br />
uIP [1] is a very compact <span class="caps">TCP</span>/IP stack for small, networked connected, embedded devices. (The code size for uIP including <span class="caps">TCP</span> and <span class="caps">ICMP</span> on the <span class="caps">AVR</span> processor is about 5 kBytes.)<br />
<br />
</p>

	<p>Unfortunately, the <span class="caps">TCP</span> sequence number generator in uIP is a bit simplistic &#8211; basically a monotonically increasing number. In order to reduce the opportunities for <span class="caps">TCP </span>Spoofing (like this nice one [2]) we are trying to implement a new <span class="caps">TCP</span> sequence number generator.<br />
<br />
</p>

	<p>What we want to find is an algorithm that generates a good (secure) <span class="caps">TCP</span> seq numbers, but use very little resources (on 8-bit computing devices).<br />
<br />
</p>

	<p>We have done some preliminary investigations, have some rough ideas and would really appreciate comments and suggestions from the enlightened minds on this list.<br />
<br />
</p>

	<p>As we see it, the two main problems to solve are:<br />
(1) Find a secure <span class="caps">PRNG</span> algorithm that have as low implementation complexity as possible.<br />
<br />
</p>

	<p>(2) Add as little system/application requirements on entropy source and persistent storage as possible.<br />
<br />
</p>

	<p>Looking at TinyRNG [3] for example, it seems that a block cipher in <span class="caps">CTR</span> mode (or <span class="caps">OFB</span> mode) should be sufficient. The question then is what block cipher to use? The <span class="caps">XTEA</span> block cipher [4] is very compact, but would it be a wise choice from a security perspective?<br />
<br />
</p>

	<p>But what to feed the <span class="caps">PRNG</span> with? Looking again at TinyRNG, it uses a simplistic version of the entropy accumulator from the Fortuna <span class="caps">PRNG </span>[5], but with fewer and smaller pools. The pools are processed using a <span class="caps">CBC</span>-MAC built around the same block cipher as used in the <span class="caps">PRNG</span>.<br />
<br />
</p>

	<p>The combined storage for the pools as well as <span class="caps">CBC</span>-MAC state would probably be acceptable for uIP. The question is if the pool feeding operation as such adds operational requirements on uIP that makes it harder to integrate?<br />
<br />
</p>

	<p>A simpler scheme could be to feed the <span class="caps">PRNG </span>(CTR-mode) with entropy used as part of Key and IV, that is not use a pool mechanism at all and leave it to user application to provide entropy words when performing a reseed. The Key (and IV?) would also consists of a counter that is monotonically increased.<br />
<br />
</p>

	<p>The problem with this (we guess) is that in order to ensure that <span class="caps">KEY</span>+IV is never reused is to keep at least part of <span class="caps">KEY</span> or IV as a counter that is stored in persistent memory and increased once (and stored) every time reseed (or boot) is performed. (How bad from a security perspective would this be? Compared to other <span class="caps">TCP</span> sequence generators?)<br />
<br />
</p>

	<p>The current version of uIP places few (basically no) demands on the system/application regarding physical resources (besides mem for code and data) and does not use any persistent storage besides code memory. It seems that any good sequence generator that are driven by physical entropy and tries to avoid sequence repetition need to place additional demands on the system. No?<br />
<br />
</p>

	<p>This is basically as far as we have taken this. More or less a bit of Googling, reading and attempts at thinking. The ambition is not to invent something new and unproven but to adapt existing tech and ideas that seem to work. But get it to work with the size, performance and <span class="caps">API</span> constraints of uIP.<br />
<br />
</p>

	<p>Any thoughts, comments, suggestions and pointers would be very greatly appreciated.<br />
<br />
</p>

	<p>Thank you!<br />
Joachim Str&#246;mbergson<br />
<br />
</p>


	<p>References<br />
&#8212;&#8212;&#8212;&#8212;&#8212;<br />
<br />
[1] A. Dunkels. uIP <span class="caps">TCP</span>/IP stack.<br />
</p>
 http://www.sics.se/~adam/uip/index.php/Main_Page<br />
<br />


	<p>[1] R. Lawshae. Picking Electronic Locks Using <span class="caps">TCP </span>Sequence Prediction<br />
http://www.defcon.org/images/defcon-17/dc-17-presentation/Ricky_Lawshae/defcon-17-ricky_lawshae-picking_electronic_locks-wp.pdf<br />
<br />
</p>

	<p>[3] A. Francillon, C. Castelluccia. TinyRNG: A Cryptographic Random<br />
</p>
    Number Generator for Wireless Sensors Network Nodes<br />
<br />
http://planete.inrialpes.fr/~ccastel/PAPERS/TinyRNG.pdf<br />
<br />


	<p>[4] R. M. Needham, D. J. Wheeler. Tea extensions.<br />
</p>
    http://www.cix.co.uk/~klockstone/xtea.pdf<br />
<br />


	<p>[5] Wikipedia. Fortuna <span class="caps">PRNG</span>.<br />
</p>
    http://en.wikipedia.org/wiki/Fortuna_%28PRNG%29<br />
</blockquote>
 <div class="shr-publisher-1339"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2010/07/17/ny-tcp-sekvensgenerator-for-uip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>En Duracellkanin? Nej, en Energizer-trojan</title>
		<link>http://www.strombergson.com/kryptoblog/2010/03/12/en-duracellkanin-nej-en-energizer-trojan/</link>
		<comments>http://www.strombergson.com/kryptoblog/2010/03/12/en-duracellkanin-nej-en-energizer-trojan/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 13:21:28 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Elak kod]]></category>
		<category><![CDATA[Hårdvara]]></category>
		<category><![CDATA[Inbyggda system]]></category>

		<guid isPermaLink="false">http://www.strombergson.com/kryptoblog/?p=1128</guid>
		<description><![CDATA[<p>Batterif&#246;retaget <a href="http://www.energizer.com/Pages/default.aspx">Energizer</a> sl&#228;ppte f&#246;r ett tag sedan en <span class="caps">USB</span>-kopplad batteriladdare kallad Energizer Duo.</p>

	<p><img src="http://www.imaging-resource.com/NPICS1/DUOCHARGER_1_S.JPG" alt="Energizer Duo" /></p>

	<p>F&#246;rutom att ladda via <span class="caps">USB</span> kunde produkten k&#246;ra en liten applikationen p&#229; datorn som visade laddstatus f&#228;&#246;r batterierna.</p>

	<p><img src="http://www.imaging-resource.com/NPICS1/DUOCHARGER_2_S.JPG" alt="Laptop med applikationen." /></p>

	<p>Men det var&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p>Batterif&#246;retaget <a href="http://www.energizer.com/Pages/default.aspx">Energizer</a> sl&#228;ppte f&#246;r ett tag sedan en <span class="caps">USB</span>-kopplad batteriladdare kallad Energizer Duo.</p>

	<p><img src="http://www.imaging-resource.com/NPICS1/DUOCHARGER_1_S.JPG" alt="Energizer Duo" /></p>

	<p>F&#246;rutom att ladda via <span class="caps">USB</span> kunde produkten k&#246;ra en liten applikationen p&#229; datorn som visade laddstatus f&#228;&#246;r batterierna.</p>

	<p><img src="http://www.imaging-resource.com/NPICS1/DUOCHARGER_2_S.JPG" alt="Laptop med applikationen." /></p>

	<p>Men det var nu inte det enda som k&#246;rdes n&#228;r laddaren kopplades in. Enligt Symantec kom batteriladdaren med en elak liten trojan. <a href="http://www.symantec.com/connect/blogs/trojan-found-usb-battery-charger-software">Symantec har en l&#228;ngre beskrivning av Energizertrojanen</a> som bla beskriver vad den kunde g&#246;ra:</p>

	<p><blockquote><br />
&#8226;    Download a file<br />
&#8226;    Execute a file<br />
&#8226;    Send a directory listing to the remote attacker<br />
&#8226;    Send files to the remote attacker<br />
&#8226;    Modify the following registry entry:<br />
</blockquote></p>

	<p>Energizer har dragit tillbaka produkten. Det jag undrar &#246;ver &#228;r hur trojanen hittade in i koden till laddaren fr&#229;n f&#246;rsta b&#246;rjan. Hade det varit ett <span class="caps">USB</span>-minne hade det varit en sak, men nu &#228;r det inte det och d&#229; brukar m&#228;ngden minne som finns vara h&#246;gst begr&#228;nsat. M&#228;rkligt.</p>
 <div class="shr-publisher-1128"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2010/03/12/en-duracellkanin-nej-en-energizer-trojan/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Svagheter i SHA-3-implementationer</title>
		<link>http://www.strombergson.com/kryptoblog/2009/02/22/svagheter-i-sha-3-implementationer/</link>
		<comments>http://www.strombergson.com/kryptoblog/2009/02/22/svagheter-i-sha-3-implementationer/#comments</comments>
		<pubDate>Sun, 22 Feb 2009 07:59:05 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Inbyggda system]]></category>
		<category><![CDATA[Krypto]]></category>
		<category><![CDATA[Verktyg]]></category>
		<category><![CDATA[sha-3]]></category>

		<guid isPermaLink="false">http://strombergson.com/kryptoblog/?p=628</guid>
		<description><![CDATA[<p><a href="http://www.fortify.com/">Fortify</a> har postat p&#229; sin blogg om en unders&#246;kning av <a href="http://blog.fortify.com/blog/fortify/2009/02/20/SHA-3-Round-1" class="broken_link">s&#228;kerheten i referensimplementationerna av <span class="caps">SHA</span>-3-kandidaterna</a>.</p>

	<p>Fortify har anv&#228;nt sitt verktyg <a href="http://www.fortify.com/products/detect/in_development.jsp" class="broken_link">Fortify <span class="caps">SCA</span></a>, en <a href="http://en.wikipedia.org/wiki/Static_code_analysis">linter</a> speciellt utvecklad f&#246;r att hitta kodm&#228;ssiga svagheter som&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p><a href="http://www.fortify.com/">Fortify</a> har postat p&#229; sin blogg om en unders&#246;kning av <a href="http://blog.fortify.com/blog/fortify/2009/02/20/SHA-3-Round-1" class="broken_link">s&#228;kerheten i referensimplementationerna av <span class="caps">SHA</span>-3-kandidaterna</a>.</p>

	<p>Fortify har anv&#228;nt sitt verktyg <a href="http://www.fortify.com/products/detect/in_development.jsp" class="broken_link">Fortify <span class="caps">SCA</span></a>, en <a href="http://en.wikipedia.org/wiki/Static_code_analysis">linter</a> speciellt utvecklad f&#246;r att hitta kodm&#228;ssiga svagheter som buffert&#246;verskrivningar etc. (Det hade antagligen g&#229;tt bra att anv&#228;nda <a href="http://lclint.cs.virginia.edu/">splint</a> eller liknande s&#228;kerhetsinriktade lintverktyg f&#246;r att hitta svagheterna.)</p>

	<p>Vad Fortify uppt&#228;ckt &#228;r att ett antal av <span class="caps">SHA</span>-3-kandidaterna har mer eller mindre allvarliga svagheter i sin implementation, mer specifikt i Blender, Crunch, <span class="caps">FSB</span>, MD6, Vortex. N&#229;gra typiska fel &#228;r att koden till&#229;ter buffert&#246;verskrivningar, att den l&#228;ser utanf&#246;r gr&#228;nserna i en buffert (indexeringsfel) och minnesl&#228;ckage. Som ett exempel tar Fortify upp <a href="http://groups.csail.mit.edu/cis/md6/"><span class="caps">MD6</span></a>:</p>

	<p><blockquote><br />
One of the projects with buffer issues was <span class="caps">MD6</span>, the implementation provided Professor Ron Rivest and his team. All of the problems came back to the hashval field of the md6_state struct:</p>

     unsigned char hashval[ (md6_c/2)*(md6_w/8) ];

	<p>The buffer size is determined by two constants:</p>

     #define w md6_w     /* # bits in a word                   (64) */
     #define c md6_c     /* # words in compression output      (16) */

	<p>At several points, this buffer is read or written to using a different bound:</p>

     if (z==1) /* save final chaining value in st->hashval */
          { memcpy( st->hashval, C, md6_c*(w/8) );
            return <span class="caps">MD6</span>_SUCCESS;
          }

	<p>Further analysis showed that <span class="caps">ANSI</span> standard layout rules would make incorrect behavior unlikely, but other compilers may have allowed it to be exploited. The <span class="caps">MD6</span> team has doubled the size of the vulnerable buffer, which eliminated the risk. In this case, Fortify <span class="caps">SCA</span> found an issue that would have been difficult to catch otherwise.</p>

	<p>The other buffer overflow was found in the Blender implementation, from Dr. Colin Bradbury. This issue was a classic typo:</p>

     DataLength sourceDataLength2[3];// high order parts of data length
     ...
     if (ss.sourceDataLength < (bcount | databitlen)) // overflow
          if (++ss.sourceDataLength2[0]  0) // increment higher order count
               if (++ss.sourceDataLength2[1]  0) // and the next higher order
                    ++ss.sourceDataLength2[3]; // and the next one, etc.

	<p>The developer simply mistyped, using 3 instead of 2 for the array access. This issue was probably not caught because it would not be exposed without a very large input. The other issues we found were memory leaks and null dereferences from memory allocation.<br />
</blockquote></p>

	<p>Att den h&#228;r typen av programmeringsfel kan f&#229; betydelse f&#246;r <span class="caps">SHA</span>-3-t&#228;vlingen &#228;r uppenbart, och illustreras tydligt med <span class="caps">MD6</span>. Dess internbuffert beh&#246;vde dubbleras i storlek. Detta g&#246;r att implementationer av <span class="caps">MD6</span> f&#246;r inbyggda system kommer att kr&#228;va mer minnesresurser &#228;n vad tidigare angetts. En av styrkorna med <span class="caps">MD6</span> enligt dess skapare &#228;r att den skalar extremt bra ner till mycket sm&#229; implementationer, och det argumentet fick sig nu nog en liten t&#246;rn.</p>

	<p>Ett annat sk&#228;l till varf&#246;r jag tycker att Fortifys unders&#246;kning &#228;r bra &#228;r att referensimplementationer ofta anv&#228;nds i applikationer. Antingen direkt eller som bas (funktionell referens) f&#246;r en ny implementation. D&#228;rmed riskerar svagheter i referensimplementationen att sprida sig. Fortify tar sj&#228;lva upp ett exempel fr&#229;n <a href="http://www.securityfocus.com/bid/843/discuss">en svaghet i referensimplementationen av <span class="caps">RSA</span> som lett till buggar i olika <span class="caps">SSL</span>-implementationer</a>.</p>

	<p>I fallet <a href="http://csrc.nist.gov/groups/ST/hash/sha-3/index.html"><span class="caps">SHA</span>-3</a>, med dess fokus p&#229; prestanda, vilket gjort att skaparna av kandidater slitit och sliter med att optimera ut varenda cykel de kan ur sin kod, tror jag att referensimplementationer kommer att f&#229; stor anv&#228;ndning i applikationskod.</blockquote></p>
 <div class="shr-publisher-628"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2009/02/22/svagheter-i-sha-3-implementationer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Skydd av FPGA-konstruktioner med PUF:ar</title>
		<link>http://www.strombergson.com/kryptoblog/2008/09/29/skydd-av-fpga-konstruktioner-med-pufar/</link>
		<comments>http://www.strombergson.com/kryptoblog/2008/09/29/skydd-av-fpga-konstruktioner-med-pufar/#comments</comments>
		<pubDate>Mon, 29 Sep 2008 20:27:49 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Forskning]]></category>
		<category><![CDATA[Hårdvara]]></category>
		<category><![CDATA[Inbyggda system]]></category>
		<category><![CDATA[Krypto]]></category>

		<guid isPermaLink="false">http://strombergson.com/kryptoblog/?p=566</guid>
		<description><![CDATA[<p>F&#246;r ett tag sedan skrev jag om olika tekniker f&#246;r att stoppa kloning av konstruktioner. En av dessa byggde p&#229; <em><a href="http://strombergson.com/kryptoblog/2008/09/13/hardvaru-id-for-att-stoppa-kretskloning/"><span class="caps">PUF</span>:ar &#8211; Physically Unique Functions</a></em> utvecklade av f&#246;retaget Verayo.</p>

	<p>I samband med det hittade jag artikeln <em><a href="http://rijndael.ece.vt.edu/schaum/papers/2006ches.pdf">Oﬄine HW/SW Authentication</a></em>&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p>F&#246;r ett tag sedan skrev jag om olika tekniker f&#246;r att stoppa kloning av konstruktioner. En av dessa byggde p&#229; <em><a href="http://strombergson.com/kryptoblog/2008/09/13/hardvaru-id-for-att-stoppa-kretskloning/"><span class="caps">PUF</span>:ar &#8211; Physically Unique Functions</a></em> utvecklade av f&#246;retaget Verayo.</p>

	<p>I samband med det hittade jag artikeln <em><a href="http://rijndael.ece.vt.edu/schaum/papers/2006ches.pdf">Oﬄine HW/SW Authentication for Reconﬁgurable Platforms</a></em> om att anv&#228;nda <span class="caps">PUF</span>:ar f&#246;r att skydda <span class="caps">FPGA</span>-konstruktioner. Jag undrade d&#229; hur det gick att implementera <span class="caps">PUF</span>:ar i en s&#229; kontrollerad och reglerad struktur som i en <span class="caps">FPGA</span>. Jag hade artikeln sum lunchl&#228;sning och vet nu lite mer. Och jag &#228;r r&#228;tt besviken.</p>

	<p>Problemet f&#246;rfattarna f&#246;rs&#246;ker l&#246;sa &#228;r att hindra att ink&#246;pt SW som exekveras p&#229; en processor implementerad i en <span class="caps">FPGA</span> kopieras. Sj&#228;lva processorn och annan HW implementerad i <span class="caps">FPGA</span>:n skyddas genom krypterad konfigurationsfil. Men SW lagrad i externt minne har inte samma skydd. F&#246;rfattarna skriver:</p>

	<p><blockquote><br />
A hardware platform, designed by a System Developer, will be conﬁgured into an <span class="caps">FPGA</span>. The System Developer will also use third-party software IPs that execute on top of the platform. The System Developer can apply bitstream encryption to protect the hardware conﬁguration in the <span class="caps">FPGA</span>, but an additional hardware-software authentication mechanism is needed to protect the software IPs.<br />
</blockquote></p>

	<p>Det &#228;r allts&#229; inte systemutvecklarens v&#228;l och ve man avser att skydda utan leverant&#246;ren av programvarukomponenten. Och tricket &#228;r att implementera en <span class="caps">PUF</span> i <span class="caps">FPG</span>An. Allts&#229; att <span class="caps">FPGA</span>-leverant&#246;ren bygger in en <span class="caps">PUF</span>, inte att <span class="caps">FPGA</span>:n struktur anv&#228;nds f&#246;r att implementera en <span class="caps">PUF</span>. Dvs deras sjyddar inte SW implementerade i system p&#229; dagens <span class="caps">FPGA</span>:er, utan kr&#228;ver att <span class="caps">FPGA</span>-leverant&#246;rerna bygger in en <span class="caps">PUF</span>-funktion i sina kretsar.</p>

	<p>D&#229; den f&#246;reslagna metoden inneb&#228;r &#246;kade produktionskostnader f&#246;r karakt&#228;risering av varje <span class="caps">FPGA</span>, samt att <span class="caps">FPGA</span>-leverant&#246;ren skall skicka upp information om alla tillverkade kretsar p&#229; en server l&#229;ter detta inte speciellt troligt.</p>

	<p>Och n&#228;r f&#246;rfattarna testat sitt nya protokoll har dom inte ens anv&#228;nt en riktig <span class="caps">PUF</span>-modell:<br />
<blockquote><br />
We have not yet built a <span class="caps">PUF</span> implementation, but have simulated its behavior using another <span class="caps">AES</span> block with a ﬁxed key.<br />
</blockquote></p>

	<p>En riktigt usel och irriterande artikel. Tur att min lunchl&#229;da var extra smaskens. Dessutom hade jag en annan, mycket b&#228;ttre artikel att l&#228;sa. Mer om den senare.</p>
 <div class="shr-publisher-566"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2008/09/29/skydd-av-fpga-konstruktioner-med-pufar/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sidokanalsbaserat skydd mot kretskloning</title>
		<link>http://www.strombergson.com/kryptoblog/2008/09/18/sidokanalsbaserat-skydd-mot-kretskloning/</link>
		<comments>http://www.strombergson.com/kryptoblog/2008/09/18/sidokanalsbaserat-skydd-mot-kretskloning/#comments</comments>
		<pubDate>Thu, 18 Sep 2008 19:47:39 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Hårdvara]]></category>
		<category><![CDATA[Krypto]]></category>
		<category><![CDATA[Inbyggda system]]></category>

		<guid isPermaLink="false">http://strombergson.com/kryptoblog/?p=562</guid>
		<description><![CDATA[<p>F&#246;r n&#229;gra dagar sedan bloggade jag om <a href="http://strombergson.com/kryptoblog/2008/09/13/hardvaru-id-for-att-stoppa-kretskloning/">f&#246;retaget Verayo och deras <span class="caps">PUF</span>-teknologi f&#246;r att stoppa kretskloning</a>. I dag sprang jag p&#229; <a href="http://www.pldesignline.com/howto/210602187;jsessionid=XB3XK5CP15ZXMQSNDLPSKHSCJUNN2JVN?pgno=1">en artikel p&#229; <span class="caps">EE </span>Times om en annan teknik f&#246;r att stoppa kretskloning</a>, och&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p>F&#246;r n&#229;gra dagar sedan bloggade jag om <a href="http://strombergson.com/kryptoblog/2008/09/13/hardvaru-id-for-att-stoppa-kretskloning/">f&#246;retaget Verayo och deras <span class="caps">PUF</span>-teknologi f&#246;r att stoppa kretskloning</a>. I dag sprang jag p&#229; <a href="http://www.pldesignline.com/howto/210602187;jsessionid=XB3XK5CP15ZXMQSNDLPSKHSCJUNN2JVN?pgno=1">en artikel p&#229; <span class="caps">EE </span>Times om en annan teknik f&#246;r att stoppa kretskloning</a>, och den h&#228;r &#228;r riktigt fr&#228;ck.</p>

	<p><a href="http://www.algotronix-store.com/">Algotronix</a> har utvecklat en mycket intressant teknik kallad <a href="http://www.algotronix-store.com/category_s/21.htm">DesignTag</a> som g&#246;r det m&#246;jligt att skydda konstruktioner byggda med <span class="caps">FPGA</span>-kretsar. Problemet med <span class="caps">SRAM</span>-baserade <span class="caps">FPGA</span>-kretsar &#228;r att de tappar sin konfiguration n&#228;r matningen f&#246;rsvinner. Konfigurationen m&#229;ste d&#228;rf&#246;r laddas in fr&#229;n ett externt minne, exempelvis ett <span class="caps">FLASH</span>-minne. Och det g&#246;r att vill n&#229;gon klona konstruktionen &#228;r det bara att l&#228;sa av konfigurationen mellan minnet och <span class="caps">FPGA</span>-kretsen.</p>

	<p><img src="http://i.cmpnet.com/pldesignline/2008/09/clone-01.jpg" alt="FPGA-krets med konfigurationsminne." /></p>

	<p>(<em>I det h&#228;r l&#228;get skall det p&#229;pekas att <span class="caps">FPGA</span>-leverant&#246;rer som Altera och Xilinx har l&#246;sningar baserade p&#229; krypterad konfigurationsfil d&#228;r kryptonyckeln lagras internt i <span class="caps">FPGA</span>-kretsen och str&#246;ms&#228;tts med batteri. Detta g&#246;r det &#228;ven m&#246;jligt att bygga aktiva skalskydd.</em>)</p>

	<p>Algotronix DesignTag f&#246;rs&#246;ker stoppa detta genom att f&#246;r varje konstruktion generera ett unikt konstruktionsblock som identifierar konstruktionen. Genom att l&#228;sa av identiteten g&#229;r det att avg&#246;ra vilken konstruktion det &#228;r och d&#228;rmed avg&#246;ra om konstruktionen &#228;r stulen eller ej.</p>

	<p>Och det fr&#228;cka &#228;r hur DesignTag kommunicerar kretsens ID. DesignTag kommunicerar genom kretsens v&#228;rmeutveckling!</p>

	<p><img src="http://i.cmpnet.com/pldesignline/2008/09/clone-03.jpg" alt="DesignTag i en FPGA." /></p>

	<p>N&#228;r <span class="caps">FPG</span>An startar b&#246;rjar DesignTag-blocket att g&#246;ra en massa operationer som &#246;kar och minskar v&#228;rmeutveckling vilket f&#229;r temperaturen p&#229; utsidan av kapseln att variera. Hur temperaturen varierar beror p&#229; identiteten. Genom att l&#228;sa av temperaturen g&#229;r det att f&#229; fram kretsens identitet. Fr&#228;ckt eller hur?!</p>

	<p><img src="http://i.cmpnet.com/pldesignline/2008/09/clone-05-sm.jpg" alt="Setup f&#246;r att l&#228;sa av DesignTag-koden." /></p>

	<p>Enligt artikeln implementerar DesignTag ett enkelt <span class="caps">LFSR</span>-baserat str&#246;mkrypto d&#228;r identiteten &#228;r nyckeln. <span class="caps">LFSR</span>-kedjan ger upphov till en <span class="caps">PRNG</span>-sekvens som styr v&#228;rmegeneratorn. Vet man inte att det finns DesignTag aktivt i kretsen ser variansen (f&#246;rhoppningsvis) ut som slumpm&#228;ssiga temperaturvariationer.</p>

	<p>Det st&#229;r inte hur v&#228;rmegeneratorn fungerar. Gissningsvis &#228;r det n&#229;got som ger upphov till stora registeromslag och aktivitet. Ett antal styrbara <a href="http://en.wikipedia.org/wiki/Flip-flop_(electronics)#Toggle_flip-flops_.28T_flip-flops.29">T-register</a> och/eller multiplikatorer med operander som ger upphov till l&#229;nga carry-kedjor.</p>

	<p>DesignTag-kommunikationen kan knappast vara speciellt snabb s&#229; antalet bitar som skickas &#228;r antagligen inte s&#229; stor. Enligt artikeln st&#228;ngs DesignTag-blocket av efter 15 minuter.</p>

	<p>DesignTag-blocket beh&#246;ver antagligen kalibreras f&#246;r varje familj av <span class="caps">FPGA</span>-kretsar den anv&#228;nds f&#246;r att kunna ge en bra varians i temperaturen. Vidare g&#229;r det s&#228;kert att bygga en mekanism som detekterar om det finns DesignTag i en konstruktion eller ej. Dels borde det g&#229; att attackera <span class="caps">LFSR</span>-kedjan och s&#228;rskilja DesignTag-m&#246;nstret fr&#229;n <em>normal</em> slumpm&#228;ssig temperaturvariation. Om inte annat borde det g&#229; att v&#228;nta 15 minuter och se om det h&#228;nder n&#229;got med temperaturen.</p>

	<p>Men att kommunicera genom temperaturen &#228;r ett otroligt elegant s&#228;tt som g&#246;r att DesignTag inte beh&#246;ver st&#228;lla n&#229;gra krav p&#229; tillg&#229;ng till kretsens ben.</p>

	<p>Verayos teknik g&#246;r det m&#246;jligt f&#246;r en krets att sj&#228;lv avg&#246;ra om den &#228;r klonad eller ej. Men samtidigt &#228;r det enkelt f&#246;r skurken att kontrollera om han lyckats sl&#229; ut Verayos teknik eller ej. Algotronix teknik ger inte kretsen m&#246;jlighet att avg&#246;ra om den &#228;r klonad eller ej, men &#228;r desto sv&#229;rare att uppt&#228;cka om man inte letar efter den.</p>

	<p>Krypto, <span class="caps">FPGA</span>-kretsar och sidoattacker &#8211; tre &#246;nskningar i ett. Kan det bli b&#228;ttre?</p>
 <div class="shr-publisher-562"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2008/09/18/sidokanalsbaserat-skydd-mot-kretskloning/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Nyckelutbyte genom jonglering</title>
		<link>http://www.strombergson.com/kryptoblog/2008/07/16/nyckelutbyte-genom-jonglering/</link>
		<comments>http://www.strombergson.com/kryptoblog/2008/07/16/nyckelutbyte-genom-jonglering/#comments</comments>
		<pubDate>Wed, 16 Jul 2008 04:53:47 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Forskning]]></category>
		<category><![CDATA[Inbyggda system]]></category>
		<category><![CDATA[Krypto]]></category>

		<guid isPermaLink="false">http://strombergson.com/kryptoblog/?p=505</guid>
		<description><![CDATA[<p>(<em>Fixat trasig l&#228;nk &#8211; tack J&#246;rgenL.</em>)</p>

	<p>P&#229; <a href="http://www.lightbluetouchpaper.org/">Light Blue Touchpaper</a>, bloggen fr&#229;n <a href="http://www.cl.cam.ac.uk/research/security/">s&#228;kerhetsguppen</a> vid <a href="http://www.cl.cam.ac.uk/">Cambridge Computer Laboratory</a> har det dykt upp <a href="http://www.lightbluetouchpaper.org/2008/05/29/j-pake/">en intressant postning om ett nytt s&#228;tt att utf&#246;ra l&#246;senordsbaserad nyckelutbyte</a>.</p>

	<p>L&#246;senordsbaserad nyckelutbyte (<a&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p>(<em>Fixat trasig l&#228;nk &#8211; tack J&#246;rgenL.</em>)</p>

	<p>P&#229; <a href="http://www.lightbluetouchpaper.org/">Light Blue Touchpaper</a>, bloggen fr&#229;n <a href="http://www.cl.cam.ac.uk/research/security/">s&#228;kerhetsguppen</a> vid <a href="http://www.cl.cam.ac.uk/">Cambridge Computer Laboratory</a> har det dykt upp <a href="http://www.lightbluetouchpaper.org/2008/05/29/j-pake/">en intressant postning om ett nytt s&#228;tt att utf&#246;ra l&#246;senordsbaserad nyckelutbyte</a>.</p>

	<p>L&#246;senordsbaserad nyckelutbyte (<a href="http://en.wikipedia.org/wiki/Password-authenticated_key_agreement">Password Authenticated Key Exchange &#8211; <span class="caps">PAKE</span></a>) &#228;r en metod f&#246;r att utbyta sessionsnycklar f&#246;r s&#228;ker kommunikation mellan parter baserad p&#229; l&#246;senord (delad hemlighet). De tv&#229; mest k&#228;nda versionerna av <span class="caps">PAKE </span>&#228;r <a href="http://en.wikipedia.org/wiki/Encrypted_key_exchange">Encrypted Key Exchange &#8211; <span class="caps">EKE</span></a> och <a href="http://en.wikipedia.org/wiki/SPEKE_(cryptography)">Simple Password Exponential Key Exchange &#8211; <span class="caps">SPEKE</span></a>.</p>

	<p>Artikeln <em><a href="http://grouper.ieee.org/groups/1363/passwdPK/submissions/hao-ryan-2008.pdf">Password Authenticated Key Exchange by Juggling</a></em> &#228;r skriven av <a href="http://www.cl.cam.ac.uk/~fh240/">Feng Hao</a> och <a href="http://www.cs.ncl.ac.uk/people/peter.ryan">Peter Ryan</a>. Artikelns sammanfattning f&#246;rklarar nyttan med J-PAKE:</p>

	<p><blockquote><br />
Password-Authenticated Key Exchange (PAKE) studies how to establish secure communication between two remote parties solely based on their shared password, without requiring a Public Key Infrastructure (PKI). Despite extensive research in the past decade, this problem remains unsolved. Patent has been one of the biggest brakes in deploying <span class="caps">PAKE</span> solutions in practice. Besides, even for the patented schemes like <span class="caps">EKE</span> and <span class="caps">SPEKE</span>, their security is only heuristic; researchers have reported some subtle but worrying security issues. In this paper, we propose to tackle this problem using an approach different from all past solutions.</p>

	<p>Our protocol, Password Authenticated Key Exchange by Juggling (J-PAKE), achieves mutual authentication in two steps: ﬁrst, two parties send ephemeral public keys to each other; second, they encrypt the shared password by juggling the public keys in a veriﬁable way. The ﬁrst use of such a juggling technique was seen in solving the Dining Cryptographers problem in 2006. Here, we apply it to solve the <span class="caps">PAKE</span> problem, and show that the protocol is zero-knowledge as it reveals nothing except one-bit information: whether the supplied passwords at two sides are the same.</p>

	<p>With clear advantages in security, our scheme has comparable efficiency to the <span class="caps">EKE</span> and <span class="caps">SPEKE</span> protocols.<br />
</blockquote></p>

	<p><img src="http://enterthelaughter.com/cat-juggling.jpg" alt="Jonglering" /><br />
(<em>Jonglering med nycklar &#8211; om din nyckel heter som ditt husdjur&#8230;</em>)</p>

	<p>Artikeln inneh&#229;ller en hel del referenser till koncept och metoder jag inte k&#228;nde till innan, exempelvis <em><a href="http://en.wikipedia.org/wiki/Dining_cryptographers_problem">Dining Cryptographers</a></em>. (Det verkar p&#229;g&#229; verksamhet p&#229; Wikipedia f&#246;r att skriva om f&#246;rklaringen av problemet &#8211; se <a href="http://en.wikipedia.org/wiki/Dining_Cryptographers">den h&#228;r</a> och <a href="http://en.wikipedia.org/wiki/Dining_cryptographers_protocol/Rewrite">den h&#228;r</a> sidan.)</p>

	<p>Implementationsm&#228;ssigt verkar den nya metoden inte vara s&#229; hemsk. F&#246;rfattarna skriver:</p>

	<p><blockquote><br />
Since our protocol involves several zero-knowledge proofs, one might concern about its cost. We now count the number of exponentiations in the protocol and evaluate its computational effciency..in our protocol, each party would need to perform 14 exponentiations in total &#8211; including 8 in the ﬁrst step, 4 in the second step, and 2 in computing the session key.</p>

	<p>To better assess the cost in real terms, we implement the protocol in Java on a 2.33-GHz laptop running Mac <span class="caps">OS X</span>. The modulus p is chosen 1024-bit and the subgroup order q 160-bit<br />
...<br />
The results demonstrate that the protocol &#8211; executed only once in a session &#8211; runs sufficiently fast. The total computation time is merely 0.075 sec. As compared to the time that the user keys in his password, this latency is negligible at the client.</p>

	<p>However, the cost at the server may accumulate to be signiﬁcant if requests are dealt with simultaneously. Therefore, the threat of Denial of Service (DoS) attacks still needs to be properly addressed in practical deployments.<br />
</blockquote></p>

	<p>Vad g&#228;ller s&#228;kerheten skriver f&#246;rfattarna att:</p>

	<p><blockquote><br />
EKE requires changing the protocol in its existing form for a secure implementation. As for a <span class="caps">SPEKE</span>, it has the drawback that an active attacker may test multiple passwords in one protocol execution. Furthermore, neither protocol &#8211; in the original form &#8211; accommodates short exponents securely. Finally, neither protocol is provably secure; formal security proofs seem unlikely without introducing new security assumptions or relaxing security requirements.</p>

	<p>We choose to solve the <span class="caps">PAKE</span> problem using a different approach. The novelty of our design is that we encrypt the password by juggling the public keys in a way that can be veriﬁed. As a result, our scheme is provably secure, allows ﬂexible use of short exponents, and strictly limits an active attacker to test only one password per protocol execution.<br />
</blockquote></p>

	<p>F&#246;r ett tag sedan blev <a href="http://www.cl.cam.ac.uk/~fh240/software/JPAKE2.java">Java-koden till implementationen av J-PAKE tillg&#228;nglig</a>. Jag har inte testat den sj&#228;lv. Intressant nog kallas den f&#246;r <span class="caps">JPAKE2</span>, vilket skulle kunna betyda att det funnits en tidigare version av algoritmen som man av n&#229;gon anledning inte var n&#246;jd med.</p>

	<p>F&#246;rfattarna har &#228;ven skickat in J-PAKE som f&#246;rslag till <a href="http://grouper.ieee.org/groups/1363/passwdPK/1363.2a-submissions.html">en framtida ut&#246;kning</a> av <a href="http://en.wikipedia.org/wiki/IEEE_P1363"><span class="caps">IEEE P1363</span></a>.</p>

	<p>N&#228;r J-PAKE uppm&#228;rksammades p&#229; Cyptography-listan d&#246;k det upp referenser till en annan, ny <span class="caps">PAKE</span>-algoritm. Det finns en <a href="http://en.wikipedia.org/wiki/Internet_Draft">Internet Draft</a>, <em><a href="http://www.ietf.org/internet-drafts/draft-harkins-emu-eap-pwd-01.txt" class="broken_link"><span class="caps">EAP </span>Authentication Using Only A Password</a></em> som tydligen &#228;r under utv&#228;rdering av <span class="caps">IEEE</span> f&#246;r den kommande <span class="caps">WLAN</span>-standarden <a href="http://en.wikipedia.org/wiki/IEEE_802.11s">802.11s</a>.</p>

	<p>Bra och enkla och allm&#228;nt tillg&#228;ngliga metoder f&#246;r nyckelutbyte &#228;r klart intressant.  Med tv&#229; stycken nya, s&#228;kra och ej patenterade utan &#246;ppna algoritmer kanske <span class="caps">PAKE</span> kan f&#229; b&#228;ttre spridning. Inte minst f&#246;r inbyggda system &#228;r J-PAKE klart intressant.</p>
 <div class="shr-publisher-505"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2008/07/16/nyckelutbyte-genom-jonglering/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>En liten 6502-emulator</title>
		<link>http://www.strombergson.com/kryptoblog/2008/07/15/en-liten-6502-emulator/</link>
		<comments>http://www.strombergson.com/kryptoblog/2008/07/15/en-liten-6502-emulator/#comments</comments>
		<pubDate>Tue, 15 Jul 2008 13:22:09 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Inbyggda system]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[övrigt]]></category>

		<guid isPermaLink="false">http://strombergson.com/kryptoblog/?p=535</guid>
		<description><![CDATA[<p>Vad passar b&#228;ttre en regntung semesterdag &#228;n testkoda en emulator av den gamla processorn <a href="http://en.wikipedia.org/wiki/MOS_Technology_6502"><span class="caps">MOS 6502</span></a>?</p>

	<p><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/4/49/MOS_6502AD_4585_top.jpg/300px-MOS_6502AD_4585_top.jpg" alt="MOS 6502" /></p>

	<p>Jag kunde i alla fall inte komma p&#229; n&#229;got b&#228;ttre och hackade lite Python nu p&#229; eftermiddagen. 176 rader senare inklusive&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p>Vad passar b&#228;ttre en regntung semesterdag &#228;n testkoda en emulator av den gamla processorn <a href="http://en.wikipedia.org/wiki/MOS_Technology_6502"><span class="caps">MOS 6502</span></a>?</p>

	<p><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/4/49/MOS_6502AD_4585_top.jpg/300px-MOS_6502AD_4585_top.jpg" alt="MOS 6502" /></p>

	<p>Jag kunde i alla fall inte komma p&#229; n&#229;got b&#228;ttre och hackade lite Python nu p&#229; eftermiddagen. 176 rader senare inklusive kommentarer, filhuvud och testfall kan jag i alla fall k&#246;ra n&#229;gra instruktioner:</p>

	<p><code><br />
js@sotis:/Users/js/tmp&gt;./6502.py<br />
MOS 6502: CPU initializing.<br />
MOS 6502: Dumping memory from 100 to 111<br />
100: ea<br />
101: ea<br />
102: ea<br />
103: ea<br />
104: ea<br />
105: ea<br />
106: ea<br />
107: ea<br />
108: ea<br />
109: ea<br />
10a: ea<br />
10b: ea<br />
10c: ea<br />
10d: ea<br />
10e: ea<br />
10f: ea<br />
110: 60<br />
111: 0<br />
MOS 6502: Running program from start address 100<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing NOP<br />
MOS 6502: Executing RTS<br />
Cycles executed: 34<br />
</code></p>

	<p>(<em>Japp, min emulator r&#228;knar bland annat &#228;ven cykler. Har alltid velat ha den funktionen. T&#228;nk vad m&#229;nga cykler man r&#228;knade i sin finniga ungdom n&#228;r man kodade p&#229; <span class="caps">C64</span>:an.</em>)</p>

	<p>Det saknas en massa instruktioner och jag &#228;r inte s&#228;ker p&#229; om jag verkligen skall ha en separat decode-funktion och en exekverings-funktion. Det blir v&#228;ldigt mycket upprepning av if-elsif-elsif-else i de tv&#229; funktionerna.</p>

	<p>En intressant (n&#229;ja) observation &#228;r att min emulator, skriven i ett intepreterande spr&#229;k, antagligen &#228;r flera g&#229;nger snabbare &#228;n den verkliga processorn. Dock inte lika snabb som den variant av 6502 vi byggde in i InformAsics <span class="caps">VPN</span>-chip, den g&#229;r i upp till 33 MHz.</p>
 <div class="shr-publisher-535"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2008/07/15/en-liten-6502-emulator/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>NXP försöker stoppa publicering av MiFare-analys</title>
		<link>http://www.strombergson.com/kryptoblog/2008/07/14/nxp-forsoker-stoppa-publicering-av-mifare-analys/</link>
		<comments>http://www.strombergson.com/kryptoblog/2008/07/14/nxp-forsoker-stoppa-publicering-av-mifare-analys/#comments</comments>
		<pubDate>Mon, 14 Jul 2008 13:46:02 +0000</pubDate>
		<dc:creator>Joachim Strömbergson</dc:creator>
				<category><![CDATA[Forskning]]></category>
		<category><![CDATA[Inbyggda system]]></category>
		<category><![CDATA[Krypto]]></category>

		<guid isPermaLink="false">http://strombergson.com/kryptoblog/?p=532</guid>
		<description><![CDATA[<p>Jag har <a href="http://strombergson.com/kryptoblog/2008/04/22/mifare-ar-riktigt-trasigt/">postat ett par g&#229;nger</a> tidigare om kretstillverkaren <a href="http://www.nxp.com/">NXPs</a> MiFare-system och det egenutvecklade och rej&#228;lt trasiga kryptot <span class="caps">CRYPTO1</span> som anv&#228;nds i <em>Classic</em>-varianter av systemet. MiFare Classic anv&#228;nds bland annat av Lokaltrafiken i London och kallas&#8230;</p>


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[	<p>Jag har <a href="http://strombergson.com/kryptoblog/2008/04/22/mifare-ar-riktigt-trasigt/">postat ett par g&#229;nger</a> tidigare om kretstillverkaren <a href="http://www.nxp.com/">NXPs</a> MiFare-system och det egenutvecklade och rej&#228;lt trasiga kryptot <span class="caps">CRYPTO1</span> som anv&#228;nds i <em>Classic</em>-varianter av systemet. MiFare Classic anv&#228;nds bland annat av Lokaltrafiken i London och kallas d&#228;r Oyster Card.</p>

	<p><img src="http://newsimg.bbc.co.uk/media/images/44646000/jpg/_44646955_oyster-card_pa_226b.jpg" alt="Ett Oyster Card." /></p>

	<p><a href="http://boingboing.net/">Boingboing</a> rapporterar nu att <a href="http://www.boingboing.net/2008/07/13/report-oyster-card-c.html"><span class="caps">NXP</span> satt press p&#229; forskare vid Radboud University i Nijmegen, Holland f&#246;r att stoppa publiceringen av sina forskningsresultat som visar &#228;nnu fler svagheter i MiFare</a>. <span class="caps">NXP</span> har helt enkelt st&#228;mt forskarna och &#229;beropar s&#228;kerhet som sk&#228;l att stoppa publiceringen.</p>

	<p>Och sj&#228;lvklart innebar detta att artikeln <span class="caps">NXP</span> f&#246;rs&#246;ker stoppa har smitit ut p&#229; n&#228;tet. Ett tag fanns artikeln p&#229; Wikileaks, men f&#246;rsvann. D&#228;remot har den dykt upp b&#229;de p&#229; <a href="http://cryptome.org/mifare-classic.pdf">Cryptome</a> och p&#229; <a href="http://arxiv.org/abs/0803.2285">ArXiv</a>.</p>

	<p>Artikeln A Practical Attack on the <span class="caps">MIFARE </span>Classic beskriver enligt sammanfattninen:</p>

	<p><blockquote><br />
The <span class="caps">MIFARE </span>Classic is the most widely used contactless smart card in the market. Its design and implementation details are kept secret by its manufacturer.</p>

	<p>This paper studies the architecture of the card and the communication protocol between card and reader. Then it gives a practical, low-cost, attack that recovers secret information from the memory of the card.</p>

	<p>Due to a weakness in the pseudo-random generator, we are able to recover the keystream generated by the <span class="caps">CRYPTO1</span> stream cipher. We exploit the malleability of the stream cipher to read all memory blocks of the first sector of the card. Moreover, we are able to read any sector of the memory of the card, provided that we know one memory block within this sector. Finally, and perhaps more damaging, the same holds for modifying memory blocks.<br />
</blockquote></p>

	<p>V&#228;rt att notera att attacken sker &#246;ver radiogr&#228;nssnittet (<a href="http://en.wikipedia.org/wiki/ISO_14443"><span class="caps">RFID</span>-standarden <span class="caps">ISO 14443</span></a>). Dvs det &#228;r inte s&#229; att man plockat is&#228;r ett MiFare-kort och attackerat chipet, utan f&#246;rs&#246;ker efterlikna ett troligt scenario d&#228;r n&#229;gon tr&#229;dl&#246;st f&#246;rs&#246;ker klona ett kort.</p>

	<p>Artikeln &#228;r rej&#228;lt matig och inneh&#229;ller en pedagogisk och bra genomg&#229;ng av hur MiFare Classic fungerar. D&#229; det finns svenska anv&#228;ndare av MiFare &#228;r det v&#228;rt att upprepa artikelns rekommendationer:</p>

	<p><blockquote><br />
For short term improvements we recommend not to use sector zero to store secret information. Conﬁgure key B as readable and store random information in it. Do not store sensitive information in the ﬁrst 6 bytes of any sector.  Use multiple sector authentications in one transaction to thwart attackers in an attempt to recover plaintext. This is only helpful when value block commands are not allowed. Value block commands are shorter than a read command and will enable a shift of the keystream.</p>

	<p>Another possibility, that might be viable for some applications, is to employ another encryption scheme like <span class="caps">AES</span> in the backoffice, and store only encrypted information on the tags. To prevent unauthorized modiﬁcation of a data block, an extra authentication on this data could be added. This authentication<br />
is then veriﬁed in the backoffice.</p>

	<p>Proper fraud detection mechanisms and extra security features in the backoffice are necessary to signal or even prevent the types of attacks described above. In general, the backoffice systems collecting and processing data that comes from the readers are a very important second line of defense.</p>

	<p>On the long term these countermeasures will not be sufficient. The mifare Classic card has a closed design. Security by obscurity has shown several times that at some point the details of the system will be revealed compromising security. Therefore we recommend to migrate to more advanced cards with an open design architecture.<br />
</blockquote></p>

	<p>Forskarna har &#228;ven gjort en fin film som visar hur deras attack g&#229;r till. Om deras scanning &#228;r s&#229; snabb som filmen visar &#228;r det h&#228;r riktigt skr&#228;mmande:</p>

	<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/NW3RGbQTLhE&#38;hl=en&#38;fs=1"></param><param name="allowFullScreen" value="true"></param><embed src="http://www.youtube.com/v/NW3RGbQTLhE&#38;hl=en&#38;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"></embed></object></p>

	<p>Vad skall man s&#228;ga om NXPs agerande? Ist&#228;llet f&#246;r att arbeta tillsammans med forskarna och exempelvis i samband med publiceringen ordna seminarier f&#246;r sina kunder om hur de skall agera f&#246;r att skydda sig och sina kunder lyckas <span class="caps">NXP</span> med att:<br />
<ol></p>
	<p><li>Reta upp forskarna och f&#246;rst&#246;ra m&#246;jligheterna till samarbete</li><br />
<li>Garantera att artikeln och information om hur MiFare Classic skall attackeras kommer ut p&#229; ett okontrollerat s&#228;tt</li><br />
<li>Framst&#229; som ett otrevligt, aggressivt och ett s&#228;kerhetsm&#228;ssigt inkompetent f&#246;retag</li><br />
</ol></p>

	<p>Tre dumheter p&#229; samma g&#229;ng, det &#228;r n&#228;stan b&#228;ttre &#228;n ett <a href="http://sv.wikipedia.org/wiki/Kinder%C3%A4gg">Kinder&#228;gg</a>.</p>

	<p><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/8/8d/KinderEgg.jpg/250px-KinderEgg.jpg" alt="Kinder&#228;gg." /><br />
(<em>Ett Mifare-Kinder&#228;gg. &#214;ppna och bli &#246;verraskad av <span class="caps">NXP</span>&#8230;</em>)</p>

	<p>Slutligen noterar jag att <span class="caps">BBC</span> rapporterar att <a href="http://news.bbc.co.uk/2/hi/uk_news/england/london/7504199.stm">Londons lokaltrafik har problem med sitt Oyster card-system</a>. Oklart om det har att g&#246;ra med en attack mot <span class="caps">CRYPTO1</span> dock.</p>

 <div class="shr-publisher-532"></div>

<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.strombergson.com/kryptoblog/2008/07/14/nxp-forsoker-stoppa-publicering-av-mifare-analys/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

