Object-capability systems
From Erights
(Difference between revisions)
Line 5: | Line 5: | ||
! Substrate || || Historical System || || System | ! Substrate || || Historical System || || System | ||
|- | |- | ||
- | | Hardware || || Plessey 250, CAP, [http://gordonbell.azurewebsites.net/cgb%20files/cmmp%20multi-mini-processor%20comconference%201972%20c.pdf C.mmp], CM*, IBM System/38, Intel 432 || || [http://www.cl.cam.ac.uk/research/security/ctsrd/cheri/ CHERI], [https://riscv.org/ Risc-V] | + | | Hardware || || Plessey 250, CAP, [http://gordonbell.azurewebsites.net/cgb%20files/cmmp%20multi-mini-processor%20comconference%201972%20c.pdf C.mmp], CM*, IBM System/38, Intel 432 || || [http://www.crash-safe.org/docs/LowFatPtrs-CCS2013.html Crash-SAFE], [http://www.cl.cam.ac.uk/research/security/ctsrd/cheri/ CHERI], [https://riscv.org/ Risc-V] |
|- | |- | ||
| OS || || [https://www.princeton.edu/~rblee/ELE572Papers/Fall04Readings/ProgramSemantics_DennisvanHorn.pdf DVH], Hydra, StarOS, [http://www.mcjones.org/CalTSS/ Cal-TSS], PSOS, [https://en.wikipedia.org/wiki/NLTSS NLTSS], [https://www.usenix.org/legacy/publications/library/proceedings/cinci93/full_papers/hamilton.txt Spring] || || [https://www.cl.cam.ac.uk/research/security/capsicum/ Capsicum], [https://nuxi.nl/ CloudABI], [http://www.barrelfish.org/ Barrelfish], [https://lwn.net/Articles/718267/ Fuchsia] | | OS || || [https://www.princeton.edu/~rblee/ELE572Papers/Fall04Readings/ProgramSemantics_DennisvanHorn.pdf DVH], Hydra, StarOS, [http://www.mcjones.org/CalTSS/ Cal-TSS], PSOS, [https://en.wikipedia.org/wiki/NLTSS NLTSS], [https://www.usenix.org/legacy/publications/library/proceedings/cinci93/full_papers/hamilton.txt Spring] || || [https://www.cl.cam.ac.uk/research/security/capsicum/ Capsicum], [https://nuxi.nl/ CloudABI], [http://www.barrelfish.org/ Barrelfish], [https://lwn.net/Articles/718267/ Fuchsia] | ||
Line 13: | Line 13: | ||
| Distributed OS || || [https://www.cs.vu.nl/pub/amoeba/amoeba.html Ameoba], [https://developer.apple.com/library/content/documentation/Darwin/Conceptual/KernelProgramming/Mach/Mach.html Mach], [http://joeduffyblog.com/2015/11/03/blogging-about-midori/ Midori] || || | | Distributed OS || || [https://www.cs.vu.nl/pub/amoeba/amoeba.html Ameoba], [https://developer.apple.com/library/content/documentation/Darwin/Conceptual/KernelProgramming/Mach/Mach.html Mach], [http://joeduffyblog.com/2015/11/03/blogging-about-midori/ Midori] || || | ||
|- | |- | ||
- | | Language || || Gedanken, W7, J-Kernel, [https://github.com/davidwagner/joe-e Joe-E], Emily, CaPerl, Caja, [http:// | + | | Language || || [http://www.erights.org/history/morris73.pdf Gedanken], W7, J-Kernel, [https://github.com/davidwagner/joe-e Joe-E], Emily, [https://web.archive.org/web/20130116033811/http://caperl.links.org/ CaPerl], Caja, [http://www2.fiit.stuba.sk/~kosik/doc/sofsem2008.pdf Tamed Pict] || || [http://monte.readthedocs.io/ Monte], [https://github.com/tc39/proposal-frozen-realms Frozen Realms], [http://shill.seas.harvard.edu/ shill], [http://wyvernlang.github.io/ Wyvern], [https://github.com/WebAssembly/gc/blob/master/proposals/gc/Overview.md wasm-gc] |
|- | |- | ||
| Distributed Language || || Act-1, Eden, Emerald, Vulcan, Joule, [http://wiki.erights.org E], M# || || [https://www.ponylang.org/ Pony], [http://uu.diva-portal.org/smash/get/diva2:1164769/FULLTEXT01.pdf Kappa], [https://research.google.com/pubs/pub40673.html Dr.SES] | | Distributed Language || || Act-1, Eden, Emerald, Vulcan, Joule, [http://wiki.erights.org E], M# || || [https://www.ponylang.org/ Pony], [http://uu.diva-portal.org/smash/get/diva2:1164769/FULLTEXT01.pdf Kappa], [https://research.google.com/pubs/pub40673.html Dr.SES] | ||
Line 19: | Line 19: | ||
| Distributed Storage || || [https://alanhkarp.com/scoopfs/index.html Scoopfs] || || [https://tahoe-lafs.org/trac/tahoe-lafs Tahoe-LAFS] | | Distributed Storage || || [https://alanhkarp.com/scoopfs/index.html Scoopfs] || || [https://tahoe-lafs.org/trac/tahoe-lafs Tahoe-LAFS] | ||
|- | |- | ||
- | | Crypto Protocol || || DCCS, RATS, [http://www.erights.org/elib/distrib/captp/index.html CapTP], Foolscap, Client Utility, [http://waterken.sourceforge.net/ Waterken] || || [http://isr.uci.edu/projects/coast/ COAST], [https://capnproto.org/ Cap’n Proto] | + | | Crypto Protocol || || DCCS, RATS, [http://www.erights.org/elib/distrib/captp/index.html CapTP], [https://github.com/warner/foolscap/blob/latest-release/doc/using-foolscap.rst Foolscap], Client Utility, [http://waterken.sourceforge.net/ Waterken] || || [http://isr.uci.edu/projects/coast/ COAST], [https://capnproto.org/ Cap’n Proto] |
|- | |- | ||
| Offline Certs || || SPKI/SDSI, E-Speak, [Capability-based_Active_Invocation_Certificates CapCert] || || [https://research.google.com/pubs/pub41892.html Macaroons], [https://w3c-ccg.github.io/ld-ocap/ lds-ocap] | | Offline Certs || || SPKI/SDSI, E-Speak, [Capability-based_Active_Invocation_Certificates CapCert] || || [https://research.google.com/pubs/pub41892.html Macaroons], [https://w3c-ccg.github.io/ld-ocap/ lds-ocap] |
Revision as of 06:45, 11 March 2018
These are all capability systems, but not all are ocap systems.
Substrate | Historical System | System | ||
---|---|---|---|---|
Hardware | Plessey 250, CAP, C.mmp, CM*, IBM System/38, Intel 432 | Crash-SAFE, CHERI, Risc-V | ||
OS | DVH, Hydra, StarOS, Cal-TSS, PSOS, NLTSS, Spring | Capsicum, CloudABI, Barrelfish, Fuchsia | ||
KeyKOS family OS | Gnosis, KeyKOS, GuardOS, EROS, CapROS, Coyotos | seL4 | ||
Distributed OS | Ameoba, Mach, Midori | |||
Language | Gedanken, W7, J-Kernel, Joe-E, Emily, CaPerl, Caja, Tamed Pict | Monte, Frozen Realms, shill, Wyvern, wasm-gc | ||
Distributed Language | Act-1, Eden, Emerald, Vulcan, Joule, E, M# | Pony, Kappa, Dr.SES | ||
Distributed Storage | Scoopfs | Tahoe-LAFS | ||
Crypto Protocol | DCCS, RATS, CapTP, Foolscap, Client Utility, Waterken | COAST, Cap’n Proto | ||
Offline Certs | SPKI/SDSI, E-Speak, [Capability-based_Active_Invocation_Certificates CapCert] | Macaroons, lds-ocap | ||
Blockchain | Gravity, Dfinity, RChain, Cosmos, Veres One, Sovrin, Agoric Systems | |||
User Interface | CapDesk, Scoopfs, Belay | Sandstorm |