Used to onboard new hires. Prevent added noise to the Semoss repo to prevent confusion. This is a way to teach the git remote workflow and check pull requests that aren't intended for Semoss but rather to train new hires. This also, will allow us to not confuse admins of the main Semoss repo with nonsensical pull requests.
You're in charge of building a series of custom reactors that will encrypt and decrypt confidential text files being sent to and being received from the client using the infamous Vigenere Cipher. Deloitte contractors and the client want to use reactors in SEMOSS to encrypt and decrypt text. The plaintext content and ciphertext content should be stored in the security db in two different tables for security purposes. The key should also be stored somewhere in the security db.
Generate the alphabetical 26x26 tableau.
Create two tables inside the security database for storing the ciphertext in one table and plaintext in another table. The keys can be stored in one or both of the tables, up to you. Within the reactor the plaintext must be encrypted.
Create a custom reactor takes in plaintext content and a key which outputs an id and the ciphertext associated with it.
Second custom reactor takes in an id which outputs the plaintext.
Therefore, there is no limit on the number of ciphertexts that can be generated. However, the number of plaintexts that can be generated is limited by the number of already generated ciphertexts.
Existing
plaintext means decrypted
ciphertext means encrypted
key is being used in the Vigenere Cipher to encrypt the plaintext to generate the ciphertext or decrypt the ciphertext to generate the plaintext.
The DB tables need to be created within Semoss (look at the AbstractSecurityUtil and SecurityOwlCreator). You can also view them in the Semoss UI. There is an admin query section in settings that allows you to query the database.
Security db
src/reactors
DBeaver
http://localhost:9090/SemossWeb/packages/client/dist/#/
AbstractSecurityUtils.init() is where the database is layout is specified.
SecurityOwlCreator is also relevant
Look through existing code to figure out how to code your own reactors. Don’t give up and ask questions!
Work on getting your reactors to print something, and then focus on functionality.
Bonus
Create a third reactor which outputs the fastest solved ciphertext and the most recent ciphertext & stores the timestamp and the solve time in one of the tables.
Description
Clone the SEMOSS web branch
You're in charge of building a series of custom reactors that will encrypt and decrypt confidential text files being sent to and being received from the client using the infamous Vigenere Cipher. Deloitte contractors and the client want to use reactors in SEMOSS to encrypt and decrypt text. The plaintext content and ciphertext content should be stored in the security db in two different tables for security purposes. The key should also be stored somewhere in the security db.
Vigenere Cipher Example: https://www.cryptogram.org/downloads/aca.info/ciphers/Vigenere.pdf
Reference
Vigenere Cipher https://www.dcode.fr/vigenere-cipher
Tasks
Generate the alphabetical 26x26 tableau. Create two tables inside the security database for storing the ciphertext in one table and plaintext in another table. The keys can be stored in one or both of the tables, up to you. Within the reactor the plaintext must be encrypted. Create a custom reactor takes in plaintext content and a key which outputs an id and the ciphertext associated with it. Second custom reactor takes in an id which outputs the plaintext.
Therefore, there is no limit on the number of ciphertexts that can be generated. However, the number of plaintexts that can be generated is limited by the number of already generated ciphertexts.
Existing
plaintext means decrypted ciphertext means encrypted key is being used in the Vigenere Cipher to encrypt the plaintext to generate the ciphertext or decrypt the ciphertext to generate the plaintext. The DB tables need to be created within Semoss (look at the AbstractSecurityUtil and SecurityOwlCreator). You can also view them in the Semoss UI. There is an admin query section in settings that allows you to query the database. Security db src/reactors DBeaver http://localhost:9090/SemossWeb/packages/client/dist/#/ AbstractSecurityUtils.init() is where the database is layout is specified. SecurityOwlCreator is also relevant
Look through existing code to figure out how to code your own reactors. Don’t give up and ask questions! Work on getting your reactors to print something, and then focus on functionality.
Bonus
Create a third reactor which outputs the fastest solved ciphertext and the most recent ciphertext & stores the timestamp and the solve time in one of the tables.