Capability

From Erights

(Difference between revisions)
Jump to: navigation, search
m (Controversy concerning sparse vs. password capabilities is settled. These terms are synonyms. I have removed XXX question.)
m (I have removed the "XXX improve this section". This is redundant note. The page is already marked as a stub.)
Line 17: Line 17:
== See also ==
== See also ==
-
 
-
{{XXX|improve this section}}
 
See [http://www.eros-os.org/essays/capintro.html What is a Capability, Anyway?] for a partisan explanation of what capabilities actually are.
See [http://www.eros-os.org/essays/capintro.html What is a Capability, Anyway?] for a partisan explanation of what capabilities actually are.

Revision as of 15:13, 15 April 2011

Definition

A capability is a token that identifies an object and provides its holder with the permission to operate on the object it identifies. Capabilities must either be totally unforgeable or infeasible to forge by being sparse.

Examples

Some examples of unforgeable capabilities:

  • Designations of objects in the E language. Those who hold these capabilities have the permission to invoke any method supported by the designated object.
  • Designations of functions and procedures in Emily. Those who hold these capabilities have the permission to call designated functions or procedures.
  • Capabilities held by a process in capability operating systems.
  • POSIX file descriptors.

Some examples of sparse capabilities (sometimes called password capabilities):

  • Designations of remote objects in E, such as captp://*orwqphzlugjwqj2wozz7tmg47ime466j@74.125.87.147:55189/oa6vn5whhapylswhzesdlqh5ppmjkcrq. Those who hold these capabilities have the permission to invoke any method supported by the designated object.
  • Private URLs where having the URL is necessary and sufficient to use the resource. Common examples are:
    • "Confirm your e-mail address" links for website account registrations and mailing list subscriptions.
    • Shared private documents such as in Google Docs, Google Maps, Picasa albums, Doodle schedulers.
  • Designation of file-system sub-trees in MinorFs, such as /mnt/minorfs/cap/3d5d3efbf73bb711e7a47f82a44f471fcf77c70e/

See also

See What is a Capability, Anyway? for a partisan explanation of what capabilities actually are.

See also Overview: Capability Computation

This page is a stub; it should be expanded with more information. If doing so, check the original E web site and the mailing list archives for content which could be moved into this page.
Personal tools
more tools