Slashdot Mirror


TCPA Support in Linux

kempokaraterulz writes "Linux Journal is reporting that "The Trusted Computing Platform Alliance has published open specifications for a security chip and related software interfaces.". In the latest Gentoo Newsletter they talk about a possible 'Trusted Gentoo', and possible uses for hardware level security."

66 of 501 comments (clear)

  1. Finally ready for the main stream by kaustik · · Score: 4, Funny

    It really makes me happy to see that Linux distributers are finally seeing the light and providing the community with things we need in an Operating System. Hopefully this will lead to other advances in the wonderful world of DRM.
    sigh

    1. Re:Finally ready for the main stream by yason · · Score: 4, Interesting
      It really makes me happy to see that Linux distributers are finally seeing the light and providing the community with things we need in an Operating System. Hopefully this will lead to other advances in the wonderful world of DRM.

      It has been my understanding that trusted computing equals not DRM automatically. Trusted computing is initially neutral technology: the barriers are built up only after the chip gets to choose a side. You can let Microsoft turn your PC into a DRM environment using TCPA's technology but that's the Microsoftish / {MP,RI,??}AA'ish approach. You can also use TCPA to turn your Linux box into a hardware-reinforced installation of your choice. If TCPA was widespread, you could for example control how the bastard big co. digitally uses, views and copies personal information when you buy something on their website.

    2. Re:Finally ready for the main stream by Minna+Kirai · · Score: 2, Informative

      You can also use TCPA to turn your Linux box into a hardware-reinforced installation of your choice.

      If you have the technical brainpower to use TCPA + Linux to build yourself a secure hardware platform, you could also more easily build an equally secure all-software Linux platform.

      The only advantage the TCPA gets from using hardware is it's a big barrier-to-entry for reverse engineers with physical access to the machine: they can't just load it up into an emulator/debugger, they also have to dissect the CPU under an electron microscope.

      TCPA, at its core, is a way for you to prove to remote companies that you haven't modified the behavior of your own computer. It accomplishes this with a combination of cryptography and tamper-resistant chips.

  2. Tee hee... published before editing was finished by PornMaster · · Score: 4, Funny

    From a programmer's perspective, the IBM version of the TPM (or TCPA chip) looks like Figure 1. Garrick, please crop the caption out of the figure itself.

    Garrick? Garrick? McFly? McFlyyyyyyyyyy?

  3. Do we really need it ? by CineK · · Score: 5, Insightful

    I mean - there are a lot of hardware security modules that can be used for building trusted systems right now.
    Isn't the only purpose of pushing things like TCPA locking the platform down ?

    --
    -- echo '[q]sa[ln0=aln256%Pln256/snlbx]sb31350717901017685 42287578439snlbxq'|dc
    1. Re:Do we really need it ? by danheskett · · Score: 4, Informative

      A locked down platform is very useful for some things.

      One thing TCPA provides that many alternatives do not is a system of sealed storage. In this scheme, an application run under the TCPA feature set can access storage that is guaranteed by hardware to be only accessible by that one application, and no others. This storage is protected by hardware encryption, and cannot be accessed directly, even by the OS. If the application itself or any component is tampered with the sealed storage is inaccessible, since the Nexus, or hardware security manager, recognizes the binary itself as the key to the sealed storage. If that binary is modified, it can no longer access the sealed storage.

      Sealed storage like this is useful in a lot of ways. Combined with a strongly encrypted internet communications a highly secure messaging system could be devised where the encryption was physically end-to-end. Since TCPA provides encryption from the keyboard, to the memory, to the Nexus to the CPU and every point in between, the plain text is only exposed when it is physically being typed - it never exisits in unecrypted digital form.

    2. Re:Do we really need it ? by bechthros · · Score: 3, Insightful

      Seems to me it's a lose-lose situation. On the one hand, until it's hacked, you have users not being able to have their machine do what they want it to do. That's obviously bad thing number one.

      But number two comes a couple years down the road from widespread adoption, when some critical flaw in TCPA is found by hackers, TCPA is hacked, and innocent businesses that have come to depend on it for security are disrupted and exploited. And then we're looking around all doe-eyed, like, "but they said it was unbreakable security, they said it was trusted computing!" TCPA is just antoher level of command heirarchy, and subject to hack.

      "Trusted computing" has got to be one of the most insidious marketing doublespeaks I've ever heard in my life. All "Trusted Computing" consists of is computers who don't trust me.

    3. Re:Do we really need it ? by Grishnakh · · Score: 2

      And how exactly is this useful to the user? Why would I want to run an application that has its own private storage which can't be accessed by other applications or the OS? The only argument I can see here is that you don't have to worry about some spyware sending your personal data to someone. But this only makes sense if you're running an insecure OS known for frequent vulnerabilities to spyware and viruses. For the rest of us, this is a non-issue. Why do we need special hardware to make up for the shortcomings of one OS?

      In reality, this hardware just opens up a big can of worms in the form of applications that don't trust the user, and prevent the user from accessing data in any way except those approved by the application maker. Why would I want to run such an application on my computer?

    4. Re:Do we really need it ? by SiliconEntity · · Score: 2

      The only argument I can see here is that you don't have to worry about some spyware sending your personal data to someone. But this only makes sense if you're running an insecure OS known for frequent vulnerabilities to spyware and viruses.

      Oh, sure. Linux is perfectly secure, right? Keep on dreaming, it must be nice.

      Actually, Linux security bugs are found all the time. Dan Bernstein had a bunch of undergraduates look and found 44 Linux security bugs in just a few weeks. The only reason Linux users are safe is because there are too few of them to be an attractive target. If and when Linux becomes popular for applications like banking, there will be plenty of malware stealing people's account numbers and draining accounts.

    5. Re:Do we really need it ? by Too+Much+Noise · · Score: 2, Insightful

      If that binary is modified, it can no longer access the sealed storage.

      This is good news for data corruption. All your data is fscked.

      If it were true, it's good news for a lot of corporations, too. Update WMP due to some security bug and you won't be able to access the authorisation data for playing the songs you purchased online. OOps! time to re-buy them! and even if you use a friendly store that will give you extra free downloads for purchased songs to cover that situation, you end up with: 1. parts of the disk space being lost (I assume that if you can't read the protected area you can't delete it either) and 2. reliance on the store not closing or losing their (presumably protected, too) customers' past transaction information due to simlar TCPA glitches.

    6. Re:Do we really need it ? by Minna+Kirai · · Score: 3, Interesting

      Oh, sure. Linux is perfectly secure, right? Keep on dreaming, it must be nice.

      Oh, sure. TCPA can protect against OS bugs? Keep on dreaming, must be nice.

      TCPA means that signed software can run with full permission. It only stops intentional exploits (programs specifically designed to infringe copyright), not accidental ones (buffer overflows or cross-site scripting).

      To block such things, there are many well known techniques that can be applied- priviledge separation, data-tainting, external-error trapping, etc. But all of those can be implemented in sofware alone, without help from TCPA or any other hardware. Conversely, TCPA without those signficiant software changes gives zero benefit.

      The only people TCPA might protect is those who put themselves at risk by running slapdash amateur software like Linux and OpenBSD, instead of staying with known quality brands like Microsoft, where security is job N!

      PS. Incidently, the flaws in your argument are directly analogous to those in George W. Bush's social security plan. In both cases, to prevent a vague danger, he suggests doing 2 different activities, when really only one of them goes towards solving the difficulty at all- the other just serves his ideological agenda (and is more elaborate and expensive, to boot).

    7. Re:Do we really need it ? by Anonym0us+Cow+Herd · · Score: 3, Interesting
      And how exactly is this useful to the user? Why would I want to run an application that has its own private storage which can't be accessed by other applications or the OS?

      I might want only a limited set of applications accessing a certian storage area.
      • P2P application
      • XMMS
      Then in a different secured storage area, I only want a limited set of applications accessing....
      • Usenet downloader
      • Pr0n Viewer
      Since I can trust the software within each group, I know that no evil RIAA people will be accessing my sacred secured storage. (Of course, torture may be allowed in the US -- after all -- think of all the poor record executives.)

      Imagine a trusted P2P application that will only interconnect with the same trusted application? The trust works both ways. Just like the RIAA thinks they can "trust" their software running my computer to not be of my own creation, or a tampered version of their software, I can "trust" that MY software running on the RIAA's computer is similarly my original code, not tampered with or substituted.
      --
      The price of freedom is eternal litigation.
    8. Re:Do we really need it ? by Minna+Kirai · · Score: 2, Insightful

      I might want only a limited set of applications accessing a certian storage area.

      You can accomplish all those things in a 100% software implementation of priviledge separation. No special TCPA hardware is needed.

      However, if you did have the special hardware, you would still need modified TCPA-aware applications and OS to make it work.

      So let's consider the two paths towards reaching your goal:
      A) A modified OS that restricts which of your applications are allowed to access which parts of your file system.
      B) A completely new PC and peripherals that have more expensive TCPA-compliant hardware, plus everything already listed in (A)

      Hopefully, you can see that the cost (in both money and complexity, which translates to opportunity for errors) of A+B is higher than the cost for A alone.

      The only thing TCPA's hardware modules do that couldn't be accomplished with pure software is make reverse engineering prohibitively expensive. It's designed solely to prevent you from knowing how to fully control your own PC.

    9. Re:Do we really need it ? by Minna+Kirai · · Score: 2, Insightful

      I can "trust" that MY software running on the RIAA's computer is similarly my original code

      No you can't. The RIAA has the money and contracts to give orders to the people holding the keys with which the software was signed. You don't have that level of influence yourself.

  4. Re:Tee hee... published before editing was finishe by theGreater · · Score: 2, Funny
    Poor Garrick:

    From the Fine Article:
    Garrick, insert this table and the next exactly where indicated. They do not have titles, and the last line of each table should span both columns.


    -theGreater.
  5. what is it good for? by Anonymous Coward · · Score: 2, Insightful

    The only benefits I can see is increased security for encrypted communication or hard drive encryption. I am really trying to think hard of any other beneficial applications but can't come up with anything.

    1. Re:what is it good for? by vadim_t · · Score: 4, Insightful

      Well, it could be useful for a seriously locked down server.

      Imagine that you're an admin at some big company, with a hundred Linux boxes. You have this stuff on every of those boxes, and a computer for administration somewhere safe. When you install software you first check it, then sign it, then push updates to your servers.

      If somebody gets in, they'll have things quite difficult. Anything unsigned simply won't run at all. Rootkit modules, exploits, etc, will all simply not be able to run at all. This would take out a quite big part of the exploits an attacker could use. Remote ones would hopefully avoided by NX.

      This wouldn't protect against things like races, but it certainly could help quite a lot.

      The situation above is something I wouldn't have any problems with. If an admin wants to have an uber-locked down system where anything not signed by his key that's only present in a computer with no network connection in a secure room with an armored door doesn't run at all, then sure, why not. I'm fairly sure this can mostly be accomplished without hardware support at all, though.

      Now, it's when software publishers want to make it impossible for me to control my computer when I have problems with it. But if the user has full control of it, I think it could come quite handy in some cases.

    2. Re:what is it good for? by Jennifer+E.+Elaan · · Score: 2, Interesting
      Actually, it *does* include many enhanced cryptography features that cannot be designed entirely in software.

      While I have a problem with the uses of this platform that Microsoft no doubt intends, TCPA can be quite useful for making secure systems based on open standards.

      One part of these modules is the ability to send keys to the hardware module in a way that cannot be read back out (but with encryption performed using this write-only data). This allows public-key encryption with the private key stored in a very secure way.

    3. Re:what is it good for? by Qzukk · · Score: 3, Insightful

      When you install software you first check it, then sign it, then push updates to your servers.

      In the end, it depends on who gets to sign the software, and how this software is distributed once signed. In our corner of the court, we have the admin signing software for 100 boxes (does he have to sign each separately? Can you sign software for every box out there at once? If its not a specific-to-that-machine signature, how do you keep the attacker for signing software too?) for the purpose of protecting the servers from software you don't want to run.

      In the other corner of the court, it appears that we have big business interests who want to have all software signed, who would charge hundreds to sign software for other authors (verisign, et al will certainly be in the business), MPAA and RIAA will be wanting to make sure signed software obeys their rules (and will probably charge for this too), all to make sure your computers are protected from software they don't want you to run.

      Things like this IBM article help make the first scenario a reality, and I'm grateful for it. Now, who wants to be the first to be sued by Microsoft for some TCPA submarine patent that nobody knows about?

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    4. Re:what is it good for? by cayenne8 · · Score: 2, Informative
      "Outside of the millitary there is civil liability. Insted of getting killed because the bad guys stole your battle plans you let something get out and loose ten million dollors."

      LOSE...not loose. You can lose money...you can turn a dog loose. Two different words...two entirely different meanings.

      --
      Light travels faster than sound. This is why some people appear bright until you hear them speak.........
  6. Give me enough rope... by DigiShaman · · Score: 3, Insightful

    to hang myself.

    Instruction: How to restrict your Linux box from yourself.

    --
    Life is not for the lazy.
  7. Linus Torvalds himself has blessed DRM by Xpilot · · Score: 5, Insightful

    Linus himself said DRM is ok, as long as it's used in the interests of the user. This is a good thing, think about it; EvilCorp(tm) wants to use DRM to cripple computers, but the PR guy will say "it's for the user". Of course their intent is nothing of the sort, but the Linux folks are the only ones who will actually implement something that *is* in the interest of the user. Then EvilCorp won't be able to lobby making Linux illegal, since Linux also uses DRM which does what EvilCorp claims it's doing "for the users". Well, hopefully.

    --
    "Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
    1. Re:Linus Torvalds himself has blessed DRM by scorp1us · · Score: 2, Insightful

      You touched on something there that I want to bring out further.

      Linux can show what user-centric trusted computing can/should do. Microfoft et. al. will be showing what Big Business trusted computing wants/can do.

      Eventually there will be those that will ask why it has to work against them so much when running Billy Bob's OS, and then they'll realize that their PC is not their PC, but the industry's PC.

      --
      Slashdot's rate-of-post filter: Preventing you from posting too many great ideas at once.
    2. Re:Linus Torvalds himself has blessed DRM by EpsCylonB · · Score: 2

      Then EvilCorp won't be able to lobby making Linux illegal

      Sillier things have happened.

    3. Re:Linus Torvalds himself has blessed DRM by Minna+Kirai · · Score: 3, Insightful

      Linus himself said DRM is ok, as long as it's used in the interests of the user.

      Linus is not a lawyer. More importantly, he's not even a free software or open source evangelist. Unlike RMS or ESR, he doesn't even hang out with lawyers or devote serious thought to legal matters.

      Since DRM is a combined legal-technical area, it falls outside Linus's expertise, and his opinion carries little weight. (From a practical standpoint, TCPA is incompatible with the Linux philosophy of open-source modifications)

    4. Re:Linus Torvalds himself has blessed DRM by FirstTimeCaller · · Score: 2, Funny

      Linus is not a lawyer. ... Unlike RMS or ESR, he doesn't even hang out with lawyers or devote serious thought to legal matters.

      I knew there was a reason why I liked the guy!

      --
      Wanted: witty unique signature. Must be willing to relocate.
  8. If you can't beat 'em, join 'em. by Kickasso · · Score: 2, Insightful

    Better yet, lead 'em. It would be ridiculously funny if Trusted $FREENIX were released before Trusted Windows or Trusted MacOS.

    1. Re:If you can't beat 'em, join 'em. by SpottedKuh · · Score: 5, Funny

      Trusted Windows

      Wait, wait...you lost me on that one.

  9. Lacking One Thing by SpottedKuh · · Score: 5, Interesting

    Though the specifications detailed in the article are definately a Good Thing, they lack (at least as far as I could tell) any way of preventing unauthorized physical access to the chip.

    Physical access to machines is always a big issue in security, and one that is often overlooked. And while it's probably not a big deal for your home machine, consider large companies whose machines could conceivably be targetting for a physical attack to recover the keys directly from the TPM (Trusted Platform Module).

    Stajano's "Ubiquitous Computing" book has excellent coverage of the rationale, issues, and complexity of attempting to prevent physical access to chips and devices which store sensitive information. It's an easy read, and well worth it: http://www-lce.eng.cam.ac.uk/~fms27/secubicomp/ind ex.html

  10. Hardware Security by quadra23 · · Score: 3, Interesting

    This is indeed good news! Security that is solely-based on software is far easier to compromise than hardware-based (provided that the hardware can't be tampered with by malicious software). Far better to have the security co-ordinated between both. I'd be interested to see how widely accepted this open specification will be.

  11. Wouldn't that be... by GbrDead · · Score: 4, Funny

    Treacherous Gentoo?

  12. TCPA is a DRM smokescreen by Hobbex · · Score: 4, Informative

    It has been said a million times, yet apparently it bairs repeating. The "security" aspects of TCPA are redundant, unnecessary, and at best useful but could be made a lot better if the chip was designed for security rather than DRM. The whole system really exists only for one purpose: as a trojan horse to implement something called "remote attestation" in PCs.

    What is remote attestation? Basically, it means that the TCPA chip, which you cannot control, can read what operating system you have loaded, and send a reponse proving that you are running a certain operating system to others on the Internet. The purpose of this, of course, is so that the operating system can be verified not to have it's DRM functions cracked, so that the RIAA and MPAA can send you data and make sure that they get to decide what you do with it.

    The people pushing TCPA will claim that it is not for DRM, but that is a smokescreen and only a smokescreen. While TCPA does not do DRM itself, it is the enabling component that is needed so that software can implement DRM without being circumventable.

    What does this mean for a "trusted Linux"? It means that while it is completely possible to have a Linux system working with TCPA, once you change anything in the system, the TCPA chip will notice you are running a modified system, and nolonger let your data. So while the software may nominally remain under the GPL, it will be the death of the free software model, because users who wish to tinker with their systems will be locked off the Internet (Cisco is already talking about systems to have ISPs demand remote attestation when TCPA is in place). TCPA and Linux can be combined in theory, but only in theory - in reality they cannot ever coexist.

    Those who do not believe me (or those who are inclined to believe the MS shills who will respond saying that I am wrong), should read EFFs analysis of TCPA where they give a simple way that the chip could be changed to allow all uses except remote attestation intended to force people to use certain operating systems and enforce DRM over the user. It has been completely ignored by the manufacturers of TCPA.

    1. Re:TCPA is a DRM smokescreen by poofyhairguy82 · · Score: 2, Insightful
      The truth is that TC along with Remote Attestation is a new feature set for your computer which allows new ways for people to cooperate online. Some people oppose this because they don't believe that others should be allowed to cooperate in ways they don't approve of. They don't want you to be able to credibly commit to obeying certain rules in processing data. But they have no right to interfere in your private decision making processes.

      No...thats not it. I don't "oppose people having choice" or some crap like that. I oppose this becoming an industry standard that REMOVES my option of not having it. Once every computer has this, it won't be long before ISPs can say "we only want trusted machines on our network." It is the begining of the end for the computer cowboy; Trusting Computing is the first step to civilize the wild west called the internet. Sure for most users (those with tons of spyware on their computer, or with computers that their kids have loaded with enough illegal IP that a lawsuit might come any day in the mail) trusted computing might be seen as a good thing. But for someone who has taken these little multipurpose machines called computers and have used them as they wish despite lacking the blessings of the company's involved (such as me playing DVDs on my Linux box), Trusted Computing is a sign that the companies that have created this wild west are sick of not being obeyed.

      This might help some company keep its local network in shape, which is great for them and a reason for its eventual success. But with that comes a future where my computer follows the law despite my wishes (or I lose Internet access), which would make it a very boring hunk of silicon and circutry indeed.

    2. Re:TCPA is a DRM smokescreen by Hobbex · · Score: 3, Informative

      The tenacity of your attempts to replace logic with rhetoric would be impressive if it wasn't so braindead.

      And casinos likewise operate without any oversight or auditing whatsoever. Millions of people play these games every day. Adding security can only benefit them.

      No, adding a sense of false security does not make things better. People who play on online casinos today do not expect there to be software controling that the game is fair: to the extent they care they go by reputation and testing just like I suggested. TCP adds nothing - absolutely nothing - to make this more secure. The same thing goes for voting.

      You're the one who's got to be kidding! Have you not heard of the many new forms of malware which are going after banking account numbers and infiltrating themselves into secure banking transactions? TC can stop these cold via sealed storage and remote attestation. Again, you are arguing that we should deny users access to these technologies purely for political reasons because you don't like the technology.

      If the TCPA application of your bank were intended to stop malware, then it would have no problem with the EFF's proposed owner override. So once again with the lies!

      I won't go through the rest of your "analysis" because it's the same kind of bullshit.

      LOL. "I won't even begin to counter your arguments that the world is round because it is such bullshit."

      My guess is that you are worried that TC will make it harder for you to pirate your favorate songs and movies.

      No, no, try harder: what I actually care about is abudcting and sexually abusing small children. And strangling puppies. And helping the turrists!

      TCPA is a technology designed from the ground up for exclusion. The fundamental question of the next century, as with the previous ones, is whether we wish to build and open society or a closed one, and TCPA is ultimate tool for those who wish to close our networks. The goal of TCPA is facilitate the handing over of control of our communication devices to others, so that our computers can decide what we cannot and cannot do with them, can and cannot run with them (if we still wish to access our data and the Internet), and ultimately dictate the parameters of all networked communication. Anyone who accepts TCPA accepts that he should live in digital prison, that his doors should be locked from the outside, that a priori restraint should be placed on his ability talk to others, and that not only the Internet, but all computing and all our data should be placed in the hands of a centralized few.

      You, sir, disgust me.

  13. Trusted Linux is ILLEGAL by Minna+Kirai · · Score: 3, Interesting

    It's very simple:
    1. Linux is distributed under the GPL (and other licenses).
    2. To comply with the GPL, end-users must be able to acquire the source code (which means everything they need to reproduce the binary executble, with or without modifications).
    3. If you don't comply with the GPL, you are committing copyright infringement, a federal offense.

    But from the other direction:
    4. Trusted computing means that all binaries are signed with a secret key.
    5. The Trusted CPU will not execute binaries that weren't signed with that key.
    6. In this way, it is impossible for end-users to create modified binaries to add/remove features from the software.

    The GPL is too much in conflict with Trusted Computing to ever allow them to work correctly together. To obey the GPL, end-users must have access to everything needed to rebuild working binaries- which includes the secret key. But for Trusted Computing to work, it must be impossible for end-users to get the key- otherwise there's no point.

    So, Linux or Trusted Computing. Choose one, because you can't have both.

    1. Re:Trusted Linux is ILLEGAL by nomellames · · Score: 2, Informative

      From your post, I belive you don't understand what trusted computing is, or what the TCG specifications imply. Trusted Computing is based in the assumption that there is a Core Root of Trust. This CRT is trusted, and should be verifiable (not the current state, but maybe in the future we will have an open source BIOS). This CRT will measure the next entity (bootlader, whatever) and will hash the reult into a repository (the Trusted Platform Module). Then the bootloader will do the same with the OS, and so on. Of course, this is an over simplification, but there is no signatures here. Later, a program wil want to attest the software you are running, and will ask for this integrity measuraments. Also note that this (attestation, measuraments) is only a tiny part of the TCg specifications I dont see any trouble with this and linux.

    2. Re:Trusted Linux is ILLEGAL by SiliconEntity · · Score: 3, Informative

      4. Trusted computing means that all binaries are signed with a secret key.
      5. The Trusted CPU will not execute binaries that weren't signed with that key.
      6. In this way, it is impossible for end-users to create modified binaries to add/remove features from the software.


      This is total garbage. Where did you get this nonsense?

      TC does not require binaries to be signed with a key. TC will not refuse to execute unsigned binaries. And end users can do whatever they want.

      Now for the facts, in case you're interested. TC implements a secure boot. This allows the TPM chip to store a hash or fingerprint of your software configuration: the BIOS, the boot loader, the OS, and if desired, the applications that are running.

      The TPM and OS can basically do two things with this information. They can implement "sealed storage" which means that a program can lock its encrypted data to the current software configuration. This means that if you boot a different OS, or if the program gets modified (either of which might happen due to virus infection), the fingerprint changes and the data will no longer be available. Likewise if another program tries to access the first program's sealed data, it won't be able to get access to it.

      The second feature of the TPM is "remote attestation". This allows a program to request the TPM to issue a cryptographically signed statement about what the current software fingerprint is that is running. This signed attestation cannot be forged because the TPM generated an on-chip key at manufacture time, and the manufacturer issued a certificate on that key which the chip can use to prove to anyone that it is a legitimate TPM.

      Remote attestation allows network applications to determine what software configuration the peers are running, and, if they choose, to disallow participation by software which is not running a specified set of configurations. This is the closest you will come to the idea that users can't change their own software. If they want to run a program which relies on this feature, and that program doesn't accommodate the changes the user wants to make, they would be shut out. But in practice, open source programs will probably be flexible in this regard as they will want to have as many people as possible participate. There are a number of technical measures which can be adopted to allow for considerable user flexibility.

      But certainly none of this would violate the GPL or any other legal prohibitions. Everything is entirely voluntary, and Trusted Computing does not prevent you from doing what you want with your computer. You don't even have to turn it on if you don't want to!

    3. Re:Trusted Linux is ILLEGAL by finkployd · · Score: 2, Insightful

      As usual with slashdot, you hold strong opinions regarding tcpa with absolutely no idea what it is.

      Tcpa lets you tell your machine to only run binaries signed by Microsoft. You can also tell it to only run binaries signed by IBM. Or you can tell it to only run binaries signed by debian. Or yourself. Or any combination. You tell it what you want it to do in this regard.

      The only valid argument against it is the remote atestation issue, which (using digital signatures) can attest the identity of a client over the network. Think windows file sharing refusing to work with a Samba client, even if they open the protocol, because the samba client was not signed by Microsoft. Or worse, IIS only allowing IE to connect to it. Or most likely, a streaming media server only allowing windows media player.

      Course, this has good and bad aspects as well. The technology exists, it has useful purposes, you cannot put the genie back in the bottle. If people use remote atestation irresponsibly as in the above scenerios, then it is not a technology problem, it is a people problem and should be dealt with accordingly. TCPA is just a logical next step to take with public key.

      Finkployd

    4. Re:Trusted Linux is ILLEGAL by finkployd · · Score: 3, Insightful

      Completely wrong. The owners of machines don't get the keys needed to sign things for their own hardware. Only the builders of the hardware have those keys, and they are contractually obligated by agreements to the MPAA and RIAA not to divulge those keys to anyone (except employees in the course of their work).

      Wow, you just don't have a single clue about any of this do you? You can pop whatever keys you want into the hardware. If you want to create a system where only binaries signed by you can run, go for it. If you only want to run binaries signed by debian, redhat, or joe blow down the street, you can do that too. You can also turn off this checking and allow anything to run.

      The scary part of this is the remote attestation piece. THIS is what the riaa and mpaa want. It basically allows streaming media servers and media files to only be opened by programs signed (and verified by the hardware) by those they trust, like microsoft. A scary vision of this is that windows file sharing could disallow samba clients to connect to it even if the open the protocol, because samba was not signed by Microsoft.

      If the owners of the hardware were going to be the ones having the keys needed to run on that hardware, then I wouldn't have any problem with it.

      You are not going to get Microsoft's signing key and be able to sign your binaries as them, but you will certainly get their public key to verify their binaries and put that in your hardware. You can also generate your own key to sign with and put that public key in the hardware too.

      Do you honestly believe that anyone, anywhere would ever go for a system where all software running on Windows has to be signed by microsoft? They couldn't even do that with signing device drivers and such (although they tried, all it does is warn you). You think microsoft is going to stop selling visual studio and all their programming tools because nobody but them can create and sign binaries? Now take this a step further, do you think overseas PC makers are going to sell PCs that can only run windows? Even US companies would never do that.

      Good God man, actually take some time and learn about this stuff before you spout uninformed drivel everywhere. There are some real legit complaints about TCPA, but you seem to not understand the most basic aspects of it.

      Finkployd

  14. Software DRM by Yartrebo · · Score: 2, Interesting

    Since the source is available for Linux, what would stop someone from sandboxing 'trusted' software by having the OS validate code before it's executed (slow, though a bit faster than emulation and without all the bugs), and then implenting the DRM hardware (or BIOS) instructions in software in a way that stores the keys (or plaintext information, if that is not doable) and allows access to any software to get the info.

    The software DRM implementation would be 100% transparent to the application and noone would be the wiser.

    It should also be workable with a x86 emulator running a closed source 'trusted' application along with its closed source OS, with the emulator doing the DRM instructions a little differently than normal.

    1. Re:Software DRM by SiliconEntity · · Score: 3, Informative

      Since the source is available for Linux, what would stop someone from sandboxing 'trusted' software by having the OS validate code before it's executed (slow, though a bit faster than emulation and without all the bugs), and then implenting the DRM hardware (or BIOS) instructions in software in a way that stores the keys (or plaintext information, if that is not doable) and allows access to any software to get the info.

      This is one of the most commonly asked questions about the TPM. The answer is that the TPM implements what is called a "secure boot" sequence.

      The first thing that happens in a TPM enabled computer is that the BIOS, on startup time, sends a hash of itself to the TPM. Then, when the BIOS goes to load the OS, it sends a hash of the boot loader (grub, in the case of Linux) to the TPM. The boot loader will be modified (see the Trusted Grub project) to take a hash of the OS kernel and send that to the TPM. And the OS itself will be modified (a la tcgLinux to take a hash of the various OS components, startup scripts, and programs as the computer boots.

      The net result is that the TPM has a record of what OS was booted and what the software configuration is that is running. This allows it to distinguish between a "real" boot and an emulated one, because in the latter case it sees a hash of the emulator being loaded.

      Software which runs in un-emulated mode and uses the TPM features can distinguish that case from when it is running emulated. If it locked some data using the TPM in the first mode, it won't be accessible in the second mode.

      Once remote attestation is possible, networked applications will be able to report their software configuration to each other. This will be unforgeable because the TPM will sign an attestation of the software configuration, and the TPM itself will have a certificate from the manufacturer attesting that it is a legit TPM. Your emulator will not have a certified TPM key (those stay on the chip) and so it won't be able to come up with a credible forged attestation. Programs running on emulators won't be able to take part in network security applications that use these features.

  15. Apparently this is not the first time... by sczimme · · Score: 2, Informative


    Go to the Linux Journal search function and search for 'garrick'. You should get eleven hits. I didn't read all of them, but using ctrl+f to search the pages revealed notes to Garrick re: font selection and the like. D'oh.

    --
    I want to drag this out as long as possible. Bring me my protractor.
  16. As sad as it is by Anonymous Coward · · Score: 5, Informative

    To have to burst your bubble of uninformed zealotry, there are plenty of good uses for trusted computing and DRM that do no interfere with your quest to get 'fr33 musicz 4 life' or whatever. Not all of this technology is for companies like the RIAA to protect copyrights, despite what Slashbots would have everyone think.

    1. Re:As sad as it is by cayenne8 · · Score: 4, Insightful
      " This is not flamebait. I hope someone with a brain mods you up...If anything, the original parent was the flamebait..."

      In general...sure...TCPA could have some positive effects on the computing community. However, it also has great potential to be slipped in...and eventually, by law, it must be used to lock things down. Only a few things at first...but, eventually could mandate a great deal of limitations as to what you can legally do with a computer. As much as the corporate entities are beginning to use the govt. to legislate things...and they really don't like the fair use we do have...it is easily possible to forsee this as a means to that end.

      Taken long enough...it could happen, which is why you need to take things like this slowly and with a great deal of skepticism early on.

      I heard it said before that "What one generations tolerates....the next generation embraces"

      Think of it this way...the article the other day on /. about how many US kids don't understand what the 1st amendment really means...they haven't been taught about it...and we're tolerating loss of freedoms. When they are grown and we're not around...they won't even know they existed in the old form...

      --
      Light travels faster than sound. This is why some people appear bright until you hear them speak.........
    2. Re:As sad as it is by randallpowell · · Score: 2, Interesting
      We can't but we can fight to have it optional.

      It's like what Aragorn said to the soldiers outside of the Black Gates, "I see in your eyes the same fear that would take the heart of me. There will be a day when the courage of men fail, we forsake our friends and break all bonds of fellowship, but it is not this day! An hour of wolves and shattered shields, when the age of men comes crashing down, but it is not this day! On this day we fight! By all that you hold down on this good earth, I bid you stand, men of the West."

  17. TCPA - TCG by SiliconEntity · · Score: 3, Informative

    It hasn't been called the Trusted Computing Platform Alliance, TCPA, for a couple of years now. It's now the Trusted Computing Group, TCG. Same technology, just a new name.

    1. Re:TCPA - TCG by Wesley+Felter · · Score: 2, Insightful

      And after the TCG accumulates enough bad PR, I guess they'll change the name again...

  18. TPM emulator by nomellames · · Score: 2, Informative

    If you want to test the IBM API, but you don't have a Trusted Platform Module, you can try using the kernel module emulator at http://tpm-emulator.berlios.de/index.html

  19. Comment removed by account_deleted · · Score: 2, Insightful

    Comment removed based on user account deletion

  20. TCG and Linux make sense by SiliconEntity · · Score: 2, Informative

    Trusted Computing Group (TCG) technology makes sense in the context of Linux. Microsoft refuses to implement it. They had their own conception, which was Palladium, then NGSCB, then was dropped. So if TCG is going to go forward at all, it has to be with Linux.

    It's kind of ironic, because Ross Anderson's lying Anti-TCPA FAQ tries to claim that TC exists to kill Linux. And yet it is turning out that Linux is the salvation of Trusted Computing.

    There are a number of research projects in TC on Linux, including TPM Device Driver, Trusted GRUB and Secure GUI, tcgLinux, TCPA Open Source Platforms, Enforcer, and more. All Linux based.

    Don't believe the FUD about TC. When implemented in Linux using Open Source software, TC gives you new options for securing and expanding the capabilities of your computer.

    1. Re:TCG and Linux make sense by praedor · · Score: 3, Insightful

      Hmmm. And yet I don't seem to need any form of TCPA/TCG or DRM. In all the years I've run linux full-time, I have never ever had naughty code or naughty hackers get in. I can't say that about any of the windoze users I know. Beyond that, I certainly don't need any system that can be used as a DRM system.


      Nope. Uh-uh. Not on my box. I'll copy my files and CDs as I feel the need and will not have anyone but me control when and how I go on to use such copies. This all looks like what it is, an attempt by corporations to gain control of the most important and useful aspects of your PERSONAL and private property computer. Screw TCPA/TCG (and DRM). Paint it all up with lipstick and rouge all you want but in the end it is about restricting what people are allowed to do with their own computers. Any benefits that come to the individual computer owner are accidental and peripheral to the actual designed and intended purpose.

      --
      In Bushworld, they struggle to keep church and state separate in Iraq as they increasingly merge the two in America.
  21. Here comes the flood?? by Reziac · · Score: 4, Interesting
    From TF WhitePaper [PDF] on IBM's site:

    The "trusted" boot functions provide the ability to store in Platform Configuration Registers (PCR), hashes of configuration information throughout the boot sequence. Once booted, data (such as symmetric keys for encrypted files) can be "sealed" under a PCR. The sealed data can only be unsealed if the PCR has the same value as at the time of sealing. Thus, if an attempt is made to boot an alternative system, or a virus has backdoored the operating system, the PCR value will not match, and the unseal will fail, thus protecting the data.

    At the very least, that sounds like "bye-bye multi-boot systems".

    IBM also has a rebuttal to TCPA's detractors [PDF]. This one talks more about how the TCPA chip as currently designed "not been designed to resist local hardware attack, such as power analysis, RF analysis, or timing analysis." That's all well and good for the moment, and while the chip is (per the PDF) mounted on a presumably-removeable daughterboard, but how about the future? Is this how TCPA will stay, or is it the beginning of our worst fears??

    At least these two whitepapers agree with most of us here on one thing -- DRM itself is stupid, for a variety of reasons.

    --
    ~REZ~ #43301. Who'd fake being me anyway?
    1. Re:Here comes the flood?? by Reziac · · Score: 3, Interesting

      That's a good point. What's the difference between a "different" OS and an "upgraded" OS? A: Nothing -- either way, it still won't match the "original" OS.

      And as you point out (re SP3 over SP2) -- what's to stop the OS from refusing to play nice if it doesn't encounter the PCR that it expects to see?? Might you have to provide your PCR when the OS is activated, and then you only get updates if the PCR still matches??

      Can, meet worms.

      --
      ~REZ~ #43301. Who'd fake being me anyway?
    2. Re:Here comes the flood?? by abulafia · · Score: 2
      Once booted, data (such as symmetric keys for encrypted files) can be "sealed" under a PCR. The sealed data can only be unsealed if the PCR has the same value as at the time of sealing. Thus, if an attempt is made to boot an alternative system, or a virus has backdoored the operating system, the PCR value will not match, and the unseal will fail, thus protecting the data.

      One wonders what forensics types, particulary government forensics types, have to say about this.

      And I mean "have to say about this" in a very literal sense.

      --
      I forget what 8 was for.
    3. Re:Here comes the flood?? by Greger47 · · Score: 5, Interesting
      This is the thing that I don't get. The supposedly secure boot process seems to be broken from start to finish.
      The "trusted" boot functions provide the ability to store in Platform Configuration Registers (PCR), hashes of configuration information throughout the boot sequence. Once booted, data (such as symmetric keys for encrypted files) can be "sealed" under a PCR. The sealed data can only be unsealed if the PCR has the same value as at the time of sealing. Thus, if an attempt is made to boot an alternative system, or a virus has backdoored the operating system, the PCR value will not match, and the unseal will fail, thus protecting the data.
      The whitepaper also mentions that in IBMs implementation the chip is connected to the SMbus.

      This means that the entire security of the boot process hangs on whatever data the CPU feels like sending to the chip for hashing. I could as well make a patch for GRUB that sends the "secure" version of GRUB down the SMbus and actually executes whatever nastiness I have in store.

      In the case of DRM this lets me run whatever OS I want. The only thing I have to do is to feed a copy of whatever OS Hollywood trusts to the chip and voila the chip will say I'm legit and Hollywood will give me access to their movies for me to pirate at my leisure. :)

      As I see it, the only way to get this to work for real is if Intel steps up and builds TCPA support into the CPU itself such that the PCR register is continuously updated as each instruction is executed. And all existing external chips have to be blacklisted, ofcourse.

      Or does the TCPA system have some other trick up their sleeve that makes this work even though it's implemented externally to the CPU?

      /greger

    4. Re:Here comes the flood?? by Reziac · · Score: 2, Interesting

      Good points. Sortof like running VMWare in reverse, eh?

      And it does make one wonder if a VM that's wise to the TCPA chip might be a solution to the "handcuffed" machine that Alsee (http://slashdot.org/~Alsee) often predicts as the end result of TCPA. If the CPU gets involved, perhaps the "freed" OS could run on a second non-TC CPU on an add-on card, sortof like the old way to run Windows on a Mac??

      Just throwing out ideas, some of them possibly cracked. Feel free to add glue as needed. :)

      --
      ~REZ~ #43301. Who'd fake being me anyway?
    5. Re:Here comes the flood?? by SiliconEntity · · Score: 4, Informative

      This means that the entire security of the boot process hangs on whatever data the CPU feels like sending to the chip for hashing. I could as well make a patch for GRUB that sends the "secure" version of GRUB down the SMbus and actually executes whatever nastiness I have in store.

      That's a clever idea, but it doesn't work. The secret is that the trusted boot process uses a concept of "trust extension". We start off with the BIOS. That takes a hash of itself and sends it to the TPM. Then the BIOS will load and run the boot loader. But - and here is the key - before running GRUB, the BIOS take a hash of GRUB and sends it to the TPM. Then it runs GRUB.

      The next step is that GRUB - or at least the TPM enabled version, performs a similar process for the OS kernel. It first takes a hash of the kernel and sends it to the TPM; then it runs the kernel. And the kernel can repeat the process with the various startup scripts and other programs that loads, a la tcgLinux or the Enforcer.

      The key point is that before each component is loaded, it is "measured" (i.e. its hash is reported to the TPM). So you can create a bogus GRUB or a bad kernel, but this fact will show up in the TPM's configuration registers because your bad component got its hash reported before it ran.

      The one exception is the BIOS, but TPM systems are supposed to have restricted BIOS flash capabilities so you can't re-flash the part of the BIOS which does the initial hash of itself. This is part of what they call the Core Root of Trust for Measurement (CRTM) and it is supposed to be inviolable.

    6. Re:Here comes the flood?? by Alsee · · Score: 2, Informative

      if Intel steps up and builds TCPA support into the CPU itself

      From the Inquirer:
      Improved architecture for Prescott [CPU] includes better pre-fetcher branch prediction, advanced power management, improvements to hyperthreading technology, the PNI above, La Grande support, better imul latency and additional WC buffers. La Grande is the security feature Intel told us about at the last IDF, and includes protection in the CPU, at the platform level, and with software.

      And this story:
      Addressing growing security concerns in the PC market, Intel last week also gave a glimpse of La Grande, an on-die technology that will interface with Microsoft's Palladium and other upcoming security software. "We're going to take hardware security up a notch and work with future software developers" to implement the new system, Otellini said. "La Grande is not a Pentium 4 product. It will be a next-generation architecture."

      And if you'd like a look at the Trust Chip embedded inside the existing Prescott CPU itself, look to the Micrograph at the bottom of this page. The Trust system eats up about 20% of the CPU die with an entire second CPU and Trust architecture to watch the main CPU.

      AMD, Transmeta, and the other CPU makers all have projects to embed the Trust system inside the CPU itself. Oh, and as the recent Slashdot story on the uber-powerful Cell Processor pointed out, it too will have on-chip DRM system. That "DRM system" is doubtless none other than Trusted Computing.

      I wouldn't be supprised if motherboard-based Trust chips are pretty much obsolete by the time Microsoft's Longhorn rolls out. (Longhorn a.k.a. Palladium)

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
  22. Not so funny anymore by Anonymous Coward · · Score: 2, Funny

    In Soviet Union, your GPL'd software doesn't trust YOU!

    Hmmm. This puts the whole concept of so-called "Trusted Computing" into a realistic, and sad, perspective.

  23. not entirely so by hany · · Score: 3, Insightful

    From a practical standpoint, TCPA is incompatible with the Linux philosophy of open-source modifications

    IMO this is not exactly correct - is it against Linux philosophy of open-source modifications to secure my Linux box so nobody except me can make modifications to it?

    TCPA used in such way (i.e. in interest of user, not supplier, not government, ...) is quite in line with Linux philosophy of "you're in control" :) .

    But, as with all weapons, it has two edges. So, beware! :)

    --
    hany
  24. RMS's writing about "trusted" computing by latroM · · Score: 3, Informative

    RMS has written a nice article about it: see http://www.gnu.org/philosophy/can-you-trust.html

  25. Re:Tee hee... published before editing was finishe by computational+super · · Score: 2, Funny

    Garrick, please don't forget to remove my inline comments to you before you post this article.

    --
    Proud neuron in the Slashdot hivemind since 2002.
  26. Obligatory TCPA FAQ Link by TheSpoom · · Score: 2, Insightful

    You should read the TCPA FAQ if you have not already. It explains why this is a bad thing.

    --
    It's better to vote for what you want and not get it than to vote for what you don't want and get it.
    - E. Debs
  27. NO SIGNED CODE by SiliconEntity · · Score: 2, Interesting

    I want to try to correct one of the most common and universal misconceptions about Trusted Computing: that it will only allow signed code to run. This is causing enormous confusion here, with people arguing about how that works with the GPL, who would get to sign the code, would users get to sign their own code, etc., etc.

    The truth is that the TCG spec says nothing about signed code. There are no limitations in TCG that keep you from running unsigned code. There is no distinction between "secure" and "insecure" code. You can run anything you like. Signing is a complete red herring in this discussion.

    I am not trying to gloss over problems or paint a false picture. The truth is that TCG does have features whose effects are somewhat like what people are worried about with signed code. The result is that TCG could be helpful for DRM, and it might make it impossible to download music from an online store without running a special application, for example. But this would not be because "you can only run signed code". Rather, it is the server that decides whether it wants to talk to you, not your computer deciding what you can and cannot run.

    What's the difference? Well, if your main concern is being able to run hacked clients that will allow you to violate your user agreements, then there is no difference. You would be right to oppose Trusted Computing. It will make it harder to lie and pretend to honor an agreement, then break your word and go back on your promise.

    But if your main concern is about the GPL and what software you run, there is a big difference. There are no limits on the software you can run. You can hack your Linux kernel to do whatever you want. You can disable "secure" features in the software you run. These privileges don't go away when there is a TPM chip. That should put to rest the concerns about the GPL and hopefully end the discussion about who signs what code.

    If you're wondering how these two points of view can be compatible, you need to learn more about the TCG spec and the TPM chip. In a nutshell, the TPM chip, with the cooperation of the BIOS and OS software, takes a hash or fingerprint of the software configuration as the computer boots. It can then report this fingerprint to remote servers, if client software requests it. These reports are signed with an on-chip TPM key that never leaves the chip; and this chip has a certificate from the computer manufacturer, so no emulator can fake these reports (called remote attestations).

    That's how it works. It's a lot more complicated than refusing to run unsigned code. What it comes down to is that software can report its configuration in a believable and, yes, trustable way. That's the real reason this is called Trusted Computing, not the lie made up by Ross Anderson. It's Trusted because you can Trust the reports from a remote system about what software it is running, and therefore what it will do.

  28. Re:How would trusted code development work? by finkployd · · Score: 2, Interesting

    Answer: Nobody said anything about a central authority. You can tell TCPA to trust any private key you want, just like any public key system, you just need the public key. You can create a keypair yourself and tell the system to trust anything signed by it (which is pretty much the only way I can see gentoo users doing it).

    The problem comes in when we start talking about remote attestation. How can I tell every service I connect to to trust software signed by my personal private key. That will never scale.

    Not to mention that you can expect RIAA and MPAA services to only trust client software signed by MS or other trusted parties.

    Finkployd

  29. You can't do that. by Kickasso · · Score: 2, Interesting
    Without hacking hardware at any rate. The TPM verifies BIOS before it starts booting and only enables itself if the BIOS is OK. It won't enable itself *after* the boot sequence, only before. You need to whip up your soldering iron to convince the TPM to do what you want, and even then it's not easy.

    Probably an easier way is to have a hacked memory module that lets you change the contents with some kind of hardware interface.

    If the memory and all buses in the computer are encrypted, then you're out of luck, but this is not currently in the spec.