GSoC17: Client Side File Crypto: Week 10

Note: This is a repost of the original Blog post during GSoC ’17. As my AWS instance went down, I’ve been migrating my old blog posts here.
Originally posted in August 2017

This blog post summarizes the tenth week of writing open-source code for Drupal with Google Summer of Code.

JS DOM manipulating for listing encrypted files

The REST API that I had set up last week was leveraged to append the list of the files that are associated with a node for making the files available for decryption and downloading.

File fetching, decryption and downloading

After the listing of the encrypted files attached to a node, I added the functionality for fetching the file metadata and fetch the file from the file path. Then I ported the decryption methods from the previously built sandbox to the main decryption script to decrypt the file that was requested for and fetched via the GET request and later downloading it once it gets decrypted.

Functional testing

This week I also continued writing functional tests and covered the key generation part under functional testing.

Plan for this week

This week I plan to work on the small components of major features that are left to complete them to be able to merge it into the main branch so as to complete all the major features of the project. Some of the issues that I was facing while completing these minor components were addressed by Adam in this week’s meeting. I will be looking into those hints to overcome the challenges that I was facing to complete the features of the module.

The pending parts of the features are:

  • Developing/finding a file upload mechanism interface
  • Encrypt role selection checkbox
  • More tests
  • Key restoration interface
  • Role add hook
  • User add hook
  • add / remove user to role hook

As discussed in this week’s meeting, by the end of this week, there would be an initial version of the module available for testing by the mentors with some documentation about it.

Like what you read? Give Tameesh Biswas a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.