Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add encode command to user space #61

Open
alach2 opened this issue Sep 9, 2024 · 2 comments
Open

Add encode command to user space #61

alach2 opened this issue Sep 9, 2024 · 2 comments

Comments

@alach2
Copy link

alach2 commented Sep 9, 2024

Description:
Implement an encode command that takes in a file to encrypt in the sha256 scheme. I would need to build out the sha256 library in order to use it in my encode command.

Proposed Changes:
Update user space with an encode process that uses the sha256 library that I also added into the user space. I will create functionality that reads in a file and updates each character with the proper sha256 conversion. I will update the Makefile to add the encode feature. When ran, the user will call encode [filename] and that file will now be encoded with the cryptic hash function.

Future Development:
I would add the counterpart decode command to undo the encoded files. I could also add different styles of encoding, like -s for sha256, -h for hex, -b for base64, etc. This would allow the user to have more options, creativity, and control with encoding files.

@malensek
Copy link
Contributor

This sounds good. You can use a public domain implementation of the sha256 algorithm, so the extra features are a nice touch to make this a bit more of a challenge.

IIRC there was a sha1 implementation last semester that had some pretty big limitations, so you may want to look at that and could possibly use your encoding styles as a separate library that both utilities could use.

@geoweb999
Copy link

I'll be happy to do one of the student code reviews

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants