<?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>Tyler Oderkirk&#039;s Blog &#187; Hardware</title>
	<atom:link href="http://unsyncopated.com/blog/index.php/category/hardware/feed/" rel="self" type="application/rss+xml" />
	<link>http://unsyncopated.com/blog</link>
	<description>&#34;Scared money don&#039;t[sic] make money&#34;</description>
	<lastBuildDate>Thu, 27 Jan 2011 05:02:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Creds101 v0.1 Release</title>
		<link>http://unsyncopated.com/blog/index.php/2010/02/20/creds101-v0-1-release/</link>
		<comments>http://unsyncopated.com/blog/index.php/2010/02/20/creds101-v0-1-release/#comments</comments>
		<pubDate>Sat, 20 Feb 2010 14:38:45 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[Flickr]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Python programming]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Table of Contents]]></category>

		<guid isPermaLink="false">http://unsyncopated.com/blog/index.php/2010/02/20/creds101-v0-1-release/</guid>
		<description><![CDATA[I&#8217;m happy to announce the first release of a credentials (e.g. &#8220;usernames and passwords&#8221;) management system that I&#8217;ve been working on for the past few weeks. It&#8217;s called Creds101 and this excerpt from the documentation gives some more detail: Creds101 has 2 parts: Software that you run on your computer (the &#8220;host&#8221;) to send commands [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m happy to announce the first release of a credentials (e.g. &#8220;usernames and passwords&#8221;) management system that I&#8217;ve been working on for the past few weeks. It&#8217;s called Creds101 and this excerpt from <a href="http://unsyncopated.com/corral/creds101-0.1/index.html">the documentation</a> gives some more detail:</p>
<hr />Creds101 has 2 parts:</p>
<ol>
<li>Software that you run on your computer (the &#8220;host&#8221;) to send commands to&#8230;</li>
<li>A USB &#8220;token&#8221; which A) encrypts and stores credentials from the host and B) decrypts and displays them on its LCD.</li>
</ol>
<p>Creds101 serves the same purpose as traditional &#8220;password database&#8221; solutions but it is different in two fundamental ways:</p>
<ol>
<li>Credentials aren&#8217;t stored on the user&#8217;s computer &#8211; they&#8217;re stored on a USB &#8220;token&#8221;.</li>
<li>Sensitive credential data <em>cannot be read by malicious software on the user&#8217;s computer</em> &#8211; credentials can only be viewed on the token&#8217;s &#8220;trusted LCD display&#8221;.</li>
</ol>
<hr />
<span id="Contents"><h3>Contents</h3></span>
<div class='toc wptoc'>
<h2>Contents</h2>
<ol class='toc-odd level-1'>
	<li>
		<a href="#Contents">Contents</a>
	</li>
	<li>
		<a href="#Whats_in_v0.1">What's in v0.1?</a>
	</li>
	<li>
		<a href="#Whats_next">What's next?</a>
	</li>
	<li>
		<a href="#What_I_learned">What I learned</a>
	</li>
	<li>
		<a href="#Download__Quickstart">Download / Quickstart</a>
	</li>
	<li>
		<a href="#Further_reading">Further reading</a>
	</li>
</ol>
</ol>
</ol>
</div>
<div class='wptoc-end'>&nbsp;</div>
<span id="What8217s_in_v0.1"><h3>What&#8217;s in v0.1?</h3></span>
<ul>
<li><a href="http://www.methods.co.nz/asciidoc/">AsciiDoc</a>-based documentation including the &#8220;host-&gt;token&#8221; serial command protocol and data-flow diagrams illustrating how credentials are encrypted, stored, decrypted, and displayed by the token.</li>
<li>A <a href="http://docs.python.org/library/unittest.html">unittest</a> test suite which exercises each of the commands accepted by the token. Install <a href="http://twistedmatrix.com/trac/">Twisted</a> and try
<pre class="brush: bash;">PYTHONPATH=src trial src/TestSimulatorToken.py</pre>
</li>
<li>A cross-platform &#8220;token administration&#8221; GUI for storing and retrieving credentials. Try
<pre class="brush: bash;">bin/creds101-admin-gui --use-simulator</pre>
<p>or see screenshot 1.						<div class="flickr-gallery image none"><a href="http://www.flickr.com/photos/55502932@N00/4373389528"><img class="flickr small" title="Screenshot 1 - GUIs" alt="Screenshot 1 - GUIs" src="http://farm5.static.flickr.com/4066/4373389528_7f97d950e4_m.jpg" /></a></div>
					</li>
<li>A command-line &#8220;token administration&#8221; interface. Try
<pre class="brush: bash;">bin/creds101 --help</pre>
</li>
<li>A &#8220;token simulator&#8221; that allows us to 1) develop tests 2) iron out token design issues <em>before</em> coding in C for an embedded platform. Try
<pre class="brush: bash;">bin/creds101-simulator --gui</pre>
<p>or see screenshot 1.</li>
<li>						<div class="flickr-gallery image right"><a href="http://www.flickr.com/photos/55502932@N00/4372493561"><img class="flickr small" title="Photo 2 - Desoldering flash part" alt="Photo 2 - Desoldering flash part" src="http://farm3.static.flickr.com/2709/4372493561_13955be0f6_m.jpg" /></a></div>
					The beginnings of the code for an <a href="http://www.arduino.cc/en/Main/ArduinoBoardDuemilanove">Arduino</a>-based token. Take a look in `src/arduino`. This includes code for&#8230;
<ul>
<li>Receiving commands from the &#8220;host&#8221; via the Arduino&#8217;s FTDI serial-over-USB chip.</li>
<li>Reading and writing data to the 512 bytes of internal EEPROM or an attached SPI <a href="http://www.atmel.com/products/dataflash/default.asp">DataFlash</a> part. See photos 2 and 3.</li>
<li>Displaying text on a <a href="http://www.sparkfun.com/commerce/product_info.php?products_id=9394">SparkFun SerLCD</a> LCD module.</li>
<li>Encrypting and decrypting data with 128-bit AES.</li>
</ul>
</li>
</ul>
<span id="What8217s_next"><h3>What&#8217;s next?</h3></span>
<ul>
<li>						<div class="flickr-gallery image right"><a href="http://www.flickr.com/photos/55502932@N00/4373266740"><img class="flickr small" title="Photo 3 - New leads" alt="Photo 3 - New leads" src="http://farm3.static.flickr.com/2706/4373266740_32369563b4_m.jpg" /></a></div>
					Completing the Arduino token implementation so that we have something that&#8217;s suitable for everyday use.</li>
<li>Completing a thumbdrive-sized token implementation &#8211; the ideal form factor.</li>
<li>The smaller tasks that can be found in the `TODO` file.</li>
</ul>
<span id="What_I_learned"><h3>What I learned</h3></span>
<ul>
<li>How to create slick, source-based docs with the AsciiDoc tool suite. As much as I like MoinMoin markup, the wiki engine itself isn&#8217;t amenable to being invoked from a build automation tool.</li>
<li>GUI design with <a href="http://glade.gnome.org/">Glade</a>, a slick <a href="http://en.wikipedia.org/wiki/Rapid_application_development">RAD</a> tool used by many free software projects.</li>
<li>GUI interaction with <a href="http://www.pygtk.org/">PyGTK</a>. I wrote a well-behaved worker thread that runs alongside the GTK main loop for the token simulator component.</li>
<li>The theory and implementation of &#8220;Secret Sharing&#8221; schemes especially Shamir&#8217;s Secret Sharing Scheme (SSSS). We discarded SSSS in favor of the current &#8220;store-the-key-on-the-host, store-the-ciphertext-on-the-token&#8221; design.</li>
<li>A handful of Python skills&#8230;
<ul>
<li>Finding a script&#8217;s location <em>from within the script</em>. Handy for using `bin/foo -&gt; src/foo.py` symlinks in conjunction with external (e.g. Glade XML) resources.</li>
<li>Python&#8217;s built-in <a href="http://docs.python.org/library/xmlrpclib.html">XML-RPC</a> library. Reconciling UNIX socket semantics with thread semantics gave me fits before I switched to this IPC mechanism.</li>
<li>Steven Bethard&#8217;s superior <a href="http://code.google.com/p/argparse/">argparse</a> module which makes handling subcommands and required positional arguments a breeze compared with Python&#8217;s standard optparse module.</li>
</ul>
</li>
</ul>
<span id="Download__Quickstart"><h3>Download / Quickstart</h3></span>
<p>Creds101 is licensed under the GPL.</p>
<p>Here are the steps to grab the v0.1 source tarball from <a href="http://unsyncopated.com/hg/creds101/">the hgweb interface</a> and take the GUIs for a test drive!</p>
<pre class="brush: bash;">
$ wget http://unsyncopated.com/hg/creds101/archive/0.1.tar.gz
$ tar xzf 0.1.tar.gz
$ cd creds101-0.1
$ bin/creds101-simulator --gui &amp;           # launch the token simulator
$ bin/creds101-admin-gui --use-simulator &amp; # connect to the simulator
</pre>
<span id="Further_reading"><h3>Further reading</h3></span>
<p>You can see our design notes, plans, and a list of similar projects at <a href="https://www.unsyncopated.com/wiki/Creds101">the wiki page</a> but beware the outdated Secret Sharing content.</p>
<p>I&#8217;m accumulating all the research papers, datasheets, and application notes I&#8217;ve encountered during this project in <a href="http://unsyncopated.com/hg/creds101-research_materials/file/tip">a &#8220;research materials&#8221; repository</a>. You might find the contents useful if you&#8217;re trying to choose an AES implementation for an AVR microcontroller or if your project falls into one of these categories: &#8220;cryptographic co-processor&#8221;, &#8220;hardware security module&#8221;, &#8220;embedded secret secret sharing&#8221;, &#8220;ubiquitous/pervasive computer security&#8221;, or &#8220;tamper evidence/proof&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://unsyncopated.com/blog/index.php/2010/02/20/creds101-v0-1-release/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dell Mini 9 unboxing</title>
		<link>http://unsyncopated.com/blog/index.php/2009/01/16/dell-mini-9-unboxing/</link>
		<comments>http://unsyncopated.com/blog/index.php/2009/01/16/dell-mini-9-unboxing/#comments</comments>
		<pubDate>Fri, 16 Jan 2009 12:01:43 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[Flickr]]></category>
		<category><![CDATA[Hardware]]></category>

		<guid isPermaLink="false">http://unsyncopated.com/blog/index.php/2009/01/16/dell-mini-9-unboxing/</guid>
		<description><![CDATA[My Dad ordered a Dell Mini 9 netbook recently. I took some photos of the unboxing. Here are a few miscellaneous thoughts: You know how IE plays that little &#8220;mouse click&#8221; sound when accessing a new web page? It&#8217;s not so bad except for the fact that it often happens a second or so &#8221;&#8217;after&#8221;&#8217; [...]]]></description>
			<content:encoded><![CDATA[<p>My Dad ordered a Dell Mini 9 netbook recently. I took <a href="http://www.flickr.com/photos/55502932@N00/tags/dellmini9/">some photos of the unboxing</a>. 						<div class="flickr-gallery image right"><a href="http://www.flickr.com/photos/55502932@N00/3202059406"><img class="flickr small" title="Dell Mini 9" alt="Dell Mini 9" src="http://farm4.static.flickr.com/3312/3202059406_24d26ffc62_m.jpg" /></a></div>
					</p>
<p>Here are a few miscellaneous thoughts:</p>
<ul>
<li><span style="font-size: 13.3333px;">You know how IE plays that little &#8220;mouse click&#8221; sound when accessing a new web page? It&#8217;s not so bad except for the fact that it often happens a second or so &#8221;&#8217;after&#8221;&#8217; you click on a hyperlink. This makes the computer feel slow and/or broken.</span></li>
<li><span style="font-size: 13.3333px;">Windows XP claimed it &#8220;successfully restored&#8221; my wifi connection even though IE still couldn&#8217;t access Google.</span></li>
<li><span style="font-size: 13.3333px;">The netbook sometimes plays a quiet hissing sound instead of an audio clip.</span></li>
<li><span style="font-size: 13.3333px;">Dell has prepackaged Google Desktop Search on this machine. A few minutes after completing Windows setup, the Google Desktop Search icon notified me that &#8220;Google has blocked an attempt by another program to change your search preferences&#8221;. I suspect it was IE, but c&#8217;mon, &#8221;&#8217;pre-installed&#8221;&#8217; software shouldn&#8217;t fight with itself.</span></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://unsyncopated.com/blog/index.php/2009/01/16/dell-mini-9-unboxing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xbox 360 Arbitrary Code Execution</title>
		<link>http://unsyncopated.com/blog/index.php/2007/03/22/xbox-360-arbitrary-code-execution/</link>
		<comments>http://unsyncopated.com/blog/index.php/2007/03/22/xbox-360-arbitrary-code-execution/#comments</comments>
		<pubDate>Thu, 22 Mar 2007 17:16:40 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Reverse engineering]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://unsyncopated.com/blog/?p=663</guid>
		<description><![CDATA[An anonymous researcher has published a detailed write-up on how to execute arbitrary code with high privileges on a recent Xbox 360 kernel. The vulnerability exists in the (now patched) system call handler. There&#8217;s no googleprint for anohacker@gmail.com so I&#8217;m assuming this person created that email address just for the purpose of disclosing this vulnerability. [...]]]></description>
			<content:encoded><![CDATA[<p>						<div class="flickr-gallery image right"><a href="http://www.flickr.com/photos/55502932@N00/4454127405"><img class="flickr small" title="Anonymous XBox Hacker at 23c3" alt="Anonymous XBox Hacker at 23c3" src="http://farm5.static.flickr.com/4013/4454127405_2304d1efab_m.jpg" /></a></div>
					<br />
An anonymous researcher has <a href="http://marc.theaimsgroup.com/?t=117261923100002">published a detailed write-up</a> on how to execute arbitrary code with high privileges on a recent Xbox 360 kernel. The vulnerability exists in the (now patched) system call handler.</p>
<p>There&#8217;s no <a href="http://www.google.com/search?q=anohacker">googleprint for anohacker@gmail.com</a> so I&#8217;m assuming this person created that email address just for the purpose of disclosing this vulnerability.</p>
<p>Since the report cites 12/30/2006 as the date of &#8220;public demonstration&#8221;, it&#8217;s probably safe to say that the person who posted this report is the same masked (German?) guy that gave the <a href="http://events.ccc.de/congress/2006/Lightning_Talks#Day_4_-_December_30th">mysterious lightening talk</a> at <a href="http://events.ccc.de/congress/">23c3</a> called &#8220;<a href="http://www.digg.com/linux_unix/23c3_XBOX_360_was_hacked_Linux_Kernel_coming_soon">Consolen Hacking Suprise</a>&#8220;. Pay no attention to the man behind the black bandana! He&#8217;s only breaking (one of?) the most technically advanced game console security system ever devised &#8211; a security archictecture in which Microsoft has invested tens of millions of dollars.</p>
<p>If anybody has any more technical details or knows where this researcher hangs out on IRC/forums, I&#8217;d love to know.</p>
<p>As expected, <a href="http://games.slashdot.org/games/07/02/28/2325212.shtml">the Slashdot story</a> has some of the best commentary on the topic:</p>
<ul>
<li><a href="http://games.slashdot.org/comments.pl?sid=224594&amp;cid=18189160">Debate over whether Xbox 360 gamers &#8220;own&#8221; or &#8220;license&#8221;</a> the system.</li>
<li><a href="http://games.slashdot.org/comments.pl?sid=224594&amp;cid=18189268">Some idle speculation</a> on why Windows Media DRM and Xbox security vulnerability fixes are pushed out to end users roughly 22 times <a href="http://blog.washingtonpost.com/securityfix/2006/01/a_time_to_patch.html">faster than critical Windows OS vulnerabilities</a>.</li>
<li>And finally, <a href="http://games.slashdot.org/comments.pl?sid=224594&amp;cid=18192416">a proper response</a> to some dillweed who said &#8220;we shouldn&#8217;t use C anymore! it&#8217;s insecure!&#8221;</li>
</ul>
<p>Console security really fascinates me because its a realm where the manufacturer has almost complete control over the design of the entire system, and that system is destined to be in the hands of millions of hackers and homebrew enthusiasts.</p>
<p>I&#8217;ll leave the final word to <a href="http://community.corest.com/~gera/">Gerardo Richarte</a> (aka gera) from Core Security who sees <a href="http://marc.theaimsgroup.com/?l=bugtraq&amp;m=117268303919177&amp;w=2">the death of the freedom to tinker on the horizon</a>.</p>
<p>Further reading: <a href="http://forums.xbox-scene.com/index.php?showtopic=495800&amp;referid=&amp;highlight=efuse"></a></p>
<ul>
<li><a href="http://forums.xbox-scene.com/index.php?showtopic=495800&amp;referid=&amp;highlight=efuse">IBM &#8220;efuse&#8221; technology</a></li>
<li>gera&#8217;s write-up on a <a href="http://www.coresecurity.com/index.php5?action=item&amp;id=1179">vulnerability in a linksys router</a> that I own. It includes disassembled firmware code and python exploit code. Nice.<a href="http://forums.xbox-scene.com/index.php?showtopic=495800&amp;referid=&amp;highlight=efuse"><br />
</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://unsyncopated.com/blog/index.php/2007/03/22/xbox-360-arbitrary-code-execution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Intel Motherboarding</title>
		<link>http://unsyncopated.com/blog/index.php/2007/02/07/intel-motherboarding/</link>
		<comments>http://unsyncopated.com/blog/index.php/2007/02/07/intel-motherboarding/#comments</comments>
		<pubDate>Wed, 07 Feb 2007 19:10:38 +0000</pubDate>
		<dc:creator>Tyler</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://unsyncopated.com/blog/?p=767</guid>
		<description><![CDATA[If you&#8217;re trying to install the Intel(R) Chipset Software Installation Utility (aka drivers) from a CD and you encounter a message like &#8220;usbehci.sys on (Unknown) is needed&#8221;, you may want to try installing Service Pack 2 if you&#8217;re on Windows XP. Worked for me. Speaking of Intel, kudos to them for having the best website [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re trying to install the Intel(R) Chipset Software Installation Utility (aka drivers) from a CD and you encounter a message like &#8220;usbehci.sys on (Unknown) is needed&#8221;, you may want to try installing Service Pack 2 if you&#8217;re on Windows XP. Worked for me.</p>
<p><span style="font-size: 13.3333px;">Speaking of Intel, kudos to them for having the <em>best</em> website of any motherboard manufacturer I&#8217;ve bought from. Their motherboard pages have</span></p>
<ul>
<li>High resolution pictures of the boards.</li>
<li><em>Detailed </em>specs for each available &#8220;configuration&#8221;.</li>
<li>BIOS updates (including old ones) in 4 different formats including bootable CDs.</li>
<li>3 effective ways to identify an Intel board (BIOS string, sticker label on board, part number)</li>
<li>Detailed information on where temperature sensors are located.</li>
</ul>
<p>They also support the Linux community by releasing <a href="http://intellinuxgraphics.org/">quality open-source graphics drivers</a>. Very, very nice.</p>
<p>If you want to install Ubuntu on a 965-based Intel board like the DQ965GF, I recommend the third Fiesty Fawn milestone, <a href="http://www.ubuntu.com/testing/herd3">Herd 3</a>. With Herd 3, you get the 2.6.20 kernel which supports <a href="http://kvm.qumranet.com/kvmwiki">KVM</a>, a loadable kernel module to support hardware virtualization (scoooore!).</p>
<p>Because the 965 chipset is new, there are still some kinks. At first the installer crapped out and left me with:</p>
<pre>BusyBox [ver] Built-in shell (ash)
Enter 'help' for a list of built-in commands.

/bin/sh: can't access tty; job control turned off</pre>
<p>Later on, I got garbled X graphics.</p>
<p>The solution to these problems was to add &#8220;vga=771 all-generic-ide pci=nommconf&#8221; to my kernel options line after booting to the install CD (hit F6 when the installer while you&#8217;ve got the &#8220;Start or install Ubuntu&#8221; menu item selected). Your final options line should read &#8220;file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.gz vga=771 all-generic-ide pci=nommconf quiet splash &#8211;&#8221;. I removed &#8220;quiet&#8221; and changed &#8220;splash&#8221; to &#8220;nosplash&#8221; also.</p>
<p>Windows XP Profession rebooted every time it tried to load &#8220;mup.sys&#8221; during bootup. The fix was to change the BIOS setting for Configure SATA As&#8221; (Advanced Tab -&gt; Drive Configuration) from &#8220;AHCI&#8221; to &#8220;IDE&#8221;. Note that this will nix any benefit you get from SATA.</p>
<p>Some of these links were helpful:</p>
<ul>
<li><span style="font-size: 13.3333px;"><a href="http://vip.asus.com/forum/view.aspx?board_id=1&amp;model=P5W+DH+Deluxe&amp;id=20060718094204123&amp;page=1&amp;SLanguage=en-us">Configure SATA as [Standard IDE] or [AHCI] ??? </a></span></li>
<li><span style="font-size: 13.3333px;"><a href="http://www.blindedbytech.com/2006/11/10/how-to-install-fedora-core-6-on-intel-dg965ss-motherboard/">How To: Install Fedora Core 6 On Intel DG965SS Motherboard</a></span></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://unsyncopated.com/blog/index.php/2007/02/07/intel-motherboarding/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

