<div dir="ltr"><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_extra"><div class="gmail_quote">2015-02-16 7:22 GMT+01:00 Peter Gutmann <span dir="ltr"><<a href="mailto:pgut001@cs.auckland.ac.nz" target="_blank">pgut001@cs.auckland.ac.nz</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">As a general reply to this (I was trying to avoid turning it into a long<br>
thread since it's probably not worth going into lots of detail on), I read the<br>
"Capability Myths Demolished" paper some years ago and compared it to a<br>
(hypothetical) "X.509 Myths Demolished" [0], or from the non-IT world,<br>
"Monorail Myths Demolised", "Communism Myths Demolished", "CDO Myths<br>
Demolished" [1], and so on: if you pick your examples very carefully and<br>
propose theoretical solutions that don't necessarily have to work in practice<br>
(or, even worse, that have been shown not to work when deployed in the real<br>
world) then you can "demolish" all sorts of "myths".<br>
<br>
Peter.<br></blockquote><div><br></div><div><div class="gmail_default" style="font-family:garamond,serif">​I found that the greatest problem with conceptions about capabilities, is not in fact due to myths</div><div class="gmail_default" style="font-family:garamond,serif">surrounding capabilities or even myths surrounding ACL's. The ​greatest problem with conceptions about capabilities comes from the fact that with capabilities its obvious that particular unenforceable policies can not be enforced, while ACL's can give the appearance of being able to enforce policies that are in fact unenforceable.  So basically, if there are myths that need to be demolished, it should probably be myths about what can and what can't be theoretically enforced, independent of the whole ACL/Capability divide.  </div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">Its pretty clear that ACL's can 'express' things that capabilities can't. Its also pretty clear that ACL's can express things they can not enforce. What isn't clear is the size or the form of intersection of policies that:</div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">A)</div><div class="gmail_default" style="font-family:garamond,serif">* Can not be expressed with capabilities.</div><div class="gmail_default" style="font-family:garamond,serif">* Can be enforced by ACLs.</div><div class="gmail_default" style="font-family:garamond,serif">* Have more than theoretical utility.</div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">And in contrast, the  size or the form of intersection of policies that:</div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">B)</div><div class="gmail_default" style="font-family:garamond,serif">* Can be expressed by ACLs.</div><div class="gmail_default" style="font-family:garamond,serif">* Can not actually be enforced by ACL's</div><div class="gmail_default" style="font-family:garamond,serif">* Would have real utility if they could.</div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">And finally we have the union of intersections of policies that:</div></div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">C)</div><div class="gmail_default" style="font-family:garamond,serif">1)  * Can be expressed with capabilities</div><div class="gmail_default" style="font-family:garamond,serif">     * Can not use central administration mandated by  use of ACL's due to possible conflicting interest.</div><div class="gmail_default" style="font-family:garamond,serif">     * Have more than theoretical utility.</div><div class="gmail_default" style="font-family:garamond,serif">2) * Can be expressed with capabilities</div><div class="gmail_default" style="font-family:garamond,serif">    * Are so fine grained that use of ACL's would at best be impractical.</div><div class="gmail_default" style="font-family:garamond,serif">    * Have more than theoretical utility.</div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">When I started out looking at capabilities, my expectation was that:</div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">* A would be rather big</div><div class="gmail_default" style="font-family:garamond,serif">* B would be virtually zero</div><div class="gmail_default" style="font-family:garamond,serif">* C frankly never crossed my mind</div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">Now after about a decade of trying to use capabilities in real systems, I'm at the point that my expectations have changed to:</div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">* A is not very big and for anything consumer related its probably zero.</div><div class="gmail_default" style="font-family:garamond,serif">* B is rather big and is a super-set of of the set containing all policies that state 'do not delegate' at any level.</div><div class="gmail_default" style="font-family:garamond,serif">* C in the light of current day malware threats and mesh-up realities is actually bigger and more relevant than its inverse.</div><div class="gmail_default" style="font-family:garamond,serif"><br></div><div class="gmail_default" style="font-family:garamond,serif">But whatever view is (most) correct, its clear that myths that should be addressed should first and foremost be those that being able to 'express' something that for example would solve the CC problem , does in any way actually solve the CC problem.    </div></div></div></div>