<?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>floekblog &#187; Cryptodev</title>
	<atom:link href="http://www.floek.net/tag/cryptodev/feed" rel="self" type="application/rss+xml" />
	<link>http://www.floek.net</link>
	<description></description>
	<lastBuildDate>Wed, 19 May 2010 13:49:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>openvpn with cryptodev support</title>
		<link>http://www.floek.net/technical/linux-co/openvpn-with-cryptodev-support</link>
		<comments>http://www.floek.net/technical/linux-co/openvpn-with-cryptodev-support#comments</comments>
		<pubDate>Tue, 26 Aug 2008 04:56:58 +0000</pubDate>
		<dc:creator>floek</dc:creator>
				<category><![CDATA[Linux & Co.]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Cryptodev]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenVPN]]></category>

		<guid isPermaLink="false">http://www.floek.net/linux-co/openvpn-with-cryptodev-support</guid>
		<description><![CDATA[Da ich seit einigen Tagen Besitzer eines Alix 6B2 mit Geode CPU bin, musste natürlich auch die Hardware AES Beschleunigung dieser Plattform ausgenutzt werden. Um das ganze unter Linux zum laufen zu bekommen, ist etwas patching nötig. Unter diversen *BSD Varianten funktioniert das wohl &#8220;out of the box&#8221;. Es braucht einen Linux Kernel mit geode-aes [...]]]></description>
			<content:encoded><![CDATA[<p>Da ich seit einigen Tagen Besitzer eines <a href="http://www.pcengines.ch/alix6b2.htm">Alix 6B2</a> mit Geode CPU bin, musste natürlich auch die Hardware AES Beschleunigung dieser Plattform ausgenutzt werden. Um das ganze unter Linux zum laufen zu bekommen, ist etwas patching nötig. Unter diversen *BSD Varianten funktioniert das wohl &#8220;out of the box&#8221;. Es braucht einen Linux Kernel mit geode-aes support und den Cryptodev Patches. Ich habe die <a href="http://ocf-linux.sourceforge.net/">OCF Impelementierung</a> und einen Standard 2.6.26.2 Kernel genutzt. Im Archiv <code>ocf-linux-20080704.tar.gz</code> gibt es ein Unterverzeichniss <code>ocf</code> welches nach <code>linux-2.6.26.2/crypto/ocf</code> kopiert werden möchte. Anschließend habe ich den Kernel patch angewendet: <code>linux-2.6.26.2 $ patch -p0 < ../ocf-linux-26-20080704.patch</code>. Laut einem <a href="http://sourceforge.net/mailarchive/forum.php?thread_name=1216854180.3701.11.camel%40ukdev-lin-jag&#038;forum_name=ocf-linux-users">Mailinglisten Eintrag</a> auf der OCF Liste brauchts noch einen Patch für 2.6.26er kernel. Diesen habe ebenfalls eingespielt: <code>linux-2.6.26.2 $ patch -p0 < ../ocf-2.6.26.patch</code>. Nun kann man normal via <code>make menuconfig</code> seinen Kernel konfigurieren. Für crypdodev support auf Geode sind folgende Einstellungen nötig:<br />
<code><br />
CONFIG_OCF_OCF=m<br />
CONFIG_OCF_CRYPTODEV=m<br />
CONFIG_OCF_CRYPTOSOFT=m<br />
CONFIG_CRYPTO_DEV_GEODE=m<br />
</code><br />
Sobald der Kernel gebootet ist, sollte man die Module <code>geode-aes</code>, <code>ocf</code>, <code>cryptodev</code> und <code>cryptosoft</code> laden können und über die cryptotools erste Tests (z.B. <code>cryptotest 100 4096</code>) machen können. Damit nun auch Anwendungen wie z.B. <a href="http://www.openvpn.net">OpenVPN</a> von der Hardwareunterstützung profitieren können, muss <a href="http://www.openssl.org">openssl</a> gepatcht werden. Ich habe hierzu das Source Paket von openssl aus dem kommenden Debian lenny verwendet, gepatcht und installiert:<br />
<code><br />
# apt-get --default-release=lenny source openssl<br />
# cd openssl-0.9.8g/<br />
openssl-0.9.8g # patch -p0 < ../ocf-linux-20080704/openssl-0.9.8g.patch<br />
openssl-0.9.8g # vi debian/rules<br />
[...]<br />
CONFARGS  = --with-cryptodev --prefix=/usr --openssldir=/usr/lib/ssl no-idea no-mdc2 no-rc5 zlib  enable-tlsext<br />
[...]<br />
"debian/rules" 173L, 6720C geschrieben<br />
openssl-0.9.8g # dpkg-buildpackage -rfakeroot -uc -b<br />
</code><br />
Sobald die gepatchte openssl Version installiert ist kann man via <code>openssl engine</code> prüfen ob crpytodev Support gegeben ist. Falls ja trägt man noch<br />
<code><br />
cipher AES-128-CBC<br />
engine cryptodev<br />
</code> in seine OpenVPN Config ein und kann von der Hardware Beschleunigung profitieren.</p>
<p>Folgendes Howto hat sehr weitergeholfen:<br />
<a href="http://www.docunext.com/wiki/My_Notes_on_Patching_2.6.22_with_OCF">http://www.docunext.com/wiki/My_Notes_on_Patching_2.6.22_with_OCF</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.floek.net/technical/linux-co/openvpn-with-cryptodev-support/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
