In computer science, capability-based addressing is a scheme used by some computers to control access to memory as an efficient implementation of capability-based security.
Under a capability-based addressing scheme, pointers are replaced by protected objects (named capabilities) which specify both a location in memory, along with access rights which define the set of operations which can be carried out on the memory location.
Early versions of the OS/400 operating system for the AS/400 also supported authorized pointers, and by extension capability-based addressing.
However, authorized pointers were removed in the V1R3 release of OS/400 as their irrevocable nature became seen as a security liability.
[3] All versions of OS/400 (later IBM i) since rely solely on unauthorized pointers which do not support capability-based addressing.