Homework 1

Due Date: Wednesday, 10/07/2026, 11:59 PM

Late Submission Deadline: Wednesday, 10/21/2026, 11:59 PM

Instructions

  1. You may work together with other students on this assignment. You must list the names and stevens.edu addresses of anyone you work with. You are still responsible for writing your own solutions and submitting this assignment individually

  2. All external sources used to assist in answering questions must be cited using IEEE-style citations.

  3. The use of LLM-based tools on this assignment is limited.

    1. You may not use AI to generate your solutions. If you are found to be doing so, you will receive a 0 on the assignment and be inelligible for extra credit opportunities.

    2. The use of AI for conducting research, error/spell-checking, ideation, and other applications that are not detrimental to learning objectives is allowed; you must cite the model(s) used, (e.g. gpt5.6-sol) and how it was used (e.g. research on <topic>, spell/grammar checking)

  4. Unless otherwise stated, any assignment involving programming may be completed in any programming language of your choice. If asked, you should be able to explain the details of your source code (e.g. program design and implementation decisions).

  5. A PDF of your solutions, along with any source code files written are to be uploaded to Gradescope.

Submission Format

  1. The first page of your submission must contain only the following contents:

    hw: <#>
    name: <name>
    email: <email>
    collaborators:
    - <name1> (<email1>)
    - <name2> (<email2>)
    - <...>
    ai:
    - <model>: <usage1>, <usage2>, <...>
    - <...>
    
    pledge: I pledge on my honor that I have abided by the Stevens Honor System.
  2. Solutions to each problem should start on their own page (subparts can continue on the same page).

  3. See this google doc for an example.

Problems

(25 points) Biba Integrity Proof

If there is an information transfer path from object π‘œ1βˆˆπ‘‚ to object π‘œπ‘›+1βˆˆπ‘‚, then enforcement of Biba’s Strict Integrity Policy requires that 𝑖(π‘œπ‘›+1)≀𝑖(π‘œ1)βˆ€π‘›β‰₯1.

  1. (25 points) Prove the above statement by induction.

(50 points) Bell-LaPadula Allowed Transitions

Consider a system that should implement the Bell-LaPadula Model.

Assume the following:

Security Levels: U<C<S<TS
Security Categories: {𝐴,𝐡,𝐢,𝐷}

The UNCLASSIFIED clearance is (U,βˆ…).

Clearance Assignments:

  • s1: UNCLASSIFIED
  • s2: (C,{𝐴,𝐷})
  • s3: (S,{𝐡})
  • o1: (TS,{𝐴,𝐡})
  • o2: UNCLASSIFIED
  • o3: (S,{𝐷})
  • o4: (C,{𝐴})

Initial state of exercisable rights:

o1 o2 o3 o4
s1 -w rw -- --
s2 -- -- -w --
s3 -w -- -- r-
  1. (10 points) Is the initial state secure according to the Bell-LaPadula Model? If not, explain the violation.
  1. (40 points) Now assume the system starts in a secure state, and that the set of discretionary rights is represented with the following access control matrix:

    o1 o2 o3 o4
    s1 -- rw -w -w
    s2 rw r- -w r-
    s3 rw r- -- --

    List the set of primitive commands (β€œEnter/Delete r into/from A[s, o]”) that would not cause a security breach according to Bell-LaPadula. (Exclude β€œCreate Subject/Object”)

(25 points) Biba Inference

Consider a system with the current set of exercisable rights reperesented by the following access control matrix. (Recall that exercisable combines MAC and DAC rights).

o1 o2 o3
s1 r- rw --
s2 rw -- -w
s3 r- -- --
s4 -- -- --

Assume that this system implements integer integrity levels under the Biba Integrity Model (no categories).

  1. (10 points) Assume that this ACM is secure with respect to the Biba Model. Make no assumptions about the state of discretionary access rights. What relationships can you conclude about the relative integrity levels of the subjects and objects?
  1. (15 points) Now assume that the DAC ACM was the following:

    o1 o2 o3
    s1 rw rw -w
    s2 rw -- rw
    s3 rw -w --
    s4 r- r- r-

    List all the relationships between each subject and each object, then determine the relative integrity levels that each subject and object must belong to.