BLP
Overview
The Bell-LaPadula (BLP) model, developed by David Elliott Bell and Leonard J. LaPadula in 1973, is a formal state transition system for computer security policy. It defines access control rules using security labels on objects and clearances for subjects.
Model
[request_definition]
r = sub, sub_level, obj, obj_level, act
[policy_definition]
p = sub, obj, act
[role_definition]
g = _, _
[policy_effect]
e = some(where (p.eft == allow))
[matchers]
m = (r.act == "read" && r.sub_level >= r.obj_level) || (r.act == "write" && r.sub_level <= r.obj_level)
Policy
BLP typically requires no explicit policy rules since security levels determine access control. The matcher implements BLP rules:
- No Read Up: Subjects cannot read objects with higher security levels
- No Write Down: Subjects cannot write to objects with lower security levels