Deliverable 1
Description: Create an encrypted group in Yioop, add users and threads to the group to see how these changes reflect in the database in-order to understand how the existing privacy mechanism in Yioop works
Implementation steps:
- Create an encrypted group on Yioop
- Add users, threads and posts to the created group
- Go through Yioop codebase and find tables responsible for group encryption
- Query the corresponding tables and demonstrate the working of the existing encryption mechanism
Discoveries:
Relevant database tables modified when new group is added:
- SOCIAL_GROUPS: Contains groups and group details like group ID. Contains Encryption column set to 0 or 1 to indicate if group is encrypted or not
- GROUP_ITEM: Contains group details including title and description of threads in a group
- TYPE_KEYS: (If encryption is enabled) Contains group keys used for encryption-decryption
Results:
1. Created group called 'Deliverable1_Test' and added users, threads and posts:
2. Database reflects the addition of 'Deliverable1_Test' in table 'SOCIAL_GROUPS'
3. A key is generated for the newly created group and stored in 'TYPE_KEYS' table of the external database
4. Database reflects creation of new threads for the created group (group_id=5). Also highlighted are encrypted title and description of group items
|