<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.0.2" -->
<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/"
	>

<channel>
	<title>Trusted Computing Blog</title>
	<link>http://www.jesusmolina.com/TCGblog</link>
	<description>Trusted Computing Group reserach discussion</description>
	<pubDate>Mon, 08 May 2006 17:33:44 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.2</generator>
	<language>en</language>
			<item>
		<title>TNC activity at InterOp</title>
		<link>http://www.jesusmolina.com/TCGblog/archives/12</link>
		<comments>http://www.jesusmolina.com/TCGblog/archives/12#comments</comments>
		<pubDate>Mon, 08 May 2006 17:31:35 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Trusted Computing</category>
		<guid isPermaLink="false">http://www.jesusmolina.com/TCGblog/archives/12</guid>
		<description><![CDATA[Several TNC implementation were presente @ InterOp (Las Vegas). The TNC is a multilayered standard which can be implemented on top of other technologies, including IEEE 802.1x and SSL, but currently only bindings exits for tunneled EAP methods. TNC provides interfaces for integrity data collection, verification, transportation and policy enforcement.
Press coverage of the event can be found here and here.
Further information on interop coverage [...]]]></description>
			<content:encoded><![CDATA[<p>Several TNC implementation were presente @ <a href="http://www.interop.com/" target="_blank">InterOp</a> (Las Vegas). The <a href="https://www.trustedcomputinggroup.org/groups/specs/TNC" target="_blank">TNC is a multilayered standard</a> which can be implemented on top of other technologies, including IEEE 802.1x and SSL, but currently only bindings exits for tunneled EAP methods. TNC provides interfaces for integrity data collection, verification, transportation and policy enforcement.</p>
<p>Press coverage of the event can be found <a href="http://www.eetimes.com/news/latest/showArticle.jhtml?articleID=187200845" target="_blank">here</a> and <a href="http://www.internetnews.com/infra/article.php/3604146" target="_blank">here</a>.</p>
<p>Further information on interop coverage can be found at the <a href="https://www.trustedcomputinggroup.org/news/events/interop_2006/" target="_blank">TCG site</a> 
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.jesusmolina.com/TCGblog/archives/12/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>TPM compliance study</title>
		<link>http://www.jesusmolina.com/TCGblog/archives/11</link>
		<comments>http://www.jesusmolina.com/TCGblog/archives/11#comments</comments>
		<pubDate>Wed, 03 May 2006 15:26:53 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Trusted Computing</category>
		<guid isPermaLink="false">http://www.jesusmolina.com/TCGblog/archives/11</guid>
		<description><![CDATA[A TPM compliance study at the HGI institute for IT-security (Ruhr-University Bochum) show that some of the studied TPMs are not fully compliant with the TCG standard, due to some bugs.
The study is interesting, but somewhat misleading in certain aspects. As an example, AES, DES and 3-DES are not required to be supported by the [...]]]></description>
			<content:encoded><![CDATA[<p><a target="_blank" href="http://www.prosec.rub.de/tpmcompliance.html">A TPM compliance study</a> at the <a href="http://www.prosec.rub.de/index.html">HGI institute</a> for IT-security (<a target="_blank" href="http://www.ruhr-uni-bochum.de/">Ruhr-University Bochum</a>) show that some of the studied TPMs are not fully compliant with the TCG standard, due to some bugs.<br />
The study is interesting, but somewhat misleading in certain aspects. As an example, AES, DES and 3-DES are not required to be supported by the standard, so I am unsure why they appear in the table. The TCG compliance tests are only checjing the existance of seven known TPM bugs as far as I understand from the report.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.jesusmolina.com/TCGblog/archives/11/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>TCG and PKI</title>
		<link>http://www.jesusmolina.com/TCGblog/archives/10</link>
		<comments>http://www.jesusmolina.com/TCGblog/archives/10#comments</comments>
		<pubDate>Tue, 15 Nov 2005 06:38:45 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Trusted Computing</category>
		<guid isPermaLink="false">http://www.jesusmolina.com/TCGblog/archives/10</guid>
		<description><![CDATA[Efforts to standarize Endorsement Key (EK) certfication between infineon and Verisign:
Press Release

]]></description>
			<content:encoded><![CDATA[<p>Efforts to standarize Endorsement Key (EK) certfication between <a href="http://www.infineon.com/cgi-bin/ifx/portal/ep/home.do?tabId=0">infineon</a> and <a href="http://www.verisign.com/">Verisign</a>:</p>
<p><a href="http://www.infineon.com/cgi-bin/ifx/portal/ep/contentView.do?channelId=-65777&#038;prgId=&#038;yearId=-73845&#038;contentId=154420&#038;programId=44110&#038;pageTypeId=17226&#038;contentType=NEWS&#038;endIndex=4&#038;quarterId=-78123&#038;startIndex=0&#038;searchString=&#038;channelPage=%2Fep%2Fchannel%2FnewsChannel.jsp&#038;BV_SessionID=@@@@2028791932.1132036638@@@@&#038;BV_EngineID=ccceaddgejhflmkcflgcegndfifdfoi.0">Press Release</a>
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.jesusmolina.com/TCGblog/archives/10/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>TC use cases I: The army botnet</title>
		<link>http://www.jesusmolina.com/TCGblog/archives/9</link>
		<comments>http://www.jesusmolina.com/TCGblog/archives/9#comments</comments>
		<pubDate>Mon, 17 Oct 2005 18:37:22 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Trusted Computing</category>
		<guid isPermaLink="false">http://www.jesusmolina.com/TCGblog/archives/9</guid>
		<description><![CDATA[What will you do if the army calls your computer to duty? This scenario is now possible under the trusted computing framework.
Everybody knows about distributed projects like SETI@HOME, and perhaps you have also heard about the failed Lycos anti-spam screensaver. Criminals use botnets to create on-demand distributed DOS attacks. Could the same distributed computing paradigm [...]]]></description>
			<content:encoded><![CDATA[<p>What will you do if the army calls your computer to duty? This scenario is now possible under the trusted computing framework.</p>
<p>Everybody knows about distributed projects like <a href="http://setiathome.ssl.berkeley.edu/">SETI@HOME</a>, and perhaps you have also heard about the failed <a href="http://it.slashdot.org/article.pl?sid=04/12/02/2221253&#038;tid=111&#038;tid=95&#038;tid=17">Lycos anti-spam screensaver</a>. Criminals use botnets to create on-demand distributed DOS attacks. <strong>Could the same distributed computing paradigm be exploited by the government for military purposes?</strong></p>
<p>Cyberwarfare has received increased attention lately. An article by James Mulvenon proposed the search for a <a href="http://csdl2.computer.org/persagen/DLAbsToc.jsp?resourcePath=/dl/mags/sp/&#038;toc=comp/mags/sp/2005/04/j4toc.xml&#038;DOI=10.1109/MSP.2005.110">cyberconflict agenda</a>, and many argued on possible scenarios in the event of a cyberwar. Those issues are not solely based on futuristic settings: the news hyped recently the case of the <a href="http://www.time.com/time/archive/preview/0,10987,1098961,00.html">“chinese cyberspies”</a>, and how their actions threatened national security. </p>
<p>If we assume that computational power and bandwidth will be key factors in future conflicts, a valid question is whether the military will request for civilian help, a kind of (voluntary or obligatory) “military duty” for civilian computers. The cycles and bandwidth provided by civilians could be used for breaking cryptographic enemy keys using distributed computation, launching attacks against chosen strategic targets (enemy sites, etc) or automated web-crawling to gather intelligence or to hunt for specific enemy sites. </p>
<p>Of course, while activities like SETI@HOME doesn’t require a great level of confidence on the trustworthiness of the user, military activities do require a high level of trust in the machine. The machines need, as a minimum, to be correctly identified, and tested to be resistant to subversion. The information sent and received from the machine may be confidential, even by the machine owner. This was not possible under the current framework, but current research shows that Trusted Computing could provide this level of assurance.</p>
<p><a href="http://footstool.stanford.edu/~jchow/papers/sosp03/terra.pdf">The Terra project</a>, for example, used virtual machines coupled with trusted computing to claim a high level of assurance on distributed applications, showing a “cheat-proof” quake as proof of concept. Research at IBM proposed a <a href="http://ieeexplore.ieee.org/iel5/9752/30765/01425065.pdf?isnumber=30765&#038;prod=STD&#038;arnumber=1425065&#038;arnumber=1425065&#038;arSt=+154&#038;ared=+168&#038;arAuthor=+Shi%2C+E.%3B++Perrig%2C+A.%3B++Van+Doorn%2C+L.">scheme</a> (using a secure processor and memory) for fine grained attestation for sensitive applications. Adding confidentiality to those schemes using the internal keys of the TPM will not be difficult. </p>
<p>I am aware that the use of non-military computers by the government will raise lots of questions from the legal and policy standpoints. I am not an authority on the subject, but maybe <a href="http://cyberlaw.stanford.edu/blogs/bechtold/tcblog.shtml">Stefan</a> could comment on the feasibility of such a scenario. In this article I only wnated to point out that <strong>TC technology allows the creation of such a botnet </strong>for the army.</p>
<p>Only hope you don’t get an email at work saying “The Secretary of the Army has asked me to express his deep regret that your laptop Fujitsu 8010d S/N 344455 was destroyed in action this morning on an heroic attack to the axis of evil’s central servers”</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.jesusmolina.com/TCGblog/archives/9/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>TC Linux software</title>
		<link>http://www.jesusmolina.com/TCGblog/archives/8</link>
		<comments>http://www.jesusmolina.com/TCGblog/archives/8#comments</comments>
		<pubDate>Tue, 11 Oct 2005 13:46:03 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Trusted Computing</category>
		<guid isPermaLink="false">http://www.jesusmolina.com/TCGblog/archives/8</guid>
		<description><![CDATA[The Trusted Computing Group released open standards, and the open source community has responded by releasing a set of tools implementing the standards. I will describe here those efforts. If you know any others, please let me know.
In the event you don’t happen to have the chip needed for trusted computing (Trusted Platform Module), or [...]]]></description>
			<content:encoded><![CDATA[<p>The <strong>Trusted Computing Group</strong> released open standards, and the open source community has responded by releasing a set of tools implementing the standards. I will describe here those efforts. If you know any others, please let me know.</p>
<p>In the event you don’t happen to have the chip needed for trusted computing (Trusted Platform Module), or you are afraid of enabling it after reading the <a href="http://www.cl.cam.ac.uk/~rja14/tcpa-faq.html">scare tales</a>, you can still build software and test the different applications of trusted computing using <a href="http://tpm-emulator.berlios.de/index.html">Mario Strasser’s emulator</a>. The emulator is in the form of a kernel module, and implements <a href="http://tpm-emulator.berlios.de/documentation.html">most of the functionalities</a> described on the standard. If you don’t want a TPM any more, just rmmod the module.</p>
<p>If you already have the chip, the drivers are already on the Kernel since version 2.6.13. To my knowledge, Atmel and Infineon chips are supported. If you have older versions of the kernel, only Atmel chips are supported, but you can still download the drivers <a href="http://www.prosec.rub.de/tpm/">form here</a>. I have succesfully used the driver on a <a href="http://store.shopfujitsu.com/fpc/Ecommerce/buildseriesbean.do?series=E82D">Fujitsu E8010d</a> laptop.</p>
<p>To access the chip from the application layer you need a software stack, called the <a href="https://www.trustedcomputinggroup.org/groups/software/TSS_Version__1.1.pdf">Trusted Software Stack</a>. IBM has already implemented the stack and libraries to create Trusted Computing compliant software for Linux.  As defined by the standard, a software daemon (tcsd) is the single point used to access the drivers. The project is called <a href="http://trousers.sourceforge.net/">Trousers</a>, and it works well with the emulator (latest version on the subversion repository).</p>
<p>There is, however, not a stable project to implement the trust chain in the Linux OS and bootloader. <a href="http://www.prosec.rub.de/trusted_grub.html">Trusted Grub</a>, <a href="http://www.research.ibm.com/secure_systems_department/projects/tcglinux/">TCGlinux</a> (no sources readily available) and <a href="http://enforcer.sourceforge.net/">BEAR</a> (no longer mantained) are some of these efforts, but none seems to provide a clear documentation on how to do that. While <a href="http://www.microsoft.com/technet/windowsvista/evaluate/admin/mngsec.mspx">VISTA</a> is supposed to provide support for the trust chain, I am unsure if the Linux community will follow suit and implement this capabilities on the mainstream Kernel. At least I know there is some efoort from the Gentoo distributions, with <a href="http://www.gentoo.org/news/20050202-trustedgentoo.xml">trusted gentoo</a></p>
<p>If you want to create your own TCG testbed (TPM, Drivers and TSS,), read my follow up article on  putting it all together</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.jesusmolina.com/TCGblog/archives/8/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Virtualization and Trusted Computing</title>
		<link>http://www.jesusmolina.com/TCGblog/archives/7</link>
		<comments>http://www.jesusmolina.com/TCGblog/archives/7#comments</comments>
		<pubDate>Thu, 18 Aug 2005 03:14:27 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Trusted Computing</category>
		<guid isPermaLink="false">http://www.jesusmolina.com/TCGblog/archives/7</guid>
		<description><![CDATA[What is the deal with Virtualization and Trusted Computing? Why is Intel so interested? In this entry I will discuss why those technologies could shape the future of computing.
To understand the why, first we need to understand the problem with the “killer” application of TC, which is attestation. Attestation basically “fingerprints” your computer, so other [...]]]></description>
			<content:encoded><![CDATA[<p>What is the deal with Virtualization and Trusted Computing? Why is Intel so interested? In this entry I will discuss why those technologies could shape the future of computing.</p>
<p>To understand the why, first we need to understand the problem with the “killer” application of TC, which is attestation. Attestation basically “fingerprints” your computer, so other parties can verify the correctness of your current state.</p>
<p><strong>Attestation</strong></p>
<p>The main goal of attestation is to provide (securely) a snapshot of the current state to other parties.</p>
<p>When the computer boots up, in a computer TCG enabled, the first thing that will execute is the so called CRT (Core Root of Trust). This CRT will measure (hash using SHA1) the next software to be loaded (BIOS), as well as some configuration files related to the firmware. The BIOS, will then measure the next piece of software to be launched (bootloader, possibly) and execute it. </p>
<p>If the Bootloader has been TCG enabled (for example, <a href="http://www.prosec.rub.de/trusted_grub.html">Trusted Grub</a>) then it will in turn measure the Operating System. In theory, the OS will have to continue with the chain of trust, measuring every piece of codes that executes, and main configuration files.  Some examples on the reserch arena on how and what can we measure are BEAR and TCGLinux.</p>
<p>Once all this information is acquired, this information could be sent to challenging parties, as outlined by the <a href="https://www.trustedcomputinggroup.org/downloads/TNC/">Trusted Network Connect</a> specifications. </p>
<p><strong>The Problems with atttestation</strong></p>
<p>The first, and probably biggest problem, is the Time of Execution vs. Time of Attestation. The attested unit will provide a snapshot of its state at the moment of attestation, but what happens next? The attacker can subvert the machine right after attestation. Works like BIND tries to address this problem</p>
<p>The second problem are the attestation metrics and the interface to collect the information. How can we measure a monster like Windows XP? How can we avoid from subverting the interface collectors themselves (drivers) by, for example, installing a <a href="http://www.amazon.com/exec/obidos/tg/detail/-/0321294319/002-4036750-2371235?v=glance">Rootkit</a>?</p>
<p>The proposed solution by Intel and Microsoft is to create a Secure Kernel, that will run in parallel with you commodity OS. This secure kernel will be minimalist, and difficult to change from the user perspective. The secure Kernel will be inaccessible by the commodity OS, but the reverse will not apply, hence the SK is granted unrestricted access to the commodity OS. This is not <a href="http://www.jesusmolina.com/presentations/EmbeddedIDS_files/frame.htm">new</a></p>
<p><strong>Xen and Nexus</strong></p>
<p>Nexus was the solution proposed by Microsoft and its <a href="http://www.microsoft.com/resources/ngscb/default.mspx">NGSCB</a>, but that didn’t seem to quite catch up, at least,  not yet. From their website </p>
<blockquote><p>Our original approach was to create a new secure computing base that would run parallel to the regular Windows environment</p></blockquote>
<p>Now the only care for what they call “A Secure Startup”, which is just an “Attested” startup. Is yet to be seen how they will deal with the mentioned problems. Why? They say </p>
<blockquote><p>customers were concerned [they have to] rewrite all of their applications</p></blockquote>
<p>Probably true, although the Nexus could have worked somehow transparently. But I believe Microsoft don’t really care about this. The main problem is that there is <em>no money to make</em>, and quite a bit to loose if the new implementation really breaks some applications.</p>
<p>But Intel is still working on the problem, as shown by their vigorous support for the open source virtual machine monitor named <a href="http://www.cl.cam.ac.uk/Research/SRG/netos/xen/">Xen</a>. There is a good reason behind this: Intel has a big winning ticket at the end of the road.  If this architecture catches up, Intel will gain power on interfacing issues, like drivers (and, of course, to “sign” and “authorize” peripherals). Note that Xen is not VMware, does not implement an &#8220;OS inside OS&#8221; (Actually, this is also been researched on <a href="http://www.stanford.edu/~talg/papers/SOSP03/abstract.html">Terra</a>). Xen is a layer between OS and Hardware which could control multiple OS&#8217;s. </p>
<p>Currently Microsoft is a bully in matters like drivers and peripherals. But if Intel pushes Xen, and it ships on, say, servers first were virtualization has lots of applications, they could force some major changes on the business. The next step is to use security as a convincing reason to force virtualization to the rest of us, as outlined by Carlos Rozas at the <a href="http://summit.xensource.com/pdfs/XenSecurity_Intel_CRozas.pdf">Xen summit</a>. </p>
]]></content:encoded>
			<wfw:commentRSS>http://www.jesusmolina.com/TCGblog/archives/7/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>BIND paper review</title>
		<link>http://www.jesusmolina.com/TCGblog/archives/6</link>
		<comments>http://www.jesusmolina.com/TCGblog/archives/6#comments</comments>
		<pubDate>Wed, 10 Aug 2005 20:04:34 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Trusted Computing</category>
		<guid isPermaLink="false">http://www.jesusmolina.com/TCGblog/?p=6</guid>
		<description><![CDATA[BIND was presented at the last IEEE security symposium by  IBM research.
BIND tackles the problem of attestation, but instead of attesting a whole machine, they suggest to attest the executing process in memory. To avoid dealing with the inherent problem of insecure paths and insecure execution, the work assumes that the system has a [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ieeexplore.ieee.org/iel5/9752/30765/01425065.pdf?isnumber=30765&#038;prod=STD&#038;arnumber=1425065&#038;arnumber=1425065&#038;arSt=+154&#038;ared=+168&#038;arAuthor=+Shi%2C+E.%3B++Perrig%2C+A.%3B++Van+Doorn%2C+L.">BIND</a> was presented at the last <a href="http://www.ieee-security.org/TC/SP-Index.html">IEEE security symposium</a> by <a href="http://www.research.ibm.com/gsal/tcpa/"> IBM research</a>.</p>
<p>BIND tackles the problem of attestation, but instead of attesting a whole machine, they suggest to attest the executing process in memory. To avoid dealing with the inherent problem of insecure paths and insecure execution, the work assumes that the system has a Secure Kernel (SK), a secure processor (AMD’s SEM chip) and a location aware TPM (so the main kernel cannot override the PCR’s). With all that elements in place, the steps are: </p>
<ul>
<li>Have the insecure OS call the SK</li>
<li>attest the process by extending a PCR register</li>
<li>execute the process in the SEM</li>
<li>send this attestation along with the output of the process</li>
</ul>
<p>As a system researcher I believe that, even when you make some assumptions, you need to make at least an effort to implement your solution. Accessing the TPM alone, which sits in the LPC bus, takes usually a second. This will be prohibitive for many processes if we do this type of fine-grained attestation. But I guess we can throw yet one more assumption, that the TPM is faster than current implementation.</p>
<p>IBM research usually looks far ahead in the future. The amount of work to implement such a system is colossal (Virtual Machine, Secure Kernel, secure processor, TPM with added capabilities). But maybe that is were we headed? A brownie for the first open source implementation!</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.jesusmolina.com/TCGblog/archives/6/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>The era of Trusted Computing?</title>
		<link>http://www.jesusmolina.com/TCGblog/archives/4</link>
		<comments>http://www.jesusmolina.com/TCGblog/archives/4#comments</comments>
		<pubDate>Mon, 08 Aug 2005 21:11:04 +0000</pubDate>
		<dc:creator>Administrator</dc:creator>
		
	<category>Trusted Computing</category>
		<guid isPermaLink="false">http://www.jesusmolina.com/TCGblog/?p=4</guid>
		<description><![CDATA[Trusted Computing is arriving slowly but with firm steps to all computers. Trusted Platform Modules (TPM) are now embedded in many computers, and is expected that by 2008 most systems will be shipped with a TCG complient TPM. 
While TPM 1.1, the current version shipped with many computers, is nothing more than a smartcard  [...]]]></description>
			<content:encoded><![CDATA[<p>Trusted Computing is arriving slowly but with firm steps to all computers. Trusted Platform Modules (TPM) are now embedded in many computers, and is expected that by 2008 most systems will be shipped with a TCG complient TPM. </p>
<p>While TPM 1.1, the current version shipped with many computers, is nothing more than a smartcard  sitting in the LPC bus, the next TPM version promises many more features. The uses of trusted computing are many, including remote attestation, secure storage, and, yes, DRM.  Some more interesting uses can be found <a href="http://invisiblog.com/1c801df4aee49232/article/0df117d5d9b32aea8bc23194ecc270ec">here</a>
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.jesusmolina.com/TCGblog/archives/4/feed/</wfw:commentRSS>
		</item>
	</channel>
</rss>
