It is almost 30 years now since Ken Thompson presented his widely known ACM Turing Award Lecture "Reflections on Trusting Trust". What is the current status of practice and research on trust management?
-
Mok-quite a bit of this question is too localised, so I have made an edit.– Rory Alsop ♦Feb 5, 2013 at 13:23
-
I think the question is still too localized - pretty much anything specifying "current" is, by nature, time-localized.– IsziFeb 5, 2013 at 14:03
-
1@Iszi: Would simply deleting "current" be better? Or should I better use "state of the art" or something else?– Mok-Kong ShenFeb 5, 2013 at 14:23
-
@Mok-KongShen Unfortunately, no. Really, the "status" of anything is generally going to be time-localized. Exceptions would be for things that have been irrecoverably broken (e.g.: What's the status of WEP security - is it safe to use?). Also, the "state of the art" is constantly changing. Really, questions like these are not a great fit for the SE format. However, you're welcome to ask in chat.– IsziFeb 5, 2013 at 14:43
1 Answer
Biggest problem in trust management is that it involves people who don't act like machines.
Public-Key Infrastructures can be seen as a big exercise in trust management. The two main deployed solutions, X.509 and OpenPGP, implement two strategies which can be described as "let's add all the needed features that application won't bother to implement properly, or at all" and "let's do nothing and pray for the best", respectively. By right they should both fail in horrible (but spectacular) ways. In practice, there are not so many issues because people are still basically honest.
But really, security does not make dollars; you will never be able to say that stricter controls resulted in 10% sales increase. Therefore, trust management will be underbudgeted, badly done, and rely on luck. That is the biggest unsolved issue: how could we make trust management, and security in general, be recognized as important enough to, generally, warrant a bit of care ?
(The one known way to make trust management safe is to make it known that offenders will be shot. This is what they do in war-time armies.)
-
Thompson said in his lecture: "You can't trust code that you did not totally create yourself." I wonder whether there are any genuinely good solution to that. You are certainly right in saying "In practice, there are not so many issues because people are still basically honest." But that depends on the context IMHO. For everyday life, yes. In scenarios of cyber wars the horrible failures you hinted at would be dessatrous of a nation. I am very interested to know what concrete (notwithstanding costly) counter-measures are viable or have already been implemented. Feb 5, 2013 at 14:04
-
The assertion that "people are still basically honest" is our primary and best counter-measure. You're basically asking how we can trust code that anyone else has written. Well, because most people are honest, that code was first probably written by an honest person, and second, that code was almost surely reviewed by at least one honest person (this is why "open-source" algorithms and implementations are a good thing). As long as you can reasonably believe either of those things, the code is generally trustworthy.– KeithSFeb 5, 2013 at 19:44
-
@KeithS: As said, I don't bother much about situations in everyday life. (Analogy: I never check whether a banknote is ok or count the amount that I get back from the checkout clerks of supermarkets.) I was asking about potential situations of cyber wars and consequences of the risks resulting from use of bad codes in communications of, say, top-level government officials, could be on national security. Feb 6, 2013 at 10:57