Patent ID: 8813247

Claim:
A method, comprising: generating a database relational table having multiple encrypted column attributes and multiple records, wherein generating the database relational table occurs within a database in a server; generating a security table having multiple records, each record of the security table including a mandatory access control (“MAC”) policy field, a black data key field and a column identifier field, wherein generating the security table occurs within a reference monitor server (“RM”); generating a user capabilities table having multiple records, each record of the user capabilities table including an MAC policy field, a black authentication key field, and a user identifier field, wherein generating the user capabilities table occurs within the RM; generating a red key-encrypting key (“KEK”), a red master encrypting key (“MEK”), multiple red data keys, and multiple red authentication keys; enciphering the red data keys and the multiple red authentication keys with the red MEK to produce black data keys and multiple black authentication keys; enciphering the red MEK with the red KEK to produce a black MEK; storing MAC policies, the black data keys, and column identifiers in a plurality of RM security table records, wherein corresponding red data keys are used to encipher or decipher multiple ciphertext column attributes of multiple records in the database relational table and storing corresponding multiple objects' cleartext data members in a memory; storing MAC policies, the multiple black authentication keys, and user identifiers within a plurality of user capabilities table records, wherein corresponding red authentication keys are used to decipher user credentials; storing the black MEK in a computer file, wherein a corresponding red MEK is deciphered by the red KEK and stored in a computer memory location; authenticating a user identifier, wherein a user's credential is decrypted by a red authentication key associated with the user identifier and validated; and mapping multiple cleartext objects of object-oriented programming memory locations to multiple database records containing ciphertext fields, wherein decryption of the black data keys and access to the corresponding red data keys are adjudicated by the RM in accordance with MAC policy and user's MAC policy.