[cap-talk] Understanding capabilities in a web-desktop setting

Ivan Krstić krstic at solarsail.hcs.harvard.edu
Thu Aug 7 17:54:14 CDT 2008


On Aug 5, 2008, at 10:51 PM, David-Sarah Hopwood wrote:
> In an environment where commercial pressures to finish a project on
> budget and on time are dominant, then this approach may be considered
> too inefficient. But as far as I can see, very little actual  
> innovation
> occurs in that kind of environment in which that view is prevalent.
> Refinement of well-established ideas, yes, but not innovation.

You're confusing innovation with revolution. Though it holds a great  
deal of appeal, the latter is most absolutely not a precondition for  
the former.

> Frankly, I can't see what harm it does if someone makes a decision  
> about
> what security mechanism(s) to work on that is initially fairly  
> arbitrary.

Starting with a problem and working towards a solution is engineering;  
starting with a solution and working towards a problem is dicking  
around. Dicking around can be very educational and enjoyable, so I  
don't mean to suggest it is a bad thing; if Tomas is looking to learn  
about capabilities by seeing if a good PIM system can be constructed  
with them, more power to him. But if he's looking to build a PIM  
system with certain security properties, he's looking to do  
engineering, and that's where choosing to use capabilities up front  
and then working backwards makes no sense.

> So, we have to try something different. Capabilities are different  
> [+],
> so let's try those.

We don't know that capabilities "work" -- or that they're simpler than  
alternatives -- in the long term. There are no notable current  
production systems employing capabilities that we could watch over a  
prolonged period of time. Anyone in charge of building a current  
production system would likely be making an irresponsible decision if  
they chose to employ what's essentially an untested security approach,  
unless the _purpose_ of the system was to serve as a testbed for that  
approach.

Capabilities are currently hand-waving. Nothing more. They're mostly  
undocumented and unexplained. My calls on this list for a single  
cogent, coherent writeup with good non-hypothetical examples such as  
those from the Tahoe FS, went unanswered. Interested developers are  
reduced to joining an obscure and often exasperating mailing list to  
ask what the capability approach even means. Against this backdrop,  
ACLs and their known deficiencies look pretty damn good.

> As far as I can see, we do not have a large or diverse enough sample
> of capability systems that have been put into production, to be able  
> to
> come to any conclusion about what their eventual cumulative complexity
> "most often" is.

Precisely, because the cumulative complexity of using an unfamiliar  
solution with largely unknown properties in a production system  
generally outweighs the complexity of using a familiar one with known  
properties, some (or even many!) of which are bad. If this were not  
so, the industry would have moved away from the excrement that is X. 
509 ages ago.

--
Ivan Krstić <krstic at solarsail.hcs.harvard.edu> | http://radian.org



More information about the cap-talk mailing list