The Future of Trusted Linux Computing
ttttt writes "MadPenguin.org tackles the idea of Trusted Computing in its latest column. According to author Matt Hartley, the idea of TC is quite reasonable; offering a locked-down environment offers several advantages to system administrators with possibly troublesome users. 'With the absence of proprietary code in the mix users will find themselves more inclined to trust their own administrators to make the best choices ... And so long as any controlled environment is left with checks and balances [like] the option for withdrawal should a school or business wish to opt out, then more power to those who want a closed off TC in an open source world." LWN.net has an older but slightly more balanced look at the TC approach.
There is nothing wrong with hardware assisted security if the owner controls all the keys and nothing can touch the trusted hardware without the owner specifically installing it (i.e. logging in as root/administrator and changing things).
Trusted Computing is only bad if the owner of the hardware does not have control over the software on the machine, the hardware keys etc.
Proof of this statement?
But Linux and most Linux programs are already more "trusted" then Windows can ever be. From being open source, how can you not trust it?
Did you even read the summary? Or were you just going for first post?
This is about locking down the workstation so that users can't monkey around. I do not care how well the code is written, a malicious user can create a security issue if he/she has the ability to do so.
See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
Which is why if your that paranoid, you look at the source yourself and compile it from that source, its not that hard and there is no way that you somehow got code you didn't want. If you overlooked somthing that is your fault, you compiled it, you looked over the source, thats something you can't do in the Windows world with stealth updates and the like
There is no "disagree" moderation, and troll, flamebait and overrated are not valid substitutes
Read it again, you're not getting it. The issue is whether you can trust the compiler to produce machine code that corresponds to your source code.
You didn't evevn read the quote? The only way to bypass this is to hand build the compiler in binary. You won't *EVER* see the attack because it's in the compiler's binary, and the compiler puts it in the binary of any compiler it compiles - even if it is not in the source of the compiler it compiles.
Good luck with that.
34486853790
Connection too slow for X forwarding? Try "ssh -CX user@host"
I thought the same thing when I first read it. However, it is entirely possible that there are simply two different definitions for the same phrase. Anyone with a better insight on this?
See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
Or are the users getting their CPUs' source code and recompile them? Or at least call their LinCPUx fans to do it for them?
Trusted Computing requires trusting the CPU manufacturer in the first place. And in this world, where the telcos have disclosed our conversations to the govt without us finding out but several years later, can we really trust that the government hasn't pressured the CPU makers to add a backdoor here and there?
Trusted Computing is practically closed, and incompatible with the spirit of Open Source/Free Software. Ergo, Trusted Computing cannot be trusted. Sorry.
With the absence of proprietary code in the mix users will find themselves more inclined to trust their own administrators to make the best choices
Sorry, but I think that's putting your words into everyone else's mouths. Or fingertips, or whatever. The vast majority not only don't have this opinion about open vs proprietary code affecting how much they trust the choices their admins make, they also wouldn't have a freakin' clue as to what you're going on about in that sentence. The vast majority don't know what open-source is, how it differs from proprietary source, they don't know any reason why they'd care either way, and they'd probably give you a pretty funny look for attributing this philosophy to them.
I like Linux and open-source, and have an appreciation for it. But I don't trust my admin at work more when he talks about Linux than when he's talking about Solaris. It's his job to make the best choices of any and all products available, and I trust him to choose whichever is most appropriate for our company, even if he feels that happens to be a proprietary product. It's not my place to impose on him to only ever choose open-source, and there's cases in our work where open-source offerings are less ideal.
Ha, you're the first person I've heard mention this idea since the early '80s! Here's another similarly old, interesting factoid I've heard about the C compiler: The ASCII character set is no longer defined anywhere in the C compiler source code (which is written in C). In other words, '&' compiles to decimal 37 only because existing binary compilers know how to translate the '&' character constant.
Beer is proof that God loves us, and wants us to be happy.
A sufficiently motivated whatnow?
C-x C-s C-x k
You do not understand trusted computing. It is not about locking down your system.
It is a common fallacy that the primary goal of trusted computing is to enable DRM so the movie studios/RIAA controls your computer. This is simply not true. Trusted computing provides methods by which you, the owner and administrator of your computer, can KNOW, by having a chain of trust that is anchored by keys securely stored on a TPM chip soldered to the motherboard, that the software and hardware in your system has not been tampered with. One *could* use this to enable DRM or other user-unfriendly schemes, but there are many other use cases for trusted computing. Think e-commerce where you can verify the other system and it can verify yours to make sure neither end has been compromised prior to making a transaction.
Policy decisions are made based on the measurements that are returned by the verification process. Trusted Computing does not dictate the policies. If someone (or some company) wants to abuse the system and lock people out of their systems, then that would be bad policy and a bad implementation of TC concepts, but it doesn't mean that all TC applications are bad or are designed to restrict the user's ability to manage their systems as they see fit.
No, "trusted computing" means that hardware can guarantee the integrity of the environment. For example, I'd like to use TPM chip in my Thinkpad to guarantee that my machine will boot only kernels signed with MY key. Also, I very much like the hardware keyring.
Trusted computing is only a problem when YOU are not the owner of the machine and don't have the full control over the TPM module on a new computer (of course, once TPM is set up - it shouldn't be possible to change it without owner's keys).
How is this redundant? It might be obvious to some people, but I can't see it said anywhere else.
In Linux, there's no 'vending machine' mindset; they won't be charging every time you turn around, just because there's "no other game in town".
Under Windows? Forget it.
--- For a good time mail uce@ftc.gov
In short, this article aims to lure the unwary into gullible acceptance of TC with an illusion of completely deceitfully presented and impractical (no one except the mega-corps will ever get the access to the main TPM keys) applications.
It is different views of the same thing. Corporate entities (e.g. M$) put the (marketed) emphasis on 'trust' while those concerned with freedom (e.g. EFF) on the possibility of 'control'. Now decide whom you 'trust'.
CC.
TaijiQuan (Huang, 5 loosenings)
than having proper permissions set up on a machine and doing a lockdown like what's built in to Gnome? Having proper permissions prevents people from installing shit and running programs that they're not supposed to. Using Gnome's lockdown feature prevents them from fucking up their DE.
Trusted Computing solves this how?
GENERATION 26: The first time you see this, copy it into your sig on any forum and add 1 to the generation.
Think e-commerce where you can verify the other system and it can verify yours to make sure neither end has been compromised prior to making a transaction.
I'm thinking about it, and I don't like it. I can do all my ecommerce today with a free and open system. If my bank demanded I had my OS/browser signed by some certificate authority I couldn't do that. I can't think of any use of this technology that doesn't hurt the software hobbyist.
Give me Classic Slashdot or give me death!
How does the bugged compiler binary recognize the fact that it is compiling the source to a compiler?
In Thompson's case, he had it scan the source for recognizable text.
Defeat the "am I compiling a compiler?" test of the compiler binary and you are done.
All you need is a source code obfuscator. Randomize variable/function/file names, and insert red-herring calling sequences and recompile the source to the compiler to obtain a non-bugged compiler binary.
Writing a source code obfuscator (capable of defeating the compiler trojan's test) is much easier than writing the source to a compiler, and a great deal easier than hand composing a compiler binary.
Trusted computing is only a problem when YOU are not the owner of the machine
i.e. when you're using services over a network. What happens when microsoft pushes their TPM out and people get used to serving pages only to trusted peers? You thought "this site only works in IE" was bad? Try "this site is cryptographically impossible to read without a full trusted IE/windows system" And it's done all in the name of security.
Give me Classic Slashdot or give me death!
In corporate networks, this will just lock down your PC a little more than it already is. Nothing to see here, move on please. It is in the home this shit gets interesting. Do you want your ISP, and possibly MS, to rule your PC? For the typical /. reader, the answer is a clear NO. But what about grandma? Imagine your ISP offering 2 kinds of subscription: a normal, "free" one and a "protected" one. The protected one is firewalled (or at least NAT-ed) at the ISP, with just "sensible" traffic allowed, like HTTP(S), SMTP to the ISP's own server, and with a limit on 50 emails/day. Throw in some MSN and Skype. Have the ISP use TC to inforce patches and anti-virus. I think grandma would be happy for it, it would extend the lifetime of her PC (slower buildup of spyware cruft) and for the rest of us it would cut back on Spam.
10 ?"Hello World" life was simple then
MS has already done it with Vista x64 - it doesn't allow you to install unsigned drivers. TPM will also allow them to be sure that the kernel is not tampered during the startup. But I don't think it adds too much security for evil DRM schemes.
:)
But personally, I'd like to have the same capability to be sure my system is not tampered with by NSA when they examine my laptop during in airport
Indeed yes. The question "am I compiling a compiler?" is as undecidable as the question "am I compiling a program that will halt?" (Ken Thompson's suggestion is still interesting, though.)
... not to mention relatively clueless about encryption principles. Sorry if the following questions are glaringly obvious.
How does it work? How will it affect my machine if enabled (i.e. will I notice?)? Could an OEM (I hear Microsoft is distributing PCs nowadays) theoretically set up the TPM to lock down a system pre-purchase? What happens when the TPM blocks something/notices a different checksum?
You know, there is a difference between trolling and pointing out the flaws in your reasoning. Just saying.
Read the GP post again. Carefully. You have the source, Luke -- and, on the basis of your inspection, you missed the second-order instance of the problem of Trusting Trust.
(I don't know if the GP meant his or her post to be a direct attack on the frequent comment that "well, you have the source and can inspect it, after all", but if he or she did, congrats.)
Either a wanker or an extremely clever commenter on the true value of human inspection. I suspect the poster was a wanker, but, oh, my, do I hope that he or she was extremely clever.
Yes, there are good uses and bad uses. The technology can certainly be put to work for the user's benefit. Indeed, most digital rights management is altruistic in some sense, since it prevents the user from accidentally infringing copyright and perhaps even committing a crime, which they surely would not want to do.
The fundamental argument is not whether good or bad policies are possible, but about freedom and whether you have control over your own computer. If doing e-commerce, can I program my computer to lie and send back a response saying it is not tampered with even when I have changed the software? If I cannot do this, then I no longer have control over the computer and it is no longer my computer. However, the other end of the e-commerce transaction would be foolish to rely on this no-tampering check. Even if ordinary users cannot break the security on the TPM module, a determined criminal organization probably could.
-- Ed Avis ed@membled.com
Trusting "trusted" computing requires trusting hardware makers that can insert exploits. Trusted computing is therefore of limited value to end-users in a world where vendors and service providers are routinely leaned on to allow surveillance back doors.
If you have applications that you need to secure, in order to prevent, for example, misuse of tax filings or medical records, you can do it using Web applications, or other thin client technologies combined with physical security of client computers. There is nothing that can guarantee stopping someone copying data manually from a screen display and smuggling it out of an office, so there are practical limits to securing data beyond which additional technology is pointless.
There are some theoretical cases where trusted computing could benefit individuals. But, in practice, it's all about someone else trusting your hardware to rat you out. Most of the money flowing in to trusted computing comes from those kinds of uses. "Trusted computing" has rightly earned distrust.
I wrote parts of this stuff
If you *CAN* do what you describe, then your system cannot and should not be trusted in a trusted computing transaction. Providing a provable, secure chain of trust is the fundamental reason for having a TC base. If you can arbitrarily corrupt this chain by "programming your computer to lie", then all bets are off and the trust model is irrevocably broken.
Perhaps the e-commerce use case is not the best example. Perhaps TC will never be acceptable on personal computers for general purpose uses. However, there are business cases where neither party has reason to 100% trust the other without a verifiable chain of trust measurements from the other that can be validated. In those situations, a TC transaction is pefectly reasonable and highly desirable.
I would never say "never", but in general the security of TPMs, and HSMs in general, are resistant to attacks by even the most determined criminals. There will be bugs and there will be exceptions on rare occasion, but they are the best that the industry has to offer at this time. Assume that if they have passed the strict reviews required to be used by NSA, CIA, foreign governments, and the financial industries, that they are pretty fucking solid and tamper proof.
Trusted computing also enables a real market in CPU time. You can sell your spare processor cycles since the trusted machine can attest to the fact that this really was the result of the code you sent out. Similarly to have software agents that run on unknown people's servers this would be necessary.
It would also be useful to implement true ecash schemes and in allowing true p2p based virtual worlds/games with safegaurds against cheating.
In short the technology offers a lot more promise than mere security and eventually it is a good thing for everyone to have. In fact I think it potentially offers more benefits for a stable OS like linux than windows. You can't blame the technology for the fact that some idiots would have us use it for DRM or other customer control. The correct response is to embrace trusted computing and reject DRM...but in the real world perhaps it is better if we wait a bit longer for TC until the RIAA and other groups are forced to learn that selling music unprotected is the way to go.
If you liked this thought maybe you would find my blog nice too:
Live today, because you never know what tomorrow brings
totally off topic - I was recently involved in a test at work to trial some new software - 180 users were sent a document detailing how to install and configure a VPN application - the instructions contained some bad instructions - which if followed to the letter - would block http access - of the 180 users installing the software - only 3 reported the problem - 177 people did not read the instructions - or read them but did not follow them!
Unfortunately there are several DIFFERENT, INCOMPATIBLE concepts being bandied about under the name Trusted Computing. This new "Trusted Computing Project" took on that name seemingly without being aware that there was substantial work already under way on a different concept with the same name.
Perhaps to try to remedy the confusion, we can distinguish between TC as proposed by the Trusted Computing Group and other forms of TC. The TCG is an industry consortium with Microsoft, Intel, HP etc., dating back several years, originally called TCPA. Their proposal has always been controversial but IMO misunderstood.
TCG's flavor of TC is fundamentally open. I would call it Open Trusted Computing, OTC. It does not lock down your computer or try to prevent anything from running. It most emphatically does NOT "only run signed code" despite what has been falsely claimed for years. What it does do is allow the computer to provide trustworthy, reliable reports about the software that is running. These reports (called "attestations") might indicate a hash of the software, or perhaps a key that signed the software, or perhaps other properties or characteristics of the software, such as that it is sandboxed. All these details are left up to the OS, and that part of the technology is still in development.
Open Trusted Computing runs any software you like, but gives the software the ability to make these attestations that are cryptographically signed by a hardware-protected key and which cannot be forged. Bogus software can't masquerade as something other than it is. Virus-infected software can't claim to be clean. Hacked software can't claim to be the original. You have trustworthy identification of software and/or its properties. This allows you to do many things that readers might consider either good or bad. You could vote online and the vote server could make sure your voting client wasn't infected. You can play online games and make sure the peers are not running cheat programs. And yes, the iTunes Music Store could make sure it was only downloading to a legitimate iTunes client that would follow the DRM rules. It's good and bad, but the point is that it is open and you can still use your computer for whatever you want.
This is in contrast to some other projects which may or may not call themselves TC but which are focused on locking down the computer and limiting what you can run. The most familiar example is cell phones. They're actually computers but you generally can't run whatever you want. The iPhone is the most recent controversial example. Now they are going to relax the rules but apparently it will still only run signed software. This new "Trusted Computing Project" is the same idea, it will limit what software can run. Rumors claim that the next version of Apple's OS X will also have some features along these lines, that code which is not signed may have to run in sandboxes and have restrictions.
This general approach I would call Closed Trusted Computing, CTC. It has many problematic aspects, most generally that the manufacturer and not the user decides which software to trust. Your system comes with a list of built-in keys that limit what software can be installed and run with full privileges. At best you can install more software but it is not a first-class citizen of your computer and runs with limitations. Closed Trusted Computing takes decisions out of your hands.
But Open Trusted Computing as defined by the TCG is different. It lets you run any software you want and makes all of its functionality equally available to anyone. P2P software, open-source software, anything can take full advantage of its functionality. You could even have a fully open-source DRM implementation that used OTC technology: DRM code that you could even compile and build yourself and use to download high-value content. You would not be able to steal content downloaded by software you had built yourself. And you could be sure there were no back doors,
Why? I DO know my root key to TPM - I can view all stored keys and manipulate them. After all, it's not more than a hardware keystore and some validating code.
The goal of TPM is to build a secure HOST. I.e. the one which I can trust to be secure during all stages (for example, TPM can guarantee that a malicious hacker has not installed a backdoor into my kernel).
Without informing anyone. External entities should be free to *request* specific support software, but the user should always have the right to override that request.
...about the ramifications (both good and bad) of TC can be found here.
The main problem I have with TC is the fact that it removes control over the hardware from the user and gives it to a 3rd party entity.
When I purchase hardware, I expect to have full control over it's capacities. If the hardware is capable of doing something, I should be able to do it. There's something a bit eerie about giving your computer a command/instruction and having it come back and tell you it could do it, but that it won't (2001: A Space Odyssey anyone!?).
My worry is that TC misinformation will be pushed so much that the idea of the user being in control of their hardware will be considered old fashioned. Well, it may be old fashioned, but it also has the side effect of being correct.
Now, I do think that TC has a place in the corporate world where there is no expectation of employees being able to do whatever they want on the computer (businesses have a right to control their own equipment). But the propagation of TC into the public or home is what doesn't set well with me.
Faith is a willingness to accept something w/o complete proof and to act on it. Reason allows you to correct that faith.
There is a chance that the users noticed the problem and then found the "correct" way to install the software and didn't bother reporting it.
Good news everyone, with GNU/Linux virtualizing stack, MS Windows can be trusted too...
It's quite helpful to watch as a primer/refresher: the wonderful animation about Trusted Computing. Simple, good, understandable.
Insert
I'm having trouble understanding what you mean by "software freedom". Computers are provided by employers to manage tasks and handle data related to your function within the organization. Where exactly does your freedom come into play there? And what does free software do there that "Windoze" doesn't?
You don't say.
Sure it is, if it's company-provided hardware. You really have never had a job at a real company, have you?
You sound like those (former) disgruntled employees at the "big dumb stupid" companies that won't let you exercise your "freedom of speech" by letting you install Kazaa and BitTorrent on the laptop they gave you to do your job. Down with the man!
Web2.0: I love when people Flickr my cuil and digg my boingboing until my google is reddit and I start to yahoo
Parent is not Troll.
And yeah, Trusted Computing it about not trusting the user. You dont think that these companies are gonna get together and say 'We know what is best for you' at some later date when we're all stuck into the Trusted Computing format and lock us all down. Kiss Open Source goodbye because someone will make the argument that Linux cant be trusted because its Open Source and a PHB at one of these hardware companies will (stupidly) agree.
09F911029D74E35BD84156C5635688C0
+2 Troll is Slashdot's way of saying groupthink is confused
Besides, there are two problems with these "boot security" features:
First off, just because you sign your kernel doesn't mean it's secure. If your entire system is controlled by an insecure OS, and if somebody exploits a hole, they can still tell it to do whatever they want. An attacker can still use your key to sign or decode anything they want, even if they can't read it from the TPM hardware.
But, for the sake of argument, say that this is still a step up. You still don't need a TPM chip for that; you can build crypto hardware with a write-only keyspace, and throw in user-controlled tripwire services on boot, without adding a manufacturer-fixed unique identity key in a tamper-resistant chip. The only practical use for that is the kind of ubiquitous DRM games that TPM was designed to deliver in the first place.
The only way I'd buy hardware with security features like this is if the user (with physical access to the hardware) was able to completely scrub all identity information from it, and generate a new identity key -- tabula rasa. Of course this means that the whole thing could be simulated in software, and nobody else could be certain you were running a particular piece of hardware with hardware-enforced constraints on the software configuration. Which, of course, is the entire goddamn point.
Did you know that The TCG/TCPA specifications create a technical definition of the "owner" of device? It could be the manufacturer, the reseller, a sysadmin, a user, or someone the user loans the machine to. It all depends on who "takes ownership" (also technically defined in the spec) first. The "owner", in this sense, is the one who gets to specify which signing keys are needed to sign code that the owner wants to allow to run. This can include vendor keys, and even a user's own signing key.
Whether TC is considered "evil" always seems to depend on differences between who uses the device, and who "owns" it in the TC sense. If the TC "owner" matches the consumer who bought the device, there's little problem. But if the TC "owner" is actually the vendor of the device, users can get the shaft if the "owner" elects to restrict native capabilities of the device.
The case of enterprise sysadmins taking "ownership" of company devices away from users is a borderline case that most people can go along with. After all, the device is company property on loan to employee users.
More here:
http://n8o.r30.net/dokuwiki/doku.php/blog:trustedcomputingnotaryinabox
I'm sorry... what?
a sufficiently motivated nigger could painstakingly review the machine code
Was that really necessary ?
This piece of propaganda that you are spouting is indeed 'Interesting' and 'Insightful' in how clever it is.
You are right that TC only provides a signature which cannot be forged. But if you the user cannot forge the signature of the result of the cpu cycles that the computer runs - then anyone can write up software that does X and Y and Z only, ONLY, when you provide signed data to them - and wont work if you don't ...
And thats the point! That is exactly what everyone will immediately do - the banks, the commercial websites, government websites, software provides, music and movie industry - they will start making products and services that ONLY work if they are certain that they work the way they want them to - ie. crippled in a way to provide maximum profit, force you to provide details of yourself and what you are doing etc. Basically what ever they want - you might technically have a choise of 'controlling' your computer - but in practice you won't.
Trusted Computing might 'only' do one innocent thing - but it ENABLES the corporations/government/contentproviders to eventually and effectively take over your computer.
So by definition - and indeed it is probably mathematically provable even - that if the user cannot effectively 'forge' data coming out of his CPU, then all forms of Trusted Computing, however 'Open' they are - are unTrustworthy - and people who promote the idea, are Treasonable!
www.tribalnetworks.org - helping tribal people around the world to own their own means of high-tech communications
Y'know, people keep talking about document control, like it's a good thing.
Well, how about this other side of this sword, like when your boss gives you an order, via e-mail, to do something that is unethical, illegal, or immoral.
You think you've covered your ass, because you've got this order in writing. But it deletes itself after X amount of time, and anyway, it isn't readable on any computer not designated by the author/creator.
What about whistleblowing? Doesn't this make it a lot harder to take, say, a document written by a government official, and leak it to the media?
People keep talking about 'document control' in the context of things like when hackers break in and steal people's credit cards or health records or something.
This technology, even the most benign aspect of it (doc control) has the power to make secrecy a lot easier to execute.
I'm not sure that is in any way a good thing for a democracy.
The plural form of "anecdote" is "anecdotes", not "evidence".
"It is a common fallacy that the primary goal of trusted computing is to enable DRM so the movie studios/RIAA controls your computer."
Yeah, just like how it's a common fallacy that the primary goal of scientists that worked on the Manhattan Project was to incinerate civilians. They were just working on a way to make a bomb from nuclear reactions. That could be used for a variety of purposes, like major earthmoving (actually proposed by Teller, BTW), or it could be used to attack cities.
Seriously, all sarcasm aside, that's a pretty narrow reading of how new technologies develop, and their effects. And, in fact, it probably wasn't foreseeable to most people that the primary (really, only,) use of nukes would be to incinerate cities. But that in fact did happen.
So let's not pretend technology is neutral, OK? It is in a sense, but 'once you invent a hammer, everything starts to look a lot like a nail'. The tech you have available shapes your perceptions and range of options.
This is a tech that has some pretty orwellian potential uses. Let's not kid ourselves about what it's most likely to be used for. Prevent piracy, crack down on whistleblowers, and the ability of employers and/or governments to issue secret orders, in writing.
The plural form of "anecdote" is "anecdotes", not "evidence".
No, "I" is the computer user very paranoid about security.
Of course, phone manufacturers might also use TPM for Tivoisation. But it's far easier just to use a simple signed first stage bootloader for the same effect.
...and I want to protect trade secrets from malwares, harddrive thieves and malicious employees. Then it is very reasonable for me to want the TPM to be hackable by myself but not by any of my employees, so that I don't need to trust any third party to properly manage my endorsement keys, and I can be sure that my encrypted documents are still accessible even if something breaks horribly.
The ability to regenerate the key (and that the majority of the users actually does it) is important. The initial key might have gotten leaked by a bad manufacturer, might identify me in a way I don't like, and the previous owner of the computer might have gotten the key signed somewhere and subsequently earned a bad reputation with it. In any case I have little control over it. After generating a key, I can get it signed by whoever I wanted to be trusted by, e.g. an online game server, a distributed computing project, my employer, or even myself if malware-prevention is the goal. In some cases the trusting party (e.g. my employer or myself) may want a copy of the private key, so there should be the option that the private key be copied somewhere at key generation time (and never again, so the trusting party knows that no one else can hack the TPM). Since I may want to assume multiple identities, to be trusted by multiple different parties, all with the same computer (e.g. I may not want anyone to know that two user accounts in two different online games are both operated by me with the same computer, even if the same company runs the servers for the two games), the key had better be pluggable, particularly when there is no commonly trusted third party. In other words, the TPM I might want is not much different from a smart card, except that it has a tamper-proof way of hashing the hardware and software. This hashing is meant to be used for things like cheat-prevention, distributed computing and enterprise system management, and not for unsuitable purposes such as forcing the user of a website to use a certain operating system or browser. Of course, an ordinary website should not need to have my key signed, anyway.
To the proponents of Trusted Computing, Quit trying to pull the TPCI wool over our eyes!
If I want to run OPEN SOURCE software, because I can re-compile it, because I can change it, because I can fix that bug that no one else will fix because I am one of three people in the whole world who ever see it. When I re-compile my kernel to fix that bug because I am sick to death that my laptop crashes every time I visit my Bank Site. I re compile it with the fix (or with any other change I like) Trusted computing will either:
A: Flat refuse to load my shiny new kernel, because it can no longer be decrypted.
or
B: Allow my shiny new unsigned kernel to load, but now my Bank will not speak to me because I am no longer TRUSTED.
Who has to sign my shiny new kernel? The BIOS maker? Microsoft? Some random authority? Who will have to read my source code to be sure I have not done anything untoward and to whom I will have to pay a bribe er.. Fee. Perhaps a substantial fee. Surly I can't sign it myself - I may be an eeevil terrorist pirate trying to build myself a DRM busting back door. NO some "trusted" entity will have to sign it for me. That means I will have to ask someone's permission TO USE MY OWN COMPUTER.
If I have to ask permission of a third party to use my own computer, it is not "my computer" any more.
You can't have it both ways - either I trust (and control) my computer, or the Music/Movie Industry trusts it because they are able to control it (and me).
You were saying if I got the Master Key I could override any part , but if I do override then once again my machine is not trusted and I become a second class citizen on the Internet, If I am even allowed on. I can no longer bank at my bank, I can no longer see or hear any media.
What use it it to have the source code if you compile it, but you can't run it.
It all still simplifies down to the fact that either I have the keys for my machine If so the content industry could not trust me or my machine.
Or a third party has the keys, in which case I am no longer in control of my machine. It is not "My machine" anymore. I can no longer compile and run my own software. I can only run what my drm masters deem "trustworthy".
there are two definitions of "trusted computing", and it depends on who is doing the trusting.
the first definition basically boils down to "we don't trust users" - and is the version of trusted computing that you're describing.
the second definition basically says "we want users to be able to trust their computers and be able to do what they want without worrying".
it should be fairly obvious which definition that a linux-based, free-software-backed distribution will go for, especially with the backing and quiet involvement of a couple of heads of police departments, and several professors from royal holloway.
It is a common fallacy that the primary goal of trusted computing is to enable DRM so the movie studios/RIAA controls your computer.
Actually that is precisely the functional design target of Trusted Computing, as the following will demonstrate.
Trusted computing provides methods by which you, the owner and administrator of your computer, can KNOW, by having a chain of trust that is anchored by keys securely stored on a TPM chip soldered to the motherboard, that the software and hardware in your system has not been tampered with
A cyanide-laced apple provides you vitamins and minerals, however it would obviously be silly to suggest that as a valid benefit/argument for cyanide-laced apples. "Provides you vitamins and minerals" is a benefit and argument for apples.
In the exact same way, your example is NOT a benefit or argument for Trusted Computing. You do not need Trusted Computing to get the "vitamins and minerals" you described.
Consider identical hardware, except the owner of the computer is permitted to have a printed copy of the master keys of his own computer. In technical specifics, that would be his PrivEK (Private Endorsement Key) and his RSK (Root Storage Key). Such a system would have identical capabilities to secure your computer for you. KNOWING your own key does not alter the hardware's functionality to serve and protect you.
Knowing your key still gives you all the yummy vitamins and minerals, and it also gives you full control over your computer. You could control/alter/override your security settings at will, and you could unlock or modify your files at will. It would no longer be Trusted Computing. You would own and control your own computer. And of course this new hardware would then be useless to anyone attempting to hijack the system to secure your computer AGAINST you. It would be useless for DRM. Which is exactly why the most important factor running through the entire Trusted Computing technical specification is that the owner is FORBIDDEN to ever know his own master key, and why most section of the specification explicitly detail how that part of the design is required to be restricted in order to prevent any possibility of the owner getting at his key.
The Trusted Computing Group absolutely refuses any change that would diminsh its ability to enforce DRM. The entire design revolves around securing the computer against the owner. I read the 332 technical specification, and it's funny how exactly various sections target DRM without actually using the phrase 'DRM'. One section goes in to detail about how it is explicitly forbidden for it to ever be possible to have copies of data on two computers at the same time and the insane hoops that are required to be jumped through during a computer upgrade / migration process to enforce that. Another section detailing that your data MUST be irretrievably lost/destroyed in a variety of circumstances. All of which read precisely as a DRM specification.
Think e-commerce where you can verify the other system and it can verify yours
Nope. It's worse that worthless for that, or anything else of any significance. Yes, literally worse than worthless. It is actually harmful for e-commerce and anything of any importance. The system is required to meet DRM demands, and no more.
They actually tout the fact that the system is not secure against physical modification as some sort of "proof" that it was not designed for DRM, lol. The have all sorts of requirements about physically securing the computer against the owner (at one point they even explicitly refer to the OWNER as the "attacker" that they are securing against), however it is just enough physical security for routine DRM... just enough physical security to be a serious pain in the ass for any typical home individual to defeat. Just enough to enforce run of the mill DRM against 99+% home population, and to criminally prosecute anyone 'trafficking' in modified hardware. But the specification says, and the actualy hardware
- - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
Any argument for the implementation of so-called 'trusted computing' is either inherently evil or incredibly stupid.
This is an incredibly naive and uninformed view on trusted computing. I was hesitant about trusted computing until I learned more about it. I have a TPM in my computer and it has a lot of good uses. Storing encryption keys in a tamper-proof chip is an excellent security enhancement. Software storage of keys is much more likely to be cracked. Also I can encrypt my entire drive or individual files and if needed I can delete the key and no one can access those files ever again. The mass hysteria around trusted computing is blown out of proportion. I have yet to encounter a circumstance where trusted computing has taken security or privacy away from me. It has only added security and privacy.
Time makes more converts than reason
I remember a couple of years ago I was very concerned about this matter, trusted computing sounded like a nightmare, I even talked about it with all my friends, and suggested they should boycott those hardware vendors that were working on or endorsing this project... then suddenly I forgot about it... I can't tell if I simply stopped caring about avoiding the changes and starting to trust I'll be able to adapt (which is rather selfish, but hey, pragmatic), or if it's the certainty that someone will be working on alternatives and possibilities, either way, I'm no longer worried.
Seriously, this is not an option. The reason we have so many different distributions of linux is because these parties all tried compiling all the code, and dealt with the issues at building machines to achieve certain goals. There is a great deal of manpower on these attempts and frankly I don't think one person could reproduce this reliably. Sure you 'could', but would you? This means that it's much more practical (and realistic) that most people are downloading full distributions. Of course they can still get the source and view it, but what if it's written in a language you don't understand? What if you don't understand the programmers methods? Sure, a google here and a google there, and you get your answers, but likely someone building the distro had a similiar situation and worked it out. When you DIY OS you will have to figure out all these 'bugs' again. Seems like a waste of time to me. But even now it's quite obvious that most users will not compile their OS's. This is unrealistic, even for the paranoid. Of course some have taken the approach of a secure trusted platform, but again I'm looking at a distribution. Even if one person figures out a unique method to do the same, what are the odds that it will remain a secret? So, is it really a practical reality that one person can 'compile' a modern linux OS? No. So you need to get help. Even TWO people means that trust needs to be established if the project is to move forward. This means a trust relationship has to be established. Now, the paranoid is freaked out again since there is a 'possibility'. I really feel for the paranoid, it's gotta be rough. Today's computing is unfortunate in some ways, but we have to trust other's code and typically without any prior examination.
Jeruvy