SarthakRout / TestApp

This is an online assessment application built with Angular integrated with Firebase and Google Sheets.
https://baluate-74386.web.app/
MIT License
2 stars 1 forks source link

Local Data Encryption #1

Closed SarthakRout closed 3 years ago

SarthakRout commented 3 years ago

The data stored locally is generally in plain text which may be abused. Some data can be encrypted while storing and decrypted while parsing. SHA1 or base64 will do for now. This may require the use of CryptoJS.

SarthakRout commented 3 years ago

If anyone wants to work on this issue, do comment here.

mlemosf commented 3 years ago

I want to help on this issue. Can you give me a brief explanation on how the code works and which code handles data storage?

SarthakRout commented 3 years ago

So, this is a web-app for teachers/examiners/anyone to make questions and thereby make objective tests and serve them to students/examinees/anyone. So, the code handles data storage for 2 causes: Keeping a record of the person who is authenticated but not logged out or whose token has not expired and a record of the responses given in a test (if he would reopen the test after closing the window by mistake, his previous responses would not be lost). It would be much better if the plain JSON object stored locally would be encrypted in some form. You will find the code handling data storage majorly in /src/app/auth/auth/service.ts and /src/app/tests/test-main/test-main.component.ts. So, if you contact me sarthak2024 AT gmail DOT com , I will send you the API Keys for you to get the app started and working.