Proj-2015-2016-Extensions IPOPO

From air
Revision as of 17:19, 1 February 2016 by Remi.Gattaz (talk | contribs)
Jump to navigation Jump to search

Subject: Services étendus pour le modèle de composants iPOPO pour Python (in French)

Supervisors:

  • Thomas CALMANT
  • Didier DONSEZ

Students:

  • Abdelaziz FOUNAS (RICM4)
  • Rémi GATTAZ (RICM4)
  • Marwan HALLAL (RICM4)


Subject summary

Week 1 (Janvier 11th - January 17th)

Objectives

  • Meet with supervisors
  • Decide which suggested extension of IPOPO we will work on
  • Understand the subject

Work done

Problems faced

Week 2 (Janvier 18th - January 24th)

Objectives

  • Create the project's SRS
  • Lean python
  • Learn how to use IPOPO (basic usage)

Work done

  • Studied the code of iPOPO
  • Prepared meeting with Thomas CALMANT

Problems faced

Week 3 (Janvier 25th - January 31th)

Objectives

  • Work on the design of our extension
  • Start designing the extension
    • Find where our extension will be located in the existing code
    • Creation of UML Diagrams
    • Find python modules that we could use

Weekly meeting

During this week's meeting, the following points were discussed and agreed upon :

  • The creation and revocation of client's certificates will be done inside iPOPO. It implies that iPOPO will have to handle a keystore.
  • To connect to the IPOPO secured remote shell, we will create a simple python client
  • Extending the RemoteConsole class seems to be a good approach for what we are trying to do.

Work done

Problems faced

Week 4 (February 1st - February 7th)

Objectives

  • Search of a python2 and python3 compatible cryptology module (must be able to handle keystores)
  • Choose our workflow
  • Continue designing the extension
    • Read the IPOPO documentation to improve our understanding of the IPOPO project
    • Decide where to implant it.


Weekly meeting

Work done

Possible python extensions
name pros cons
pyOpenssl
  • Compatible python2 and python3
  • Downloaded several thousands time every day
  • Can work with pkcs12 files (openssl compatible keystores)
ssl
  • Compatible python2 and python3
  • Already exists in any python installation
  • Doesn't handle keystores


Problems faced