GSoC Week 12: encrypt_content_client - summary

Summary of my work

Google Summer of Code 2017 is coming to an end, it has been exciting 12 weeks!

During the summer I learned a lot about contributing to open source, project planning and management. I really enjoyed this introduction to Open Source and I have learned a lot about Drupal, PHP and JavaScript programming, I have also learned about new concepts in cryptography: Elliptic Curve Cryptography, keys serialization and deserialization, public key infrastructure and more.

I would like to say thanks to my mentors that helped me complete my project and allowed me to learn many useful skills. They are: colan, nerdstein, talhaparacha and Slurpee - they did a great job of making GSoC a great experience!


Where it comes to the work I have done - I have been on schedule for most of the time during this project. I tried to follow the weekly objectives I had set before the project started. I think I used the community bonding period wisely, reworking my project schedule and extending weekly breakdown of deliverables.  


During this past week I have worked on the final submission link, gathering all of the work I have created during the 12 weeks period. I have added a new remote repository on, in few days I will release an alpha version of my module and that will be the summary of my work for the summer.


As one of my last task during GSoC 2017, I will fully review module created by Tameesh and provide feedback. I will also ask him for comments on my module. That is because our modules are based around cryptography and should be compatible and work together in the future.


There were few ideas and improvements which came from me or my mentors during development, I tried to note them and I have created a backlog in a form of this issue to keep track of them.

Small changes and fixes

Here is a list of small fixes and improvements I have done in the last week of GSoC:


  • Better support for CKEDITOR fields - made working those much more robust.

  • Few small improvements to ECC keys management page.

  • Routing code cleaned up and renamed module’s files to be more descriptive

  • Cleaned up JavaScript files, merged some files so the module is using fewer JS files now.

  • A test case for creating a node without the client content encrypt permission - should create a not encrypted node.

Plans after GSoC

The first thing to do after GSoC finishes is to go the project’s backlog and implement those features. I will also need to create a security report with encryption vulnerabilities and corner cases that still need work. I will work in order to release a fairly stable release of the module.

I will contribute to my module and to Drupal project in general, the next step would be to get a lot of community feedback and release a beta version of my module. I have also posted few task ideas for the Google Code-In program.