Question: can you please make this program in JAVA Expander the expansion algorithm is defined by table 11.2.4, 3, 4, 3, 5, 6). Example: If the

can you please make this program in JAVA
 can you please make this program in JAVA Expander the expansion
algorithm is defined by table 11.2.4, 3, 4, 3, 5, 6). Example:
If the input to the expander is 110011 (base-2), the output is

Expander the expansion algorithm is defined by table 11.2.4, 3, 4, 3, 5, 6). Example: If the input to the expander is 110011 (base-2), the output is 11000011 (base-2). Key schedule: The algorithm uses a 9-bits key, Subkeys are derived by extracting eight bits from the master key. K is determined by the 8 bits starting as position i of the key schedule, wrapping around at the end of needed. In other words, given K=101100101 (base-2), Ke= 10010110 (base-2). Bits are numbered starting with the most significant bit of the key at index 1, continuing to the least significant bit at index 8. S-Boxes: The first box of the S-box determines the row; the latter three determine the column S-Box 1 000 001010011 100 101 110111 0101 010 00110011 100111 000 1001 100110010000111 101011 S-Box 2 000 001010 011100101 110111 o 100 000 110 11111 00101010 1/101 01 oool1110 1010 001100 Test your program by testing round 4 of encryption using input b11100100110 (Ox720) with master key 01001100110x90). I implemented correctly, your program should produce ciphartext 0b100110011000 (0.008). For reference; your S-boxes can be implemented as follows: private static int sbox11111 = { (06101, 8010, 86001, 110, 6811, 8100, 8111, 000), // row 0 (@b001, 8100, 06110, 0010, 000, 111, 101, b011) / row 1 private static int sbox2011 ( (@b100, 5000, 06110, 101, 111, 0001, 0b011, @5010), // rowe (0b101, 06011, ebeve, 60111, 06110, 06010, eben, 00100) W row 1 ); Expectations for code 1. Your code must run in Moodle so I can check that it is valid 2. Solutions must be "clean"correct answers, no warnings, no debugging output 3. Implementation must be structured correctly using tunctions. variables, constants, etc. 4. Hard coding values is only allowed in unit tests and/or driver classes. All developed code must be general-purpose 5. Collaboration must be attributed in comments 6. Other comments only needed to state program flow, to explain complex constructs, or for leaving pointers for yourself. "Comment for the sake of comment is not needed Write a program that performs the simplified DES-type algorithm presented in Section 4.2 of the textbook. Your program must implement a single round of encryption 12 t Lo Ro E 6 B 4 One round of encryption Munction Expander the expansion algorithm is defined by table 11.2.4, 3, 4, 3, 5, 6). Example: If the input to the expander is 110011 (base-2), the output is 11000011 (base-2). Key schedule: The algorithm uses a 9-bits key, Subkeys are derived by extracting eight bits from the master key. K is determined by the 8 bits starting as position i of the key schedule, wrapping around at the end of needed. In other words, given K=101100101 (base-2), Ke= 10010110 (base-2). Bits are numbered starting with the most significant bit of the key at index 1, continuing to the least significant bit at index 8. S-Boxes: The first box of the S-box determines the row; the latter three determine the column S-Box 1 000 001010011 100 101 110111 0101 010 00110011 100111 000 1001 100110010000111 101011 S-Box 2 000 001010 011100101 110111 o 100 000 110 11111 00101010 1/101 01 oool1110 1010 001100 Test your program by testing round 4 of encryption using input b11100100110 (Ox720) with master key 01001100110x90). I implemented correctly, your program should produce ciphartext 0b100110011000 (0.008). For reference; your S-boxes can be implemented as follows: private static int sbox11111 = { (06101, 8010, 86001, 110, 6811, 8100, 8111, 000), // row 0 (@b001, 8100, 06110, 0010, 000, 111, 101, b011) / row 1 private static int sbox2011 ( (@b100, 5000, 06110, 101, 111, 0001, 0b011, @5010), // rowe (0b101, 06011, ebeve, 60111, 06110, 06010, eben, 00100) W row 1 ); Expectations for code 1. Your code must run in Moodle so I can check that it is valid 2. Solutions must be "clean"correct answers, no warnings, no debugging output 3. Implementation must be structured correctly using tunctions. variables, constants, etc. 4. Hard coding values is only allowed in unit tests and/or driver classes. All developed code must be general-purpose 5. Collaboration must be attributed in comments 6. Other comments only needed to state program flow, to explain complex constructs, or for leaving pointers for yourself. "Comment for the sake of comment is not needed Write a program that performs the simplified DES-type algorithm presented in Section 4.2 of the textbook. Your program must implement a single round of encryption 12 t Lo Ro E 6 B 4 One round of encryption Munction

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!